DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Hard and Floppy Disks

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CR80 Hard and Floppy Disks

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦a7f5f26dd⟧ TextFile

    Length: 2750 (0xabe)
    Types: TextFile
    Names: »MAIN.S«

Derivation

└─⟦17728abc9⟧ Bits:30005143 8" CR80 Floppy CR80FD_0130 ( CR/D/1422 FLERCPU Source )
    └─⟦1815caf3d⟧ 
        └─ ⟦this⟧ »MAIN.S« 

TextFile

MAINMODULE CACHE_MEMORY_TESTS;

%PRINT


%SOURCE HEADER.S
«ff»

%SOURCE @*CRP0005*DAMOS.D*GENS.D*GENERAL.S
«ff»

%SOURCE CONSOLE.S
«ff»



VAR
LOGPAGE:    INTEGER;
INPUTSTRING:     ARRAY[0..15] OF INTEGER;
INPUT_POINTER:   INTEGER;
COUNT:           INTEGER;
INPUT_LAST:      INTEGER;
DICA:            INTEGER;
T_COUNT:         INTEGER;
ERROR_COUNT:     INTEGER;
REPORTLEVEL:     INTEGER;
OK:              INTEGER;
MENU_ENABLE:     INTEGER;
SLAVE_NUMBER:    INTEGER;
EXIT_STATUS:     INTEGER;                   "EXIT_STATUS=1 ~ EXIT


VAR
PHPAGE: INTEGER;



CONST
STATUS_BASE    =    #F400;
C_STROBE_ADR   =    #F40F;
COMMAND_BASE   =    #F410;
START_ADR      =    #F42F;
CON_SEM_ADR    =    #F430;
MESSAGE_BASE   =    #F420;
SEM_ADR        =    #F431;
SLC_ADR        =    #F432;
MAC_ADR        =    #F433;


LABEL DP62CMI;

«ff»
%SOURCE MENU1.S
«ff»
%SOURCE TIMEOUT.S
«ff»
%SOURCE INFO.S
«ff»
%SOURCE SET_REPORTLEV.S
«ff»

%SOURCE TESTPOINT.S
«ff»

%SOURCE TEST_1_MASTER.S
«ff»
%SOURCE T_2_SLAVE.S

%SOURCE T_2_MASTER.S

%SOURCE T_3_SLAVE.S

%SOURCE T_3_MASTER.S



%SOURCE COUNT_LOAD.S
«ff»
%SOURCE TEST_1_SLAVE.S
«ff»
%SOURCE QUIT.S
«ff»
%SOURCE CHECK_IDLE.S
«ff»
%SOURCE INPUTJUNK1.S
«ff»
%SOURCE SWITCH_CPU.S
«ff»
%SOURCE UNDEF_TEST.S
«ff»
%SOURCE TEST_1.S

%SOURCE TEST_2.S

«ff»
%SOURCE TEST_3.S

%SOURCE TEST_NUMBER.S
«ff»
%SOURCE SWITCH_NUMBER.S
«ff»
%SOURCE WAIT_FOR_TERM.S
«ff»

%SOURCE INPUTJUNK.S
«ff»



%SOURCE UNIT_MAP.S
«ff»
%SOURCE CONINPUT1.S
«ff»
%SOURCE CLAIM_MASTERSHIP.S
«ff»
%SOURCE WAIT_MAP.S
«ff»
%SOURCE IDLE.S
«ff»
%SOURCE ENABLE_INT.S
«ff»
%SOURCE DISABLE_INT.S
«ff»

%SOURCE INTERPRETCOM.S
«ff»


%SOURCE THIS_CPU.S
«ff»
%SOURCE WAKEUP_ALL.S
«ff»
%SOURCE WAKEUP_ONE.S
«ff»
%SOURCE WAKEUP.S
«ff»


%SOURCE CONINPUT.S
«ff»
%SOURCE INITIALIZE.S
«ff»

BEGIN "MAIN PROGRAM"

     #0000=>R7;
     INIT_OC(R7,R6);
     OUTNEWLINE(R6);
     OUTTEXT(ADDRESS('JKZ MULTICPU TEST PROGRAM(:0:)')=>R3,R6);
     OUTNEWLINE(R6);

     OUTTEXT(ADDRESS('VERSION 820719 (:0:)')=>R3,R6);
     OUTNEWLINE(R6);
     FLUSHOUT(R6);

     INITIALIZE(R6);

     1=>R0=>COUNT;
     0=>R0=>DICA;
     1=>R0=>MENU_ENABLE;
     0=>R0=>REPORTLEVEL;
     #1000=>R0=>T_COUNT;
     CONINPUT(R6);



DP62CMI:                         "THIS IS THE ENTRYPOINT FOR ALL CPUs
                                 "WHEN THE FIRST CPU-INTERRUPT IS ISSUED,
                                 "AND WHEN THE COMMANDSTROBE SIGNALS
                                 "A VAILD COMMAND IN DP61
                                 "FROM HERE ONWARDS, COMMON VARIABLES
                                 "MUST NOT BE USED, AS THESE MAY COLLIDE.

      CAD;
      CAD;
      CAD;
      CAD;
      CAD;
      CAD;
      CAD;
      CAD;
      CAD;
      CAD;
      CAD;
     INTERPRETCOM(R6);
     WHILE R0=R0 DO
         BEGIN
             R0=>R0;
         END;



END; "MAINMODULE

ENDMODULE
 «a5»