Monitorprogramm LC80 LOC OBJ CODE M STMT SOURCE STATEMENT 11 ROM?: EQU 2 ; EIN ROM -> 1 12 ; ZWEI ROM -> 2 13 14 ; PIO-PORTS: 15 16 SEGMENT EQU 0F4H ;AUSGABE-PORT SEGMENTANSTEUERUNG 17 PIO1AC EQU 0F6H 18 19 DIGITAP EQU 0F5H ;B2...B7=DIGITANST. UND TASTENMATRIX 20 ;B0=TAPE-IN, B1=TAPE-OUT 21 PIO1BC EQU 0F7H 22 21 USERPORT EQU 0F8H ;U8ER-PORT, FREI VERFUEGBAR 24 PI02AC EQU 0FAH 29 26 KEYIN EQU 0F9H ;B4...B7=EINGAENGE TASTEN-ABFRAGE 27 ;B0...B3 FUER USER NUTZBAR 28 PIO2BC EQU 0FBH 29 30 ; CTC-ADRESSEN 31 CTC0 EQU 0ECH 32 CTC1 EQU 0EDH 33 CTC2 EQU 0EEH 34 CTC3 EQU 0EFH 35 36 ;VEREINBARUNGEN BEI ERWEITERUNGEN 37 INTVEK EQU 00H ;INT-VECT. FUER CTC 38 HIINT EQU 23H ;CPU-I-REG 39 40 41 ;***************************************************** 42 ; 0000 43 ORG 0000H 44 START: 0000 0600 45 LD B,00H ;EIN8CHALTVERZOEGERUNG 0002 10FE 46 DJNZ $ 0004 1835 47 JR BEGIN 48 0008 49 ORG 08H 50 RST1: 0008 C30823 51 JP 2308H 52 0010 53 ORG 10H 54 RST2: 0010 C31023 55 JP 2310H 56 0018 57 ORG 18H 58 RST3: 0018 C31823 59 JP 2318H 60 0020 61 ORG 20H 62 RST4: 0020 C32023 63 JP 2320H 64 0028 65 ORG 28H 66 RST5: 0028 C32823 67 JP 2328H 68 0030 69 ORG 30H 70 RST6: 0030 C33023 71 JP 2330H 72 0038 73 ORG 38H 74 RST7: 0038 C33823 75 JP 2338H 76 77 ;----------------------------------------------------- 78 BEGIN: 003B 3AFC23 79 LD A,(INIFLAG) ;RAM LOESCHEN, WENN ERSTEINSCHALTUNG 003E FE80 80 CP 80H 0040 2829 81 JR Z,NOFF 0042 210020 82 LD HL,2000H 0045 110120 83 LD DE,2001H 0048 01FF0F 84 LD BC,0FFFH 004B 36FF 85 LD (HL),0FFH 004D EDB0 86 LDIR 004F 010300 87 LD BC,RSTLGT ;STANDARD-RST38-PROG. LADEN 0052 113823 88 LD DE,2338H 0055 211101 89 LD HL,RSTUP 0058 EDB0 90 LDIR 005A 010300 91 LD BC,NMILGT ;STANDARD-NMI-PROG. LADEN 005D 114023 92 LD DE,2340H 0060 21EB00 93 LD HL,NMIUP 0063 1804 94 JR NMI+3 95 96 ;-------------------- NMI-FKT. ANSPRINGEN ---------- 0066 97 ORG 0066H 98 NMI: 0066 C34023 99 JP 2340H 100 101 ;--------------------------------------------------------- 0069 EDB0 102 LDIR 103 NOFF: 006B 31EA23 104 LD SP,SPINI ;SP AUF ANFANGSWERT 006E CDCA00 105 CALL IOINIT 0071 CD9900 106 CALL MEMTES 107 ;--------------------- TEST, OB ERSTEINSCHALTUNG ---- 0074 3AFC23 108 LD A,(INIFLAG) 0077 FE80 109 CP 80H 0079 C49C02 110 CALL NZ,INI ;MUSIK U. GRAPHIK, WENN ERSTEINSCH. 111 ;--------------------- RESETZUSTAND HERSTELLEN ------ 007C 210020 112 LD HL,2000H 007F 22F823 113 LD (USERPC),HL ;USER-PC AUF ANFANGSWERT 0082 AF 114 XOR A 0083 32FD23 115 LD (FUFEFLAG),A;FUNKTIONS- UND FEHLERFLAG LOESCHEN 0086 DD217409 116 LD IX,DISP1 ; "LC80"-TEXT 117 ;--------------------- TEXT, ADR.- U. TAPE-CODE LOE. 118 SETSTO: 008A AF 119 XOR A 008B 32FB23 120 LD (ATCODE),A 121 122 ;--------------------- HAUPTPROGRAMM ---------------- 123 MAIN: 008E 31EA23 124 LD SP,SPINI ;USER-PC AUF ANFANGSWERT 0091 CD5A08 125 CALL DAK1 ;ANZEIGE UND TASTATURABFRAGE 0094 CD1B01 126 CALL KEYEXC ;TASTENBEHANDLUNG 0097 18F5 127 JR MAIN 128 129 ;--------------------- SPEICHERTEST ------------------ 130 MEMTES: 0099 010400 131 LD BC,0004H ;1 K RAM 009C 210020 132 LD HL,2000H ;ADR RAM 133 RAMSL: 009F CD5208 134 CALL RAMCHK 00A2 2801 135 JR Z, RAMOK 00A4 76 136 HALT 137 RAMOK: 00A5 23 138 INC HL 00A6 10F7 139 DJNZ RAMSL 00A8 ÖD 140 DEC C 00A9 20F4 141 JR NZ,RAMSL 00AB AF 142 XOR A 00AC 210000 143 LD HL,0 ;ADR 1. ROM/EPROM 00AF 010400 144 LD BC,0004H ;1 K 00B2 CDC200 145 CALL ROMSL 146 147 COND ROM?=1 148 LD HL,0400H ;WEITER 1. ROM 149 ENDC 150 151 COND ROM?=2 00B5 210008 152 LD HL,0800H ;ADR 2. ROM 153 ENDC 154 00B8 0104FF 155 LD BC,0FF04H ;1K - 1BYTE 00BB CDC200 156 CALL ROMSL 00BE BE 157 CP (HL) 00Br C8 158 RET Z 00C0 76 159 HALT 00C1 C9 160 RET 161 162 ROMSL: 00C2 86 163 ADD A,(HL) 00C3 23 164 INC HL 00C4 10FC 165 DJNZ ROMSL 00C6 CD 166 DEC C 00C7 20F9 167 JR NZ,ROMSL 00C9 C9 168 RET 169 170 ;---------------------- IO-INITIALISIERUNG ----------- 171 IOINIT: ;PIO-INITIALISIERUNG 00CA 3ECF 172 LD A,0CFH ;MODE 3 00CC D3F6 173 OUT (PIO1AC),A ;SEGMENT-PORT 00CE 3EFF 174 LD A,0FFH 00D0 D3F4 175 OUT (SEGMENT),A;ALLE SEGMENTE AUSSCHALTEN 00D2 3E00 176 LD A,0 ;E-A-DEFINITION 00D4 D3F6 177 OUT (PIO1AC),A 178 00D6 3ECF 179 LD A,0CFH 00D8 D3P7 180 OUT (PIO1BC),A ;DIGIT-AUSG. 181 ;B2...B7 = D-LSD,D-MSD,A-LSD...A-MSD 00DA 3EFF 182 LD A,0FFH ;ALLE TREIBER SPERREN 00DC D3FS 183 OUT (DIGITAP),A 00DE 3E01 184 LD A,1 ;B0-EINGANG, B1...B7-AUSGAENGE 00E0 D3F7 185 OUT (PIO1BC),A 186 00E2 3ECF 187 LD A,0CFH 00E4 D3FB 188 OUT (PIO2BC),A ;TASTEN-EINGAENGE B4...B7 00E6 3EFF 189 LD A,0FFH 00E8 D3FB 190 OUT (PIO2BC),A 00EA C9 191 RET 192 193 ;----------------------------------------------------- 194 NMIUP: ;NMI-UNTERPROGRAMM 00EB C3EE00 195 JP NMIUP1 196 NMILGT EQU $-NMIUP 197 198 NMIUP1: 00EE F5 199 PUSH AF 00EF CS 200 PUSH BC 00F0 08 201 EX AF,AF' 00F1 D9 202 EXX 00F2 F5 203 PUSH AF 00F3 C5 204 PUSH BC 00F4 D5 205 PUSH DE 00F5 E5 206 PUSH HL 00F6 D9 207 EXX 00F7 DDE5 208 PUSH IX 00F9 0628 209 LD B,40 ;ANZEIGEZEIT "INT" 00FB DD219909 210 LD IX,DISP5 211 NMISL: 00FF CD8308 212 CALL DAK2 0102 10FB 213 DJNZ NMISL 0104 DDE1 214 POP IX 0106 D9 215 EXX 0107 El 216 POP HL 0108 Dl 217 POP DE 0109 Cl 218 POP BC 010A Fl 219 POP AF 010B D9 220 EXX 010C 08 221 EX AF,AF' 010D Cl 222 POP BC 010E Fl 223 POP AF 010F ED45 224 RETN 225 226 ;----------------------------------------------------- 227 RSTUP: 0111 C31401 228 JP RSTUP1 229 RSTLGT EQU $-RSTUP 230 231 RSTUP1: 0114 DD219F09 232 LD IX,DISP6 0118 C38A00 233 JP SETSTO 234 235 ;--------------------- TASTENBEHANDLUNGSPROGRAMM ---- 236 ; EINTRITT: INTERNER TASTENCODE IN A 237 KEYEXC: 011B FE10 238 CP 10H ;TEST, OB FUNKTIONSTASTE 011D 3824 239 JR C,KHEX ;SPR., WENN ZIFFERNTASTE 011F 21FD23 240 LD HL,FUFEFLAG ;FLAG "FUNKTIONSTASTE" SETZEN 0122 CBC6 241 SET 0,(HL) 0124 D610 242 SUB 10H ;OBERE ZIFFER DES CODES LOESCHEN 0126 FE08 243 CP 08H ;TEST DER FUNKTIONSGRUPPE 0128 21AB09 244 LD HL,KSUFUN 012B DA8702 245 JP C,BRANCH ; WENN "+","-","EXEC" O. "DATA"-TASTE 246 247 ;ADR- ODER TAPE-TASTEN 012E DD21F223 248 LD IX,DATLED ;ADR. FUER DATEN- U. ADR.-ANZEIGE 0132 D608 249 SUB 08H 0134 21FB23 250 LD HL,ATCODE 0137 77 251 LD (HL),A ;UMGERECHN. CODE HINTERLEGEN 0138 21FA23 252 LD HL,ATFLAG 013B 3600 253 LD (HL),0 ;FLAG LOESCHEN 0130 21B509 254 LD HL,KFUN 0140 C38702 255 JP BRANCH 256 257 ;----------------- AUSWERTUNG ZIFFERNTASTEN --------- 258 KHEX: 0143 4F 259 LD C,A ;TASTATURCODE UMSPEICHERN 0144 21BF09 260 LD HL,HTAB 361 BR1: 0147 3AFB23 262 LD A,(ATCODE) ;WERT FUER AUSZUF. FUNKTION 014A C38702 263 JP BRANCH 264 265 ;--------------------- EINTR.PKTE FUER +,-,EXEC,DATA - 266 ; (UEBER KSUFUN-TABELLE) 267 KINC: ; "+"-TASTE 014D 21CB09 268 LD HL,ITAB 0150 18F5 269 JR BR1 270 271 KDEC: ; "-"-TASTE 0152 21D709 272 LD HL,DTAB 0155 18F0 273 JR BR1 274 275 KEXEC: ; "EXEC"-TASTE 0157 21E309 276 LD HL, ETAB 015A 18EB 277 JR BR1 278 279 KDATA: ; "DATA"-TASTE 015C CD2709 280 CALL TESTM ;TEST. OB ADR OD. DAT IN ATCODE 015F CDC502 281 CALL MEMDP2 ;ADR U. DAT. ANZ., DAT. GEPUNKTET 0162 C9 282 RET 283 284 ;--------------------- EINTR.PKTE FUER ADRS U. TAPE - 285 ; (UEBER KFUN-TABELLE) 286 KADRS: ; "ADRS"-TASTE 0163 CDBC02 287 CALL MEMDP1 ;ADR. U. DAT. ANZ., ADR. GEPUNKTET 0166 C9 288 RET 289 290 KTAPWR: ; "TO TAPE"- ODER "FROM TAPE"-TASTE 0167 CDE202 291 CALL STEPDP ;PARAMETER ANZEIGEN 016A C9 292 RET 293 294 ;--------------------- EINTR.PKTE FUER ZIFFERNEINGABEN 295 ; (UEBER HTAB-TABELLE) 296 HFIX: ; BEDIENUNGSFEHLER 016B C39602 297 JP ERRDIS 298 299 HDA: ;ZIFFER ALS DATUM 016E 2AF823 300 LD HL,(USERPC) 0171 CD5208 301 CALL RAMCHK ;TEST, OB USER-PC IM RAM-BEREICH 0174 C29602 302 JP NZ,ERRDIS ;SPR., WENN KEIN RAM 0177 CDA802 303 CALL PRECL1 ;1 BYTE LOE., WENN FUFEFLAG NICHT 0 017A 79 304 LD A,C ;EINGEG. ZIFFER 017B ED6F 305 RLD ;TETRADE IN RAM SCHIEBEN 017D CDC502 306 CALL MEMDP2 ;ANZEIGEN 0180 C9 307 RET 308 309 HAD: ;ZIFFER ALS ADRESSE 0181 21F823 310 LD HL,USERPC 0184 CDB402 311 CALL PRECL2 ;2 BYTE LOE., WENN FUFEFLAG NICHT 0 0187 79 312 LD A,C ;EINGEG. ZIFFER 0188 ED6F 313 RLD ;TETRADEN IN BEIDEN BYTE VERSCHIEBEN 018A 23 314 INC HL 018B ED6F 315 RLD 018D CDBC02 316 CALL MEMDP1 ;ANZEIGEN 0190 C9 317 RET 318 319 HTAPWR: ;ZIFFER ALS PARAMETER FUER BAND 0191 CDFD02 320 CALL LOCTBF ;ADR FUER PARAMETER BERECHNEN 0194 CDB402 321 CALL PRECL2 ;2 BYTE LOE., WENN FUFEFLAG NICHT 0 0397 79 322 LD A,C ;EINGEG. ZIFFER 0198 ED6F 323 RLD ;TETRADE IN BEIDEN BYTE VERSCHIEBEN 019A 23 324 INC HL 019B ED6F 325 RLD 019D CDE202 326 CALL STEPDP ;PARAMETER ANZEIGEN 01A0 C9 327 RET 328 329 ;---------------------- UNTEREINTRITT "+"-TASTE ---- 330 ; (UEBER ITAB) 331 IFIX: ;BEDIENUNGSFEHLER 01A1 C39602 332 JP ERRDIS 333 334 ADRADD: ;ANWENDER-PC ERHOEHEN 01A4 2AF823 335 LD HL,(USERPC) 01A7 23 336 INC HL 01A8 22F823 337 LD (USERPC),HL 01AB CDC502 338 CALL MEMDP2 ;ANZEIGEN 01AE C9 339 RET 340 341 TPFUN1: ;BEI "TO TAPE" NAECHSTER PARAMETER 01AF 21FA23 342 LD HL,ATFLAG 01B2 34 343 INC (HL) ;FLAS AUF NEUEN PARAMETER 01B3 CD0703 344 CALL LOCTNA ;PARMETER 'F','S' ODER 'E' 01B6 2004 345 JR NZ,ISTEP ;SPRUNG, WENN RICHTIG 01B8 35 346 DEC (HL) ;FLAG AUF ALTEN WERT 01B9 C39602 347 JP ERRDIS ;FEHLERANZEIGE 348 ISTEP: 01BC CDE202 349 CALL STEPDP ;PARAMETER ANZEIGEN 01BF C9 350 RET 351 352 ;--------------------- UNTEREINTRITT "-"-TASTE ----- 353 ; (UEBER DTAB) 354 DFIX: ;BEDIENUNGSFEHLER 01C0 C39602 355 JP ERRDIS 356 357 ADRDEC: ;ANWENDER-PC ERNIDRIGEN 01C3 2AF823 358 LD HL,(USERPC) 01C6 2B 359 DEC HL 01C7 22F823 360 LD (USERPC),HL 01CA CDC502 361 CALL MEMDP2 ;ANZEIGEN 01CD C9 362 RET 363 364 TPTUN2: ;BEI "TO TAPE" VORHERIGER PARAMETER 01CE 21FA23 365 LD HL,ATFLAG 01D1 35 366 DEC (HL) ;FLAG AUF VORHER. PARAMETER 01D2 CD0703 367 CALL LOCTNA ;PARAMETER 'F', 'S' ODER 'E' 01D5 2004 368 JR NZ,DSTEP ;SPR., WENN RICHTIG 01D7 34 369 INC (HL) ;ALTER FLAGWERT 01D8 C39602 370 JP ERRDIS ;FEHLERANZEIGE 371 DSTEP: 01DB CDE202 372 CALL STEPDP ;PARAMETER ANZEIGEN 01DE C9 373 RET 374 375 ;--------------------- UNTEREINTRITT "EXEC"-TASTE --- 376 ; (UEBER ETAB) 377 EFIX: ;BEDIENUNGSFEHLER 01DF C39602 378 JP ERRDIS 379 380 ADREXC: ;PROGRAMAUSFUEHRUNG AB USER-PC 01E2 E5 381 PUSH HL 01E3 2AF823 382 LD HL,(USERPC) 01E6 E3 383 EX (SP),HL 01E7 C9 384 RET 385 386 ENDFUN: ; DE IN USER-PC ABSP. UND ANZEIGEN 01E8 ED53F823 387 LD (USERPC),DE 01EC CDC502 388 CALL MEMDP2 01EF C9 389 RET 390 391 EWT: ;UEBERSPIELEN AUF BAND 01F0 CD8803 392 CALL SUM ;PRUEFSUMME BERECHNEN 01F3 38EA 393 JR C,EFIX ;WENN ENDADR 1 KHZ 776 ; CY=1 -—> 2 KHZ 777 PERIOD: 0800 110000 778 LD DE,0000 ;ZAEHLER = 0 779 CHK0: 0803 DBF5 780 IN A,(DIGITAP) ;EINLESEN 0805 13 781 INC DE ;ZAEHLER ERHOEHEN 0806 1F 782 RRA 0807 38FA 783 JR C,CHK0 ;WDHLG., WENN EINGANG H 0809 3E00 784 LD A,0 ;AZEIGE FREI, TAPE.OUT = L 080B D3F5 785 OUT (DIGITAP),A 786 CHK1: 080D DBF5 787 IN A,(DIGITAP) ;EINLESEN 080F 13 788 INC DE ;ZAEHLER ERHOEHEN 0810 1F 789 RRA 0811 30FA 790 JR NC,CHK1 ;WDHLG., WENN EINGANG L 0813 3E02 791 LD A,2 ; ANZEIGE FREI, TAPE.OUT = H 0815 D3F5 792 OUT (DIGITAP),A 0817 7B 793 LD A,E 0818 FE16 794 CP 22 ;TEST <> 1,5 KHZ 081A C9 795 RET 796 797 ;--------------------- DATEN AUF BAND AUSGEBEN ------ 798 ;EINTRITT: ANFANGSADR. IN HL 799 ; ANZAHL IN BC 800 ;AUSTRITT: 801 TAPOUT: 081B 5E 802 LD E,(HL) ;BYTE NACH E 081C CD2508 803 CALL OUTBYTE 08lF EDA1 804 CPI ;NAECHSTES BYTE 0821 EA1B08 805 JP PE,TAPOUT ;WDHLG., WENN NOCH BYTES ZU SENDEN 0824 C9 806 RET 807 808 ;--------------------- EIN BYTE AUSGEBEN ---------- 809 ;EINTRITT: BYTE IN E 810 ;AUSTRITT: 811 OUTBYTE: 0825 1608 812 LD D,08H ;8 BIT 0827 B7 813 OR A 0828 CD3808 814 CALL OUTBIT ;STARTBIT 815 OLOOP: 082B CB1B 816 RR E ;BIT IN CY 082D CD3808 817 CALL OUTBIT ;DATENBIT AUSGEBEN 0630 15 818 DEC D 0831 20F8 819 JR NZ,OLOOP ;WDHLG., BIS 8 BIT 0833 37 820 SCF 0834 CD3808 821 CALL OUTBIT ;STOPBIT 0837 C9 822 RET 823 824 ;----------------- - 825 OUTBIT: 0838 D9 826 EXX ;OUTPUT 1 BIT DATA 0839 2600 827 LD H,0 083B 3809 828 JR C,OUT1 829 OUT0: 083D 2E0C 830 LD L,0CH 083F CD7403 831 CALL SOUN2K 0842 2E03 832 LD L,03H 0844 1807 833 JR BITEND 834 OUT1: 0846 2E06 835 LD L,06H 0848 CD7403 836 CALL SOUN2K 084B 2E06 837 LD L,06H 838 BITEND: 084D CD7003 839 CALL SOUN1K 0850 D9 840 EXX 0851 C9 841 RET 842 ;---------------------- TEST, 0B (HL) RAM IST ------- 843 ; 2 x INVERTIERTES SCHREIBEN UND 844 ; LESEN AUS/IN DEN DURCH HL ANGEG. 845 ; SPEICHERPLATZ UND VERGLEICHEN 846 ; AUSGABE: Z=1, WENN RAM 847 848 RAMCHK: 0852 7E 849 LD A,(HL) 0853 2F 850 CPL 0854 77 851 LD (HL),A 0855 7E 852 LD A,(HL) 0856 2F 853 CPL 0857 77 854 LD (HL),A 0858 BE 855 CP (HL) 0859 C9 856 RET 857 858 ;--------------------- LED UND TASTATUR-ABFR.-------- 859 DAK1: 085A DDE5 860 PUSH IX ;ADR ANZ.TEXT RETTEN 085C 21FD23 861 LD HL,FUFEFLAG 085F CB7E 862 BIT 7,(HL) ;FEHLERFLAG TESTEN 0861 2804 863 JR Z,SCPRE ;SPR., WENN KEIN FEHLER 0863 DD21A509 864 LD IX,ERR ;ADR FEHLERTEXT 865 SCPRE: 0867 0606 866 LD B,06H 867 SCNX: 0869 CD8308 868 CALL DAK2 086C 30F9 869 JR NC,SCPRE ;WDHLG., WENN TASTE NOCH GEDR. 086E 10F9 870 DJNZ SCNX 0870 CBBE 871 RES 7,(HL) ;FEHLERLAG LOESCHEN 0872 DDE1 872 POP IX ;ALTER TEXT 873 SCLOOP: 0874 CD8308 874 CALL DAK2 0877 38FB 875 JR C,SCLOOP ;WDHLG., WENN KEINE TASTE GEDR. 0879 21EF09 876 LD HL,KEYTAB ;TASTE NACH TABELLE UMCODIEREN 087C 85 877 ADD A,L 087D 6F 878 LD L,A 087E 3001 879 JR NC,SCNCY 0880 24 880 INC H 881 SCNCY: 0881 7E 882 LD A,(HL) ;UMCODIERTER TASTENWERT 0882 C9 883 RET 884 885 ;----------------- LED U. TASTATUR-UP -------------- 886 DAK2: 0883 37 887 SCF 0884 08 888 EX AF,AF' 0885 D9 889 EXX 0886 0E00 890 LD C,0 ;TASTENNUMMER = 0 0888 1EFB 891 LD E,11111011B ;BITMUSTER FUER DIGITANSTEUERUNG 892 KCOL: 088A DD7E00 893 LD A,(IX) ;SEGMENTE ANSTEUERN 008D 2F 894 CPL 088E D3F4 895 OUT (SEGMENT),A 0890 7B 896 LD A,E ;DIGIT ANSTEUERN 0891 D3F5 897 OUT (DIGITAP),A 0893 0664 898 LD B,100 ;ZEITVERZOEGERUNG 0895 10FE 899 DJNZ $ 0897 0604 900 LD B,04H ;ZEILENZAHL TASTENMATRIX 0899 DBF9 901 IN A,(KEYIN) ;TASTENWERT EINLESEN 089B 57 902 LD D,A ;TEST, OB TASTE GEDRUECKT 903 KROW: 089C CB12 904 RL D 089E 3802 905 JR C,NOKEY 08A0 79 906 LD A,C 08Al 08 907 EX AF,AF' ;WENN TASTE: -> CY=0, A = NUMMER 908 NOKEY: 08A2 0C 909 INC C ;ABFRAGEZAEHLER ERHOEHEN 08A3 10F7 910 DJNZ KROW ;WDHLG., WENN NOCH NICHT ALLE ZEILEN 08A5 DD23 911 INC IX ;NAECHSTES ZEICHEN ZUR ANZEIGE 08A7 CB03 912 RLC E 08A9 3EFF 913 LD A,0FFH 08AB D3F5 914 OUT (DIGITAP),A;ANZEIGE AUS 08AD 38DB 915 JR C,KCOL ;GGF. NAECHSTE SPALTE 08AF 11FAFF 916 LD DE,0FFFAH 08B2 DD19 917 ADD IX,DE ;WIEDERHERST. ANF.ADR DES ANZ.TEXTES 08B4 D9 918 EXX 08B5 08 919 EX AF,AF' 08B6 C9 920 RET 921 922 ;-------------------- ADRESSE ANZEIGEN ------------- 923 ADRSDP: 08B7 21F423 924 LD HL,ADRLED 08BA 7B 925 LD A,E ;UNTERE 2 ZIFFERN 08BB CDD908 926 CALL TWOSEG 08BE 7A 927 LD A,D ;OBERE 2 ZIFFERN 08BF CDD908 928 CALL TWOSEG 08C2 C9 929 RET 930 931 ;---------------------- A-REG IN DAT-ANZ-SPEICHER --- 932 DADP: 08C3 21F223 933 LD HL,DATLED 08C6 CDD908 934 CALL TWOSEG 08C9 C9 935 RET 936 937 ;--------------------- - 938 ONESEG: 08CA E5 939 PUSH HL 08CB D5 940 PUSH DE 08CC 21070A 941 LD HL,SEGTAB ;ADR DER SEGMENTTABELLE 08CF E60F 942 AND 0FH ;OBERES HALBBYTE AUSBLENDEN 08D1 SF 943 LD E,A 08D2 1600 944 LD D,0 08D4 19 945 ADD HL,DE 08DS Dl 94« POP DE 08D6 7E 947 LD A,(HL) ;KONVERTIERTE ZAHL NACH A 08D7 El 948 POP HL 08D8 C9 949 RET 950 951 ;--------------------- - 952 TWOSEG: 08D9 F5 953 PUSH AF 08DA CDCA08 954 CALL ONESEG ;UNTERE ZIFFER UMWANDELN 08DD 77 955 LD (HL),A ;ABSPEICHERN 08DE 23 956 INC HL ;ADR FUER HINTERLEGUNG OBERE ZAHL 08DF Fl 957 POP AF ;URSPRUENGL. ZAHL 08E0 0F 958 RRCA 08E1 0F 959 RRCA 08E2 0F 960 RRCA 08E3 0F 961 RRCA ;OBERES HALBBYTE 08E4 CDCA08 962 CALL ONESEG ;OBERE ZIFFER UMWANDELN 08E7 77 963 LD (HL),A ;ABSPEICHERN 08E8 23 964 INC HL ;ADR GGF. NAECHSTE ZIFFER 08E9 C9 965 RET 966 967 ;--------------------- MUSIKPROGRAMM ----------------- 968 MONMUS: 08EA FD21170A 969 LD IY,SONG ;ADR DER NOTEN 970 MUSIC: 08EE FDE5 971 PUSH IY 08F0 DDE1 972 POP IX 973 MUSLOOP: 08F2 DD7E00 974 LD A,(IX) 08F5 87 975 ADD A,A 08F6 D8 976 RET C ;WENN WERT >= 80H 08F7 FAEE08 977 JP M,MUSIC ;WENN WERT >= 40H 08FA 0E00 978 LD C,0 08FC CB77 979 BIT 6,A 08FE 2002 980 JR NZ,PLAY ;WENN WERT >= 20H 0900 CBC9 981 SET 1,C ;AUSGABE-BIT 982 PLAY: 0902 E63F 983 AND 3FH 0904 213409 984 LD HL,FRQTAB 0907 5F 985 LD E,A 0908 1600 986 LD D,0 090A 19 987 ADD HL,DE 090B 5E 988 LD E,(HL) 090C 23 989 INC HL 090D 56 990 LD D,(HL) 090E DD23 991 INC IX 0910 DD6600 992 LD H,(IX) 0913 3EFF 993 LD A,0FFH 994 TONE: 0915 6A 995 LD L,D 996 TONOUT: 0916 D3F5 997 OUT (DIGITAP),A 0918 43 998 LD B,E 999 DELAY: 0919 00 1000 NOP 09lA 10FD 1001 DJNZ DELAY 091C A9 1002 XOR C 091D 20 1003 DEC L 091E 20F6 1004 JR NZ,TONOUT 0920 25 1005 DEC H 0921 20F2 1006 JR NZ,TONE 0923 DD23 1007 INC IX 0925 18CB 1008 JR MUSLOOP 1009 1010 ;--------------------- ANZEIGEMOD TESTEN ------------- l011 TESTM: 0927 3AFB23 1012 LD A,(ATCODE) 092A FE01 1013 CP 01H 092C C8 1014 RET Z 092D FE02 1015 CP 02H 092F C8 1016 RET Z 0930 El 1017 POP HL ;RUECKKEHRADR. LOESCHEN 0931 C39602 1018 JP ERRDIS 1019 1020 ;--------------------- FREQUENZTABELLE --------------- 1021 FRQTAB: 0934 7018 1022 DEFW 1870H 0936 6A1A 1023 DEFW 1A6AH 0938 64lB 1024 DEFW 1B64H 093A SEID 1025 DEFW 1D5EH 093C S91E 1026 DEFW 1E59H 093E 5420 1027 DEFW 2054H 0940 4F22 1028 DEFW 224FH 0942 4B24 1029 DEFW 244BH 0944 4626 1030 DEFW 2646H 0946 4229 1031 DEFW 2942H 0948 3F2B 1032 DEFW 2B3FH 094A 3B2E 1033 DEFW 2E3BH 094C 3831 1034 DEFW 3138H 094E 3533 1035 DEFW 3335H 0950 3237 1036 DEFW 3732H 0952 2F3A 1037 DEFW 3A2FH 0954 2C3D 1038 DEFW 3D2CH 0956 2A41 1039 DEFW 412AH 0958 2745 1040 DEFW 4527H 095A 2549 1041 DEFW 4925H 09SC 234D 1042 DEFW 4D23H 095E 2152 1043 DEFW 5221H 0960 1F57 1044 DEFW 571FH 0962 1D5C 1045 DEFW 5C1DH 0964 1B62 1046 DEFW 621BH 0966 1A67 1047 DEFW 671AH 0968 186E 1048 DEFW 6E18H 096A 1774 1049 DEFW 7417H 096C 167B 1050 DEFW 7B16H 096E 1482 1051 DEFW 8214H 0970 138A 1052 DEFW 8A13H 0972 1292 1053 DEFW 9212H 1054 1055 ;---------------------- TEXTE ------------------------ 1056 DISP1: 0974 E7 1057 DEFB 0E7H ;"0" 0975 EF 1058 DEFB 0EFH ;"8" 0976 08 1059 DEFB 08H ;"—" 0977 C6 1060 DEFB 0C6H ;"C" 0978 C2 1061 DEFB 0C2H ;"L" 0979 00 1062 DEFB 00H ;" " 097A 00 1063 DEFB 00H ;" " 097B 4E 1064 DEFB 4EH ;"F" 097C E7 1065 DEFB 0E7H ;"0" 1066 DISP2: 097D 00 1067 DEFB 00H ;" " 097E 48 1068 DEFB 048H ;"R" 097F CE 1069 DEFB 0CEH ;"E" 0980 AE 1070 DEFB 0AEH ;"S" 0981 E3 1071 DEFB 0E3H ;"U" 0982 00 1072 DEFB 000H ;" " 1073 DISP3: 0983 00 1074 DEFB 000H ;" " 0984 E7 1075 DEFB 0E7H ;"0" 0985 C2 1076 DEFB 0C2H ;"L" 0986 C2 1077 DEFB 0C2H ;"L" 0987 6F 1078 DEFB 06FH ;"A" 0988 6B 1079 DEFB 06BH ;"H" 1080 DISP4: 0989 00 1081 DEFB 00H ;" " 098A 00 1082 DEFB 00H ;" " 098B 00 1083 DEFB 00H ;" " 098C 00 1084 DEFB 00H ;" " 098D 00 1085 DEFB 00H ;" " 098E 00 1086 DEFB 00H ;" " 098F 00 1087 DEFB 00H ;" " 0990 00 1088 DEFB 00H ;" " 0991 4E 1089 DEFB 04EH ;"F" 0992 AE 1090 DEFB 0AEH ;"S" 0993 CC 1091 DEFB 0CEH ;"E" 0994 00 1092 DEFB 00H ;" " 0995 4E 1093 DEFB 04EH ;"F" 0996 00 1094 DEFB 00H ;" " 0997 00 1095 DEFB 00H ;" " 0990 00 1096 DEFB 00H ;" " 1097 DISP5: 0999 00 1098 DEFB 00H ;" " 099A 00 1099 DEFB 00H ;" " 099B CA 1100 DEFB 0CAH ;"t" 099C 68 1101 DEFB 68H ;"n" 099D 21 1102 DEFB 21H ;"i" 099E 00 1103 DEFB 00H ;" " 1104 DISP6: 099F EF 1105 DEFB 0EFH ;"8" 09A0 AD 1106 DEFB 0ADH ;"3" 09Al 00 1107 DEFB 00H ;" " 09A2 CA 1108 DEFB 0CAH ;"t" 09A3 AE 1109 DEFB 0AEH ;"s" 09A4 48 1110 DEFB 48H ;"r" 1111 ERR: 09A5 00 1112 DEFB 00H ;" " 09A6 48 1113 DEFB 48H ;"r" 09A7 E8 1114 DEFB 0E8H ;"o" 09A8 48 1115 DEFB 48H ;"e" 09A9 48 1116 DEFB 48H ;"e" 09AA CE 1117 DEFB 0CEH ;"E" 1118 1119 ;--------------------- - 1120 KSUFUN: 09AB 4D01 1121 DEFW KINC 09AD 00 1122 DEFB KINC-KINC ;"+" 09AE 05 1123 DEFB KDEC-KINC ;"-" 09AF 0A 1124 DEFB KEXEC-KINC;"EXEC" 09B0 00 112? DEFB 00H 09B1 0F 1126 DEFB KDATA-KINC;"DATA" 09B2 00 1127 DEFB 00H 09B3 00 1128 DEFB 00H 09B4 00 1129 DEFB 00H 1130 ;--------------------- - 1131 KFUN: 09B5 6301 1132 DEFW KADRS 09B7 00 1133 DEFB 00H 09B8 00 1134 DEFB KADRS-KADRS;"ADRS" 09B9 00 1135 DEFB 00H 09BA 00 1136 DEFB 00H 09BB 00 1137 DEFB 00H 09BC 00 1138 DEFB 00H 09BD 04 1139 DEFB KTAPWR-KADRS;"TO TAPE" 09BE 04 1140 DEFB KTAPWR-KADRS;"FROM TAPE* 1141 ;--------------------- - 1142 HTAB: 09BF 6B01 1143 DEFW HFIX 09C1 00 1144 DEFB HFIX-HFIX ; FEHLER 09C2 16 1145 DEFB HAD-HFIX ;"ADRS" 09C3 03 1146 DEFB HDA-HFIX ; 09C4 00 1147 DEFB 00H 09C5 00 1148 DEFB 00H 09C6 00 1149 DEFB 00H 09C7 26 1150 DEFB HTAPWR-HFIX;"TO TAPE" 09C8 26 1151 DEFB HTAPWR-HFIX;"FROM TAPE" 09C9 00 1152 DEFB 00H 09CA 00 1153 DEFB 00H 1154 ;--------------------- - 1155 ITAB: 09CB A101 1156 DEFW IFIX 09CD 00 1157 DEFB IFIX-IFIX ; 09CE 03 1158 DEFB ADRADD-IFIX; 09CF 03 1159 DEFB ADRADD-IFIX; 09D0 00 1160 DEFB 00H 09D1 00 1161 DEFB 00H 09D2 00 1162 DEFB 00H 09D3 0E 1163 DEFB TPFUN1-IFIX; 09D4 0E 1164 DEFB TPFUN1-IFIX; 09D5 00 1165 DEFB 00H 09D6 00 1166 DEFB 00H 1167 ;--------------------- - 1168 DTAB: 09D7 C001 1169 DEFW DFIX 09D9 00 1170 DEFB 00H 09DA 03 1171 DEFB ADRDEC-DFIX; 09DB 03 1172 DEFB ADRDEC-DFIX; 09DC 00 1173 DEFB 00H 09DD 00 1174 DEFB 00H 09DE 00 1175 DEFB 00H 09DF 0E 1176 DEFB TPTUN2-DFIX; 09E0 0E 1177 DEFB TPTUN2-DFIX; 09E1 00 1178 DEFB 00H 09E2 00 1179 DEFB 00H 1180 ;--------------------- - 1181 ETAB: 09E3 DF01 1182 DEFW EFIX 09E5 00 1183 DEFB 00H 09E6 03 1184 DEFB ADREXC-EFIX; 09E7 03 1185 DEFB ADREXC-EFIX; 09E8 00 1186 DEFB 00H 09E9 00 1187 DEFB 00H 09EA 00 1188 DEFB 00H 09EB 11 1189 DEFB EWT-EFIX ; 09EC 47 1190 DEFB LOAD-EFIX ; 09ED 00 1191 DEFB 00H 09EE 00 1192 DEFB 00H 1193 ;----------------- TASTATURTABELLE ------------------- 1194 KEYTAB: 09EF 12 1195 DEFB 12H ;EXECUTE 09F0 1E 1196 DEFB 1EH ;STORE 09F1 1F 1197 DEFB 1FH ;LOAD 09F2 00 1198 DEFB 0 ;NICHT BELEGT 09F3 00 1199 DEFB 0 ;ZIFFERN 0...F 09F4 01 1200 DEFB 1 09F5 02 1201 DEFB 2 09F6 03 1202 DEFB 3 09F7 04 1203 DEFB 4 09F8 05 1204 DEFB 5 09F9 10 1203 DEFB 10H ;+ 09FA 07 1206 DEFB 7 09FB 08 1207 DEFB 8 09FC 09 1208 DEFB 9 09FD 0E 1209 DEFB 0EH 09FE 0B 1210 DEFB 0BH 09FF 0C 1211 DEFB 0CH 0A00 ÖD 1212 DEFB 0DH 0A01 0A 1213 DEFB 0AH 0A02 0F 1214 DEFB 0FH 0A03 19 1215 DEFB 19H ;ADRESS 0A04 14 1216 DEFB 14H ;DATA 0A05 06 1217 DEFB 6 0A06 11 1218 DEFB 11H ;- 1219 1220 ;----------------------- CODE FUER HEX-ZIFFERN -------- 1221 SEGTAB: 0A07 E7 1222 DEFB 0E7H ; 0 0A08 21 1223 DEFB 21H ; 1 0A09 CD 1224 DEFB 0CDH ; 2 0A0A AD 1225 DEFB 0ADH ; 3 0A0B 2B 1226 DEFB 2BH ; 4 0A0C AE 1227 DEFB 0AEH ; 5 0A0D EE 1228 DEFB 0EEH ; 6 0A0E 25 1229 DEFB 25H ; 7 0A0F EF 1230 DEFB 0EFH ; 8 0A10 AF 1231 DEFB 0AFH ; 9 0A11 6F 1232 DEFB 6FH ; A 0A12 EA 1233 DEFB 0EAH ; B 0A13 C6 1234 DEFB 0C6H ; C 0A14 E9 1235 DEFB 0E9H ; D 0A15 CE 1236 DEFB 0CEH ; E 0A16 4E 1237 DEFB 4EH ; F 1238 1239 ;---------------------- LIED ------------------------ 1240 SONG: 0A17 1202 1241 DEFW 0212H 0A19 2002 1242 DEFW 0220H 0A1B 1002 1243 DEFW 0210H 0A1D 2002 1244 DEFW 0220H 0A1F 1202 1245 DEFW 0212H 0A21 2002 1246 DEFW 0220H 0A23 0D02 1247 DEFW 020DH 0A25 2002 1248 DEFW 0220H 0A27 0902 1249 DEFW 0209H 0A29 2002 1250 DEFW 0220H 0A2B 0D02 1251 DEFW 020DH 0A2D 2002 1252 DEFW 0220H 0A2F 0602 1253 DEFW 0206H 0A31 2006 1254 DEFW 0620H 0A33 1202 1255 DEFW 0212H 0A35 2002 1256 DEFW 0220H 0A37 1002 1257 DEFW 0210H 0A39 2002 1258 DEFW 0220H 0A3B 1202 1259 DEFW 0212H 0A3D 2002 1260 DEFW 0220H 0A3F 0D02 1261 DEFW 020DH 0A41 2002 1262 DEFW 0220H 0A43 0902 1263 DEFW 0209H 0A45 2002 1264 DEFW 0220H 0A47 0D02 1265 DEFW 020DH 0A49 2002 1266 DEFW 0220H 0A4B 0602 1267 DEFW 0206H 0A4D 2006 1268 DEFW 0620H 0A4F 1202 1269 DEFW 0212H 0A51 2002 1270 DEFW 0220H 0A53 1402 1271 DEFW 0214H 0A5S 2002 1272 DEFW 0220H 0A57 1502 1273 DEFW 0215H 0A59 2002 1274 DEFW 0220H 0A5B 1402 1275 DEFW 0214H 0A5D 2002 1276 DEFW 0220H 0A5F 1502 1277 DEFW 0215H 0A61 2002 1278 DEFW 0220H 0A63 1202 1279 DEFW 0212H 0A65 2002 1280 DEFW 0220H 0A67 1402 1281 DEFW 0214H 0A69 2002 1282 DEFW 0220H 0A6B 1202 1283 DEFW 0212H 0A6D 2002 1284 DEFW 0220H 0A6F 1402 1285 DEFW 0214H 0A71 2002 1286 DEFW 0220H 0A73 1002 1287 DEFW 0210H 0A75 2002 1288 DEFW 0220H 0A77 1202 1289 DEFW 0212H 0A79 2002 1290 DEFW 0220H 0A7B 1002 1291 DEFW 0210H 0A7D 2002 1292 DEFW 0220H 0A7F 1202 1293 DEFW 0212H 0A81 2002 1294 DEFW 0220H 0A83 0D02 1295 DEFW 020DH 0A85 2002 1296 DEFW 0220H 0A87 1204 1297 DEFW 0412H 0A89 2006 1298 DEFW 0620H 0A8B 80 1299 DEFB 80H 1300 ;----------------------------------------------------- 1301 1302 COND ROM?=1 1303 ORG 0690H 1304 ENDC 1305 1306 COND ROM?=2 0A90 1307 ORG 0A90H 1308 ENDC 1309 1310 START2: 0A90 22EC22 1311 LD (REGHL),HL 0A93 21460B 1312 LD HL,RETURN 0A96 220223 1313 LD (STEPZEI),HL 1314 STARTST: 0A99 E1 1315 POP HL 0A9A E5 1316 PUSH HL CA9B ED73FA22 1317 LD (REGSP),SP 0A9F 31E422 1318 LD SP,ARBSTA 0AA2 CD560B 1319 CALL REGRET 0AA5 3AFE22 1320 LD A,(AREGST) 0AA8 2F 1321 CPL 1322 DEANZ1: 0AA9 FD21E622 1323 LD IY,REGRAM 1324 DEANZ: 0AAD F5 1325 PUSH AF 0AAE 21CF0B 1326 LD HL,REGSYM 0AB1 85 1327 ADD A,L 0AB2 6F 1328 LD L,A 0AB3 5E 1329 LD E,(HL) 0AB4 23 1330 INC HL 0AB5 56 1331 LD D,(HL) 0AB6 ED53F223 1332 LD (DATLED),DE 0ABA F1 1333 POP AF 0ABB 1600 1334 LD D,0 0ABD 5F 1335 LD E,A 0ABE FD19 1336 ADD IY,DE 0AC0 FD5E00 1337 LD E,(IY+0) 0AC3 FD5601 1338 LD D,(IY+1) 0AC6 ED530423 1339 LD (AREGIN),DE 0ACA 2F 1340 CPL 0ACB 32FE22 1341 LD (AREGST),A 1342 DATLOOP: 0ACE CDB708 1343 CALL ADRSDP 1344 DAK: 0AD1 DD21F223 1345 LD IX,DATLED 0AD5 CD5A08 1346 CALL DAK1 0AD8 FE10 1347 CP 10H 0ADA 3814 1348 JR C,HEXTAS 0ADC 2837 1349 JR Z, POSTAS 0ADE FE11 1350 CP 11H 0AE0 2842 1351 JR Z,NEGTAS 0AE2 FE12 1352 CP 12H 0AE4 2823 1353 JR Z,EXTAS 0AE6 FE19 1354 CP 19H 0AE8 2849 1355 JR Z,ADRTAS 0AEA FEI4 1356 CP 14H 0AEC 285D 1357 JR Z,DATANZ 0AEE 18E1 1358 JR DAK 1359 HEXTAS: 0AF0 210423 1360 LD HL,AREGIN 0AF3 ED6F 1361 RLD 0AF5 23 1362 INC HL 0AF6 EB6F 1363 RLD 0AF8 ED5B0423 1364 LD DE,(AREGIN) 0AFC CDB708 1365 CALL ADRSDP 0AFF 21F423 1366 LD HL,ADRLED 0B02 0604 1367 LD B,4 0B04 CDDC02 1363 CALL SETPT 0B07 18C8 1369 JR DAK 1370 EXTAS: 0B09 ED5B0423 1371 LD DE,(AREGIN) 0B0D FD7300 1372 LD (IY+0),E 0B10 FD7201 1373 LD (IY+1),D 0B13 18B9 1374 JR DATLOOP 1375 POSTAS: 0B15 3AFE22 1376 LD A,(AREGST) 0B18 2F 1377 CPL 0B19 FE16 1378 CP 16H 0B1B 3802 1379 JR C,MPOS 0B1D 3EFE 1380 LD A,0FEH 1381 MPOS: 0B1F 3C 1382 INC A 0B20 3C 1303 INC A 0B21 C3A90A 1384 JP DEANZ1 1385 NEGTAS: 0B24 3AFE22 1386 LD A,(AREGST) 0B27 2F 1387 CPL 0B28 FE00 1388 CP 0 0B2A 2002 1389 JR NZ,MNEG 0B2C 3E18 1390 LD A,18H 1391 MNEG: 0B2E 3D 1392 DEC A 0B2F 3D 1393 DEC A 0B30 C3A90A 1394 JP DEANZ1 1395 ADRTAS: 0B33 31E422 1396 LD SP,ARBSTA 0B36 CD710B 1397 CALL REGLAD 0B39 ED7BFA22 1398 LD SP,(REGSP) 0B3D E1 1399 POP HL 0B3E 2AFC22 1400 LD HL,(REGPC) 0B41 E5 1401 PUSH HL 0B42 2A0223 1402 LD HL,(STEPZEI) 0B45 E9 1403 JP (HL) 1404 RETURN: 0646 2AEC22 1405 LD HL,(REGHL) 0B49 ED45 1406 RETN 1407 DATANZ: 0B4B 2AFC22 1408 LD HL,(REGPC) 0B4E 7E 1409 LD A,(HL) 0B4F EB 1410 EX DE,HL 0B50 CCC308 1411 CALL DADP 0B53 C3CE0A 1412 JP DATLOOP 1413 REGRET: 0B56 31FE22 1414 LD SP,AREGST 0B59 E5 1415 PUSH HL 0B5A 3B 1416 DEC SP 0B5B 3B 1417 DEC SP 0B5C FDE5 1418 PUSH IY 0BEE DDE5 1419 PUSH IX 0B60 D9 1420 EXX 0B61 08 1421 EX AF,AF' 0B62 E5 1422 PUSH HL 0B63 D5 1423 PUSH DE 0B64 C5 1424 PUSH BC 0B65 FS 1425 PUSH AF 0B66 D9 1426 EXX 0B67 08 1427 EX AF,AF' 0B68 3B 1428 DEC SP 0B69 3B 1429 DEC SP 0B6A D5 1430 PUSH DE 0B6B C5 1431 PUSH BC 0B6C F5 1432 PUSH AF 0B6D 31E222 1433 LD SP,ARBST2 0BV0 C9 1434 RET 1435 REGLAD: 0B71 31E622 1436 LD SP,REGRAM 0B74 F1 1437 POP AF 0B75 C1 1438 POP BC 0B76 D1 1439 POP DE 0B77 E1 1440 POP HL 0B78 D9 1441 EXX 0B79 08 1442 EX AF,AF' 0B7A F1 1443 POP AF 0B7B C1 1444 POP BC 0B7C D1 1445 POP DE 0B7D E1 1446 POP HL 0B7E D9 1447 EXX 0B7F 08 1448 EX AF,AF' 0B80 DDE1 1449 POP IX 0B82 FDE1 1450 POP IY 0B84 31E222 1451 LD SP,ARBST2 0B87 C9 1452 RET 1453 0B88 1454 DEFS 8 1455 1456 STEPUP: 0B90 2AF823 1457 LD HL,(USERPC) 0B93 E5 1458 PUSH HL 0B94 21C20B 1459 LD HL,INTROUT 0B97 220023 1460 LD (INTTAF),HL 0B9A 3EE9 1461 LD A,0E9H 0B9C 32FE22 1462 LD (AREGST),A 0B9F 21AS0B 1463 LD HL,CTCPRG 0BA2 220223 1464 LD (STEPZEI),HL 1465 CTCPRG: 0BA5 F5 1466 PUSH AF 0BA6 2AEC22 1467 LD HL,(REGHL) 0BA9 3E00 1468 LD A,INTVEK 0BAB D3EC 1469 OUT (CTC0),A 0BAD 3E85 1470 LD A,85H 0BAF D3EC 1471 OUT (CTC0),A 0BB1 3E04 1472 LD A,04H ;ZK 0BB3 D3EC 1473 OUT (CTC0),A 0BB5 ED5E 1474 IM 2 0BB7 3E23 1475 LD A,HIINT 0BB9 ED47 1476 LD I,A 0BBB C600 1477 ADD A,0 0BBD FB 1478 EI 0BBE 00 1479 NOP 0BBF F1 1480 POP AF 0BC0 ED4D 1481 RETI 1482 INTROUT: 0BC2 F3 1483 DI 0BC3 FS 1484 PUSH AF 0BC4 3E03 1485 LD A,03H 0BC6 D3EC 1486 OUT (CTC0),A 0BC8 F1 1487 POP AF 0BC9 22EC22 1488 LD (REGHL),HL 0BCC C3990A 1489 JP STARTST 1490 1491 REGSYM: 0BCF 4E 1492 DEFB 4EH 0BD0 6F 1493 DEFB 6FH 0BD1 C6 1494 DEFB 0C6H 0BD2 EA 1495 DEFB 0EAH 0BD3 CE 1496 DEFB 0CEH 0BD4 E9 1497 DEFB 0E9H 0BD5 C2 1498 DEFB 0C2H 0BD6 6B 1499 DEFB 06BH 0BD7 5E 1500 DEFB 05EH 0BD8 7F 1501 DEFB 07FH 0BD9 D6 1502 DEFB 0D6H 0BDA FA 1503 DEFB 0FAH 0BDB DE 1504 DEFB 0DEH 0BDC F9 1505 DEFB 0F9H 0BDD D2 1506 DEFB 0D2H 0BDE 7B 1507 DEFB 07BH 0BDF 4A 1508 DEFB 04AH 0BE0 20 1509 DEFB 020H 0BE1 AB 1510 DEFB 0ABH 0BE2 20 1511 DEFB 020H 0BE3 4F 1512 DEFB 04FH 0BE4 AE 1513 DEFB 0AEH 0BE5 C6 1514 DEFB 0C6H 0BE6 4F 1515 DEFB 04FH 1516 1517 COND ROM?=1 1518 DEFB 05BH ;PRUEFSUMMENDIFFERENZ 1519 ENDC 1520 1521 COND ROM?=2 0BC7 23 1522 DEFB 023H ;PRUEFSUMMENDIFFERENZ 1523 ENDC 1524 1525 ;--------------------------------------------------- 1526 COND ROM?=1 1327 ORG 07FFH 1528 DEFB 0A1H ;PRUEFSUMME FUER 1-ROM-VARIANTE 1527 ENDC 1530 1531 COND ROM?=2 J0BFF 1532 ORG 0BFFH 0BFF 71 1533 DEFB 071H ;PRUEFSUMME FUER 2-ROM-VARIANTE 1534 ENDC 1535 1536 1537 ;*************************************************** 1538 ; RAM-ZELLEN 1539 22E2 1540 ORG 22E2H 1541 22E2 1542 ARBST2 DEFS 2 22E4 1543 ARBSTA DEFS 2 22E6 1544 REGRAM DEFS 6 22EC 1545 REGHL DEFS 14 22FA 1546 REGSP DEFS 2 22FC 1547 REGPC DEFS 2 22FE 1548 AREGST DEFS 2 2300 1549 INTTAF DEFS 2 2302 1550 STEPZEI DEFS 2 2304 1551 AREGIN DEFS 2 1552 23EA 1553 ORG 23EAH 1554 1555 SPINI EQU $ ;ANF.WERT FUER SP 23EA 1556 TAPDIS DEFS 1 ;DARZUSTELLENDES ZEICHEN BEI LOAD 23EB 1557 FILNAME DEFS 2 ;NAME DES ZU UEBERTR. PROG. 23ED 1558 STARTADR DEFS 2 23EF 1559 ENDADRH DEFS 2 23F1 156C CHKSUMH DEFS 1 23F2 1561 DATLED DEFS 2 ;DATEN-ANZ. 23F4 1562 ADRLED DEFS 4 ;ADR.-ANZ. 23F8 1563 USERPC DEFS 2 ;ADRESSE 23FA 1564 ATFLAG DEFS 1 ; 0 <-- ADRS, TO TAPE, FROM TAPE 23FB 1565 ATCODE DEFS 1 ; 1-ADRS, 6-TO TAPE, 7-FROM TAPE 23FC 1566 INIFLAG DEFS 1 ;INI-CODE 23FD 1567 FUFEFLAG DEFS 1 23FE 1568 FILE2 DEFS 2 1569 1570 ;***************************************************** 1571 END veb mikroeletronik >karl marx< erfurt stammbetrieb DDR- 5010 Erfurt, Rudolfstraße 47 Telefon: 5 80, Telex: 081 306 elektronik export-import Volkseigener Außenhandelsbetrieb der Deutschen Demokratischen Republik DDR - 1026 Berlin, Alexanderplatz 6 Telefax: BLN 114721 elei, Telefon 2180 Rs 649/85 V/6/15 --vp: zum Übersetzen mit M80/L80: Speichern des Textes ab SOURCE STATEMENS als lc80.mac am Anfang .Z80 ASEG ergänzen bei COND-Abfragen = durch EQ ersetzen bei DEFS Doppelpunkte hinter dem Label einfügen cpm m80 lc80,lc80=lc80 cpm l80 /p:0000,lc80,lc80/n/e/u del lc80.rel ren lc80.com lc80.bin