00001 *************************
00002 *
00003 * RMAIN.ASM
00004 * MDJ 01-24-91
00005 *
00006 * READER MAIN LOOP
00007 *
00008 *************************
00009 *
00010 OSCR    EQU     $627F
00011 SSCR    EQU     $5B4C
00012 RSCR    EQU     $5B63
00013 UPARW   EQU     $59B4
00014 DNARW   EQU     $59F9
00015 LARW    EQU     $5A3D
00016 RARW    EQU     $5A63
00017 GNP     EQU     $5AA9
00018 CPRMT1  EQU     $571D
00019 CPRMT2  EQU     $5747
00020 PRMT2C  EQU     $5771
00021 KEY     EQU     $5041
00022 PCLS    EQU     $3E4F
00023 SCRDVD  EQU     $5400
00024 MENU    EQU     $5423
00025 SSECT   EQU     $563B
00026 PNV     EQU     $598B
00027 PTV     EQU     $59F6
00028 PCODE   EQU     $5BC0
00029 LCODE   EQU     $5BEF
00030 TCODE   EQU     $5C16
00031 BCODE   EQU     $96
00032 SPP     EQU     $5F0E
00033 CRANGE  EQU     $6129
00034 DRANGE  EQU     $613A
00035 SRANGE  EQU     $614E
00036 CCODE   EQU     $5D0C
00037         ORG     $5300
00038 RMAIN   PSHS    A,B,X,Y
00039         JSR     OSCR    GO DISPLAY OPENING SCREEN
00040         CLR     PCODE
00041         CLR     LCODE
00042         CLR     TCODE
00043         LDA     #87
00044         STA     BCODE
00045         CLR     CCODE
00046         JSR     PCLS    CLEAR SCREEN
00047         JSR     SCRDVD  SCREEN DIVIDER
00048         JSR     MENU    SCREEN MENU
00049         JSR     SSECT   GO GET SPECIAL SECTOR
00050         CLR     PTV     TOP THIRD
00051         LDX     #2      PAGE #1
00052         STX     PNV
00053         JSR     LARW    GO GET PAGE #1
00054 GKY     JSR     KEY     KEYPRESS LOOP
00055         PULU    X
00056         CMPX    #11     UP ARROW
00057         BEQ     GKY1
00058         CMPX    #10     DOWN ARROW
 
 
 
 
 
 
 
 
00059         BEQ     GKY2
00060         CMPX    #8      LEFT ARROW
00061         BEQ     GKY3
00062         CMPX    #9      RIGHT ARROW
00063         BEQ     GKY4
00064         CMPX    #103    LOWER CASE G
00065         BEQ     GKY5
00066         CMPX    #71     UPPER CASE G
00067         BEQ     GKY5
00068         CMPX    #115    LOWER CASE S
00069         BEQ     GKY6
00070         CMPX    #83     UPPER CASE S
00071         BEQ     GKY6
00072         CMPX    #112    LOWER CASE P
00073         BEQ     GKY7
00074         CMPX    #80     UPPER CASE P
00075         BEQ     GKY7
00076         CMPX    #114    LOWER CASE R
00077         BEQ     GKY8
00078         CMPX    #82     UPPER CASE R
00079         BEQ     GKY8
00080         CMPX    #100    LOWER CASE D
00081         BEQ     GKY9
00082         CMPX    #68     UPPER CASE D
00083         BEQ     GKY9
00084         CMPX    #120    LOWER CASE X
00085         BEQ     GKYA
00086         CMPX    #88     UPPER CASE X
00087         BEQ     GKYA
00088         BRA     GKY     RETURN FOR NEXT KEYPRESS
00089 GKY1    JSR     UPARW
00090         BRA     GKY
00091 GKY2    JSR     DNARW
00092         BRA     GKY
00093 GKY3    JSR     LARW
00094         BRA     GKY
00095 GKY4    JSR     RARW
00096         BRA     GKY
00097 GKY5    JSR     GNP
00098         BRA     GKY
00099 GKY6    JSR     SPP
00100         BRA     GKY
00101 GKY7    JSR     CRANGE
00102         BRA     GKY
00103 GKY8    JSR     SRANGE
00104         BRA     GKY
00105 GKY9    JSR     DRANGE
00106         LBRA    GKY
00107 GKYA    JSR     CPRMT1  CLEAR PROMPTS
00108         JSR     CPRMT2
00109         JSR     PRMT2C  GO TYPE PROMPT C TO SCREEN
00110         JSR     KEY     GO GET KEYPRESS
00111         PULU    X
00112         CMPX    #121    LOWER CASE Y
00113         BEQ     GKYB
00114         CMPX    #89     UPPER CASE Y
00115         BEQ     GKYB
00116         JSR     CPRMT1  CLEAR PROMPT LOCATION #1
 
 
 
 
 
 
 
 
00117         LBRA    GKY     RETURN FOR NEXT KEYPRESS
00118 GKYB    LDX     $FFFE   CHECK IF COCO2 OR COCO3
00119         CMPX    #40999  IS IT A COCO2?
00120         BNE     GKYC    GO IF NO
00121         STA     $FFDE   COCO2 COLD START
00122         CLR     113
00123         JMP     40999
00124 GKYC    STA     $FFDE   COCO3 COLD START
00125         CLR     113
00126         JMP     $8C1B
00127 ZEND    NOP
00128         END
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
