LC-80-Betriebssystem disassembliert history menue Letztmalig dran rumgefummelt: 02.03.07 08:59:10

  1. HEX-Dump
  2. Disassembliertes OS für LC-80 ;-)   eine Schweinearbeit - das sind immerhin 2048 intelligente HEADEZIMALZAHLEN
  3. Fehlerfrei von Tino Hempel disassembliertes OS für LC-80 ;-)


1. HEX-Dump history menue scroll up

LC-80-OS-Dump Teil I

LC-80-OS-Dump Teil II

LC-80-OS-Dump Teil III

 


2. Disassembliertes und kommentiertes OS-Listing history menue scroll up
Marke Adresse Hex-Code Assembler-Code Kommentar
ORG 0000H ;Adresse MONITOR-Start
SWINGIN: 0000H 06 00 LD B,00H  ;256 steht im Register B
0002H  10 FE JRNZ SWINGIN: ;verringere B um eins und springe relativ auf 0002H wenn nicht ZERO
0004H 18 35 JR START: ;Sprung zum Start 003BH
0008H C3 08 23 JP RST 08: ;Einsprung Adresse 2308H
0010H C3 10 23 JP RST 10: ;Einsprung Adresse 2310H
0018H C3 18 23 JP RST 18: ;Einsprung Adresse 2310H
0020H C3 20 23 JP RST 20: ;Einsprung Adresse 2320H
0028H C3 28 23 JP RST 18: ;Einsprung Adresse 2328H
0030H C3 30 23 JP RST 30: ;Einsprung Adresse 2330H
0038H C3 38 23 JP RST 38: ;Einsprung Adresse 2338H
START:  003BH 3A FC 23 LD A,(23FCH)  ;Einlesen RESTART-Byte 80H
003EH FE 80 CP 80H ;Test A auf 80H
0040H  28 29 JRZ SKIPNMI: ;relativer Sprung zu auf 006BH, wenn ZERO
0042H 21 00 20 LD HL,2000H ;erste RAM-Adresse
0045H 11 01 20 01 LD DE,0120H ;erster Basisbefehl für Increment auf 004CH
0049H 01 FF 0F LD BC,0FFFH ;zweiter Basisbefehl für Increment auf 004CH
004CH 36 FF LD M,FFH ;FFH als Init-Byte
004CH ED B0 LDIR ;FFH auf alle RAM-Zellen (RST38:)
004FH 01 03 00 LD BC,0030H
0052H 11 38 23 LD BC,2338H
0055H 21 11 01 LD HL,0111H
0058H ED B0 LDIR
005AH 01 03 00 LD BC,0003H
005DH 11 40 23 LD DE,2340H
0060H 21 EB 00 LD HL,00EBH
0063H 18 04 JR SKIPNMI: ;Relatives Überspringen NMI zu 0069H
NMI: 0066H C3 40 23 JP RST 38: ;Einsprung Adresse 2340H
SKIPNMI: 0069H ED B0 LDIR
006BH 31 EA 23 LD SP,23EAH ;Überspringen NMI zu 0069H
006EH CD CA 00 CALL PIOINIT: ;CALL  00CAH
0071H CD 99 00 CALL M1: ;CALL  0099H 
0074H 3A FC 23 LD A,(23FCH)  ;Startmonitor schon gelaufen?
0077H FE 80 CP 80H ;Test A auf 80H
0079H C4 9C 02 CANZ M3: ;CALL  029CH wenn nicht ZERO
007CH 21 00 20 LD HL,2000H
007FH 22 F8 23 LD (23F8H),M
0082H AF XOR A
TASTE: 0083H 32 FD 23 LD (23FDH),A                        
0087H DD 21 74 05 LD IX,0574H
008AH AF XOR A
008BH 32 FB 23 LD (23FBH),A
008EH 31 EA 23 LD SP,23EAH
0091H CD 5A 04 CALL M3: ;CALL  045AH 
0094H CD 1B 01 CALL M4: ;CALL  01B1H 
0097H 18 F5 JR TASTE: ;relativer Sprung auf 0083H
0099H 01 04 00 LD BC,0400H ;EQATE auf 0400H
009CH 21 00 20 LD HL,2000H ;erste RAM-Adresse
SYS1: 009FH CD 52 04 CALL M3: ;CALL  0452H 
00A2H 28 01 JR, GO: ;relativer Sprung auf 00A5H
00A4H 76 HALT ;Checkpoint zur systeminternen Fehleranalyse  (sollte nicht erreicht werden!)
GO: 00A5H 23 INC HL ;erhöhe HL um genau eins ;-)
00A6H 10 F7 JRNZ SYS1: ;Sprung zum Start 009FH
00A8H 0D DEC C ;verringere C um genau eins ;-)
00A9H 20 F4 JRNZ SYS1: ;relativer Sprung auf 0083H wenn nicht ZERO
00ABH AF XOR A
00AEH 21 00 00 LD HL,0000H
00AFH 01 04 00 LD BC,0400H
00B2H CD C2 00 CALL SYS2: ;CALL  00C2H 
00B5H 21 00 04 LD HL,0400H
00B8H 01 04 FF LD BC,04FFH
00BBH CD C2 00 CALL SYS2: ;CALL  00C2H 
00BEH BE CP M ;Vergleiche A mit (HL) 
00BFH C8 RZ ;Rücksprung aus Subroutine, wenn nicht ZERO
00C0H 76 HALT ;Checkpoint zur systeminternen Fehleranalyse  (sollte nicht erreicht werden!)
00C1H C9 RET ;Rücksprung aus Subroutine
SYS2: 00C2H 86 ADD M ;Addiere A mit (HL) 
00C3H 23 INC HL ;erhöhe HL um genau eins ;-)
00C4H 10 FC DJNZ SYS2: ;verringere B um eins und springe relativ auf 00C2H wenn nicht ZERO
00C6H 0D DEC C ;verringere C um genau eins ;-)
00C7H 20 F9 JRNZ SYS2: ;relativer Sprung auf 0083H wenn nicht ZERO
00C9H C9 RET ;Rücksprung aus Subroutine
PIOINIT: 00CAH 3E CF LD A,CFH ;PIO-Kanal im Byte-Ausgabe-Modus
00CCH D3 F6 OUT (SYSPIOAC),A ;System-PIO Kanal A Steuerport F6H angesprochen
00CEH 3E FF LD A,FFH ;alle Bits auf "1" gesetzt
00D0H D3 F4 OUT (SYSPIOAD),A ;System-PIO Kanal A Datenport F4H angesprochen
00D2H 3E 00 LD A,00H ;PIO-Kanal im Byte-Ausgabe-Modus
00D4H D3 F6 OUT (SYSPIOAC),A ;System-PIO Kanal A Steuerport F6H angesprochen
00D6H 3E CF LD A,CFH
00D8H D3 F7 OUT (SYSPIOBC),A ;System-PIO Kanal B Steuerport F7H angesprochen
00DAH 3E FF LD A,FFH
00DCH D3 F5 OUT (SYSPIOBD),A ;System-PIO Kanal B Datenport F5H angesprochen
00DEH 3E 01 LD A,01H
00E0H D3 F7 OUT (SYSPIOBC),A ;System-PIO Kanal B Steuerport F7H angesprochen
00E2H 3E CF LD A,CFH
00E4H D3 FB OUT (USERPIOBC),A ;User-PIO Kanal B Steuerport FBH angesprochen
00E6H 3E FF LD A,FFH
00E8H D3 FB OUT (USERPIOBC),A ;User-PIO Kanal B Steuerport FBH angesprochen
00EAH C9 RET
00EBH C3 EE 00 JP REGSAVE:
REGSAVE: 00EEH F5 PUSH AF
00EFH C5 PUSH BC
00F0H 08 EXAF
00F1H D9 EXX
00F2H F5 PUSH AF
00F3H C5 PUSH BC
00F4H D5 PUSH DE
00F5H E5 PUSH HL
00F6H D9 EXX
00F7H DD E5 PUSH IX
00F9H 06 28 LD B,28H
00FBH DD 21 99 05 LD IX,0599H
ANZEIGE: 00FFH CD 83 04 CALL DAK1:              
0102H 10 FB DJNZ ANZEIGE: ;verringere B um eins und springe relativ auf 00FFH wenn nicht ZERO
0104H DD E1 POP IX
0106H D9 EXX
0107H E1 POP HL
0108H D1 POP DE
0109H C1 POP BC
010AH F1 POP AF
010BH D9 EXX
010CH 08 EXAF
010DH C1 POP BC
010EH F1 POP AF
010FH ED 45 RETN
0111H C3 14 01 JP SYS2: ;Einsprung Adresse 0114H
SYS2: 0114H DD 21 9F 05 LD IX,059FH
0118H C3 8A 00 JP SYS3: ;Einsprung Adresse 008AH
011BH FE 10 CP 10H ;Test A auf 10H
011DH 38 24 JRC SYS4: ;relativer Sprung auf 00A5H
011FH 21 FD 23 LD HL,23FDH
0122H CB C6 SET 0, M
0124H D6 10 SUB 10H
0126H FE 08 CP 08H ;Test A auf 08H
0128H 21 AB 05 LD HL,05ABH
012BH DA 87 02 JPC SYS4: ;Sprung auf 0287H wenn CARRY
012EH DD 21 F2 23 LD IX,23F2H
0132H D6 08 SUB 08H
0134H 21 FB 23 LD HL,23FBH
0137H 77 LD M, A
0138H 21 FA 23 LD HL,23FAH             
013BH 36 00 LD M,00H
013DH 21 B5 05 LD HL,05B5H
0140H C3 87 02 JP SYS5: ;Einsprung Adresse 0287H
0143H 4F LD C,A
0144H 21 BF 05 LD HL,05BFH
SYS5: 0147H 3A FB 23 LD A,23FBH
014AH C3 87 02 JP SYS3: ;Einsprung Adresse 0287H
014DH 21 CB 05 LD HL,05CBH
0150H 18 F5 JR SYS5: ;relativer Sprung auf 0147H
0152H 21 D7 05 LD HL,05D7H
0155H 18 F0 JR SYS5: ;relativer Sprung auf 0147H
0157H 21 E3 05 LD HL,05E3H
015AH 18 EB JR SYS5: ;relativer Sprung auf 0147H
015CH CD 27 05 CALL DAK1: ;CALL  0527H 
015FH CD C5 02 CALL DAK1: ;CALL  02C5H 
0162H C9 RET
0163H CD BC 02 CALL DAK1: ;CALL  02BCH 
0166H C9 RET
0167H CD E2 02 CALL DAK1: ;CALL  02E2H 
016AH C9 RET
016BH C3 96 02 JR SKIPNMI: ;Einsprung Adresse 0296H
016EH 2A F8 23 LD HL,(23F8H)
0171H CD 52 04 CALL DAK1: ;CALL  02C5H                 
0174H C2 96 02 JPNZ SKIPNMI: ;Sprung auf 0296H wenn ZERO
0177H CD A8 02 CALL DAK1:
017AH 79 LD A,C
017BH ED 6F RLD
017DH CD C5 02 CALL DAK1: ;CALL  02C5H
0180H C9 RET
0181H 21 F8 23 LD HL,23F8H
0184H CD B4 02 CALL DAK1:
0187H 79 LD A,C
0188H ED 6F RLD
018AH 23 INC HL
018BH ED 6F RLD
018DH CD BC 02 CALL DAK1: ;CALL  02BCH
0190H C9 RET
0191H CD FD 02 CALL DAK1: ;CALL  02FDH
0194H CD B4 02 CALL DAK1: ;CALL  02B4H
0197H 79 LD A, C
0198H ED 6F RLD
019AH 23 INC HL
019BH ED 6F RLD
019DH CD E2 02 CALL DAK1: ;CALL  02E2H
01A0H C9 RET
01A1H C3 96 02 JP SKIPNMI: ;Einsprung Adresse 0296H
01A4H 2A F8 23 LD HL,(23F8H)
01A7H 23 INC HL
01A8H 22 F8 23 LD (23F8H),HL
01ABH CD C5 02 CALL DAK1: ;CALL  05C2H
01AEH C9 RET
01AFH 21 FA 23 LD HL,23FAH
01B2H 34 INC M
01B3H CD 07 03 CALL DAK1: ;CALL  0703H
01B6H 20 04 JRNZ DAK1: ;relativer Sprung auf 01BCH wenn nicht ZERO
01B8H 35 DEC M
01B9H C3 96 02 JP SKIPNMI: ;Einsprung Adresse 0296H
01BCH CD E2 02 CALL DAK1: ;CALL  02E2H
01BFH C9 RET
01C0H C3 96 02 JP SKIPNMI: ;Einsprung Adresse 0296H
01C3H 2A F8 23 LD HL,(23F8H)
01C6H 2B DEC HL
01C7H 22 F8 23 LD (23F8H),HL
01CAH CD C5 02 CALL DAK1: ;CALL  05C2H
01CDH C9 RET
01CEH 21 FA 23 LD HL,23FAH
01D1H 35 DEC M
01D2H CD 07 03 CALL DAK1: ;CALL  0703H
01D5H 20 04 JRNZ DAK1: ;relativer Sprung auf 01DBH wenn nicht ZERO
01D7H 34 INC M
01D8H C3 96 02 JP SKIPNMI: ;Einsprung Adresse 0296H
SYS6: 01DBH CD E2 02 JP SKIPNMI: ;Einsprung Adresse 02E2H
01DEH C9 RET
SYS7: 01DFH C3 96 02 JP SKIPNMI: ;Einsprung Adresse 0296H
01E2H E5 PUSH HL       
01E3H 2A F8 23 LD HL,(23F8H)
01E6H E3 EX (SP),HL
01E7H C9 RET
01E8H ED 53 F8 23 LD (23F8H),DE
01ECH CD C5 02 CALL DAK1: ;CALL  05C2H
01EFH C9 RET
01F0H CD 88 03 CALL DAK1: ;CALL  0388H
01F3H 38 EA JRC SYS7: ;relativer Sprung auf 01DFH wenn nicht CARRY
01F5H 32 F1 23 LD (23F1H),A
01F8H 21 A0 0F LD HL,0FA0H
01FBH CD 70 03 CALL DAK1: ;CALL  0703H
01FEH 21 EB 23 LD HL,23EBH
0201H 01 07 00 LD BC,0007H
0204H CD 1B 04 CALL DAK1: ;CALL  041BH
0207H 21 A0 0F LD HL,0FA0H
020AH CD 74 03 CALL DAK1: ;CALL  0374H
020DH CD 95 03 CALL DAK1: ;CALL  0395H
0210H CD 1B 04 CALL DAK1: ;CALL  041BH
0213H 21 A0 0F LD HL,0FA0H
0216H CD 74 03 CALL DAK1: ;CALL  0374H
0219H ED 5B EF 23 LD DE,(23EFH)
021DH 18 C9 JR SYS7: ;relativer Sprung auf 01DFH
021FH DD 21 A5 05 LD IX,05A5H
0223H C3 8A 00 JP SKIPNMI: ;Einsprung Adresse 008AH
0226H 2A EB 23 LD HL,(23EBH)
0229H 22 FE 23 LD (23FEH),HL
022CH 3E EF LD A, EFH
022EH 32 EA 23 LD (23EAH),A
0231H 3A EA 23 LD A, (23EAH)
0234H D3 F4 OUT (SYSPIOAD),A ;System-PIO Kanal A Datenport F4H angesprochen
0236H 21 E8 03 LD HL,03E8H
SYS8: 0239H CD 00 04 CALL DAK1: ;CALL  0400H
023CH 38 F3 JRC SYS3:
023EH 2B DEC HL
023FH 7C LD A,H
0240H B5 OR L
0241H 20 F6 JRNZ SYS8: ;relativer Sprung auf 0239H wenn nicht ZERO
SYS9: 0243H CD 00 04 CALL DAK1: ;CALL  0400H
0246H 30 FB JRNC SYS9: ;relativer Sprung auf 0243H wenn nicht CARRY
0248H 21 EB 23 LD HL,23EBH
024BH 01 07 00 LD BC,0007H
024EH CD A7 03 CALL DAK1: ;CALL  03A7H
0251H 38 DE JRNZ SYS8:
0253H ED 5B EB 23 LD DE,(23EBH)
0257H CD B7 04 CALL DAK1: ;CALL  04B7H
025AH 06 4B LD B,4BH
SYS10: 025CH CD 83 04 CALL DAK1: ;CALL  0483H
025FH 10 FB DJNZ SYS10: ;verringere B um eins und springe relativ auf 025CH wenn nicht ZERO
0261H 2A FE 23 LD HL,(23FEH)
0264H B7 OR A
0265H ED 52 SBC HL,DE
0267H 3E F7 LD A,F7H
0269H 32 EA 23 LD (23EAH),A
026CH 20 C3 JRNZ SYS9: ;relativer Sprung auf 0243H wenn nicht ZERO
026EH 3E FE LD A, FEH
0270H D3 F4 OUT (SYSPIOAD),A ;System-PIO Kanal A Datenport F4H angesprochen
0272H CD 95 03 CALL DAK1: ;CALL  0395H
0275H 38 A8 JRC SYS8: ;relativer Sprung auf 0239H wenn CARRY
0277H CD A7 03 CALL DAK1: ;CALL  03A7H
027AH 38 A3 JRC SYS8: ;relativer Sprung auf 0239H wenn CARRY
027CH CD 88 03  CALL DAK1: ;CALL  0388H
027FH 21 F1 23 LD HL,23F1H
0282H BE CP M
0283H 20 9A JRNZ SYS8: ;relativer Sprung auf 0243H wenn nicht ZERO
0285H 18 92 JR SYS8: ;relativer Sprung auf 0243H
0287H 5E LD E,M
0288H 23 INC HL
0289H 56 LD D,M
028AH 23 INC HL
028BH D5 PUSH DE
028CH 5F LD E,A
028DH 16 00 LD D,00H
028FH 19 ADD HL,DE
0290H D1 POP DE
0291H 6E LD l,M
0292H 26 00 LD H,00H
0294H 19 ADD HL,DE
0295H E9 JUMP M
0296H 21 FD 23 LD HL,23FDH
0299H CB FE SET 7,M
029BH C9 RET
029CH 3E 80 LD A,80H
029EH 32 FC 23 LD (23FCH),A
02A1H CD EA 04 CALL DAK1: ;CALL  04EAH
02A4H CD 1B 03 CALL DAK1: ;CALL  031BH
02A7H C9 RET
02A8H 3A FD 23 LD A,(23FDH)
02ABH B7 OR A
02ACH C8 RZ ;Rückkehr von Subroutine, wenn ZERO
02ADH 3E 00 LD A,00H
02AFH 77 LD M, A
02B0H 32 FD 23 LD (23FDH),A
02B3H C9 RET
02B4H CD A8 02 CALL DAK1: ;CALL  02A8H
02B7H C8 RZ
02B8H 23 INC HL
02B9H 77 LD M,A
02BAH 2B DEC HL
02BBH C9 RET
02BCH 3E 01 LD A,01H
02BEH 06 04 LD B,04H
02C0H 21 F4 23 LD HL,23F1H
02C3H 18 07 JR SYS11: ;relativer Sprung auf 02CCH
02C5H 3E 02 LD A, 02H
02C7H 06 02 LD B,02H
02C9H 21 F2 23 LD HL,23F2H
SYS11: 02CCH 32 FB 23 LD (23FB),A
02CFH D9 EXX
02D0H ED 5B F8 23 LD DE,(23E8H)
02D4H CD B7 04 CALL DAK1: ;CALL  04B7H
02D7H 1A LD A, DE
02D8H CD C3 04 CALL DAK1: ;CALL  04C3H
02DBH D9 EXX
SYS13: 02DCH CB E6 SET 4,M
02DEH 23 INC HL
02DFH 10 FB DJNZ  ;verringere B um eins und springe relativ auf 02DCH wenn nicht ZERO
02E1H C9 RET
02E2H CD FD 02 CALL DAK1: ;CALL  02FDH
02E2H 5E LD E,M
02E2H 23 INC HL
02E2H 56 LD D, M
02E2H CD B7 04 CALL DAK1: ;CALL  04B7H
02E5H 21 F4 23 LD HL, 23F4H
02E8H 06 04 LD B,04H
02F0H CD DC 02 CALL DAK1: ;CALL  02DCH
02F3H CD 07 03 CALL DAK1: ;CALL  0307H
02F6H 6F LD L,A
02F7H 26 08 LD H,08H
02F9H 22 F2 23 LD (23FEH),HL
02FCH C9 RET
02FDH 3A FA 23 LD A,23FAH
0300H 87 ADD A
0301H 21 EB 23 LD HL,23EBH
0304H 85 ADD L
0305H 6F LD L,A
0306H C9 RET
0307H 3A FB 23 LD A,23FBH
030AH D6 04 SUB 04H
030CH 87 ADD A
030DH 87 ADD A
030EH 11 89 04 LD DE,0489H
0311H 83 ADD E
0312H 5F LD E, A
0313H 3A FA 23 LD A,23FAH
0316H 83 ADD E
0317H 5F LD E, A
0318H 1A LD A,(DE)
0319H B7 OR A
031AH C9 RET
031BH 0E 05 LD C,05H
031DH 21 83 05 LD HL,0583H
0320H E5 PUSH HL
0321H DD 21 7D 05 LD IX,057DH
0325H CD 5E 03 CALL DAK1: ;CALL  035EH
0328H DD E3 EX (SP), IX
032AH 06 14 LD B,14H
SYS15: 032CH CD 83 04 CALL DAK1: ;CALL  0483H
032FH 10 FB DJNZ SYS15: ;verringere B um eins und springe relativ auf 032CH wenn nicht ZERO
0331H CD 67 03 CALL DAK1: ;CALL  0367H
0334H 06 14 LD B,14H
SYS16: 0336H CD 83 04 CALL DAK1: ;CALL  0483H
0339H 10 FB DJNZ SYS16: ;verringere B um eins und springe relativ auf 0336H wenn nicht ZERO
033BH 0D DEC C
033CH 20 E7 JRNZ SYS16: ;relativer Sprung auf 0243H wenn nicht ZERO
033EH 0E 15 LD C,15H
0340H DD 21 89 05 LD IX,0589H
SYS19: 0344H 06 0B LD C,0BH
0346H CD 83 04 CALL DAK1: ;CALL  0483H
0349H 10 FB DJNZ SYS19: ;verringere B um eins und springe relativ auf 0344H wenn nicht ZERO
034BH CB 41 BIT 0, C
034DH 20 05 JRNZ SYS17: ;relativer Sprung auf 0354H wenn nicht ZERO
034FH CD 66 03 CALL DAK1: ;CALL  0366H
0352H 18 03 JR SYS18: ;relativer Sprung auf 0357H
SYS17: 0354H CD 5E 03 CALL DAK1: ;CALL  035EH
SYS18: 0357H DD 2B DEC IX
0359H 0D DEC C
035AH 20 E8 JRNZ SYS19: ;relativer Sprung auf 0344H wenn nicht ZERO
035CH E1 POP HL
035DH C9 RET
035EH D9 EXX
035FH 21 50 00 LD HL, 5000H
0362H CD 70 03 CALL DAK1: ;CALL  0370H
0365H D9 EXX
0366H C9 RET
0367H D9 EXX
0368H 21 A0 00 LD HL, 000AH
036BH CD 74 03 CALL DAK1: ;CALL  0374H
036EH D9 EXX
036FH C9 RET
0370H 0E 20 LD C, 20H
0372H 18 02 JR SYS20: ;relativer Sprung auf 0370H
0374H 0E 0F LD C, 0FH
SYS20: 0376H 29 ADD HL, HL
0377H 11 01 00 LD DE, 0001H
037AH 3E FF LD A, FFH
SYS21: 037CH D3 F5 OUT (SYSPIOBD), A ;System-PIO Kanal B Datenport F5H angesprochen
037EH 41 LD B, C
SYS22: 037FH 10 FE DJNZ SYS22: ;verringere B um eins und springe relativ auf 037FH wenn nicht ZERO
0381H EE 02 XOR 02H
0383H ED 52 SBC HL, DE
0385H 20 F5 JRNZ SYS21: ;relativer Sprung auf 0370H wenn nicht ZERO
0387H C9 RET
0388H CD 95 03 CALL SYS24: ;CALL  0395H
038BH D8 RC
038CH AF XOR A
SYS23: 038DH 86 ADD M
038EH ED A1 CPI
0390H EA 8D 03 JPPE SYS23: ;Einsprung Adresse 038DH, wenn PARYTY EVEN
0393H B7 OR A
0394H C9 RET
SYS24: 0395H 21 ED 23 LD HL, 23EDH
0398H 5E LD E, M
0399H 23 INC HL
039AH 56 LD D, M
039BH 23 INC HL
039CH 4E LD C, M
0390H 23 INC HL
039DH 66 LD H, M
039EH 69 LD L, C
03A0H B7 OR A
03A1H ED 52 SBC HL, DE
03A3H 4D LD C, L
03A4H 44 LD B, H
03A5H EB EXX DE, HL
03A6H C9 RET
03A7H AF XOR A
03A8H 08 EX AF
SYS25: 03A9H CD B4 03 CALL DAK1: ;CALL  03B4H
03ACH 73 LD M, E
03ADH ED A1 CPI
03AFH EA A9 03 JPPE SYS23: ;Einsprung Adresse 03A9H, wenn PARYTY EVEN
03B2H 08 EX AF
03B3H C9 RET
03B4H CD C5 03 CALL SYS27: ;CALL  03C5H
03B7H 16 08 LD D, 08H
SYS26: 03B9H CD C5 03 CALL SYS27: ;CALL  03C5H
03BCH CB 1B RR E
03BEH 15  DEC D
03BFH 20 F8 JRNZ SYS26: ;relativer Sprung auf 03B9H wenn nicht ZERO
03C1H CD C5 03 CALL SYS27: ;CALL  03C5H
03C4H C9 RET
SYS27: 03C5H D9 EXX
03C6H 21 00 00 LD HL, 000AH
SYS28: 03C9H CD 00 04 CALL SYS27: ;CALL  0400H
03CCH 14 INC D
03CDH 15 DEC D
03CEH 20 11 JRNZ SYS30: ;relativer Sprung auf 03E0H wenn nicht ZERO
03D0H 38 06 JRC SYS29: ;relativer Sprung zu auf 03D7H, wenn CARRY
03D1H 2D DEC L
03D2H 2D DEC L
03D3H CB C4 SET 0, H
03D5H 18 F1 JR SYS28: ;relativer Sprung auf 03C9H
SYS29: 03D7H 2C INC L
03D8H CB 44 BIT 0, H
03DAH 28 EC JRZ SYS28: ;relativer Sprung zu auf 03C9H, wenn ZERO
03DCH CB 15 RR L
03DEH D9 EXX
03EFH C9 RET
SYS30: 03E0H 08 EX AF
03E0H 37 SCF
03E0H 08 EX AF
03E0H D9 EXX
03E0H C9 RET
SYS31: 0400H 11 00 00 LD DE, 0000H
SYS32: 0403H DB F5 IN A, (SYSPIOBD) ;System-PIO Kanal B Datenport F5H in A eingelesen
0405H 13 INC DE
0406H 1F RRA
0407H 38 FA JRC SYS32: ;relativer Sprung zu auf 0403H, wenn CARRY
0409H 3E 00 LD A, 00H
040BH D3 F5 OUT (SYSPIOBD), A ;System-PIO Kanal B Datenport F5H angesprochen
SYS33: 040DH DB F5 IN A, (SYSPIOBD) ;System-PIO Kanal B Datenport F5H in A eingelesen
040FH 13 INC DE
0410H 1F RRA
0411H 30 FA JRNC SYS33: ;relativer Sprung zu auf 03C9H, wenn nicht CARRY
0413H 3E 02 LD A, 02H
0415H D3 F5 OUT (SYSPIOBD), A ;System-PIO Kanal B Datenport F5H angesprochen
0417H 7B LD A, E
0418H FE 16 CP 16H
041AH C9   RET
041BH 5E LD E, M
041CH CD 25 04 DEC H
041FH ED A1 CPI
0421H EA 1B 04 JPPE SYS23: ;Einsprung Adresse 041BH, wenn PARYTY EVEN
0424H C9 JPPE nn
0425H 16 08 LD D, 08H
0427H B7 OR A
0428H CD 38 04 CALL SYS35: ;CALL  0438H
SYS34: 042BH CB 1B RR E
042DH CD 38 04 CALL SYS35: ;CALL  0438H
0430H 15 DEC D
0431H 20 F8 JRNZ SYS34: ;relativer Sprung auf 042BH wenn nicht ZERO
0433H 37 SCF
0434H CD 38 04 CALL SYS35: ;CALL  0438H
0437H C9 RET
SYS35: 0438H D9 EXX
0439H 26 00 LD H, 00H
043BH 38 09 JRC SYS36: ;relativer Sprung zu auf 0446H, wenn CARRY
043DH 2E 0C LD L, 0CH
043FH CD 74 03 CALL SYS35: ;CALL  0374H
0442H 2E 03 LD L, 03H
0444H 18 07 JR SYS37: ;relativer Sprung auf 044DHH
SYS36: 0446H 2E 06 LD L, 06H
0448H CD 74 03 CALL SYS35: ;CALL  0374H
044BH 2E 06 LD L, 06H
SYS37: 044DH CD 70 03 CALL SYS35: ;CALL  0370H
0450H D9 EXX
0451H C9 RET
0452H 7E LD A, M
0453H 2F CPL
0454H 77 LD M, A
0455H 7E LD A, M
0456H 2F CPL
0457H 77 LD M, A
0458H BE CP M
0459H C9 RET
045AH DD E5 PUSH IX
045CH 21 FD 23 LD HL, 23FDH
045FH CB 7E BIT 7, M
0461H 28 04 JRZ SYS38: ;relativer Sprung zu auf 0467H, wenn ZERO
0463H DD 21 A5 05 LD IX, 05A5H
SYS38: 0467H 06 06 LD B, 06H
SYS39: 0469H CD 83 04 CALL DAK2: ;CALL  0483H
046CH 30 F9 JRNC SYS38: ;relativer Sprung zu auf 0467H, wenn nicht CARRY
046EH 10 F9 DJNZ SYS39: ;verringere B um eins und springe relativ auf 0469H wenn nicht ZERO
0470H CB BE RES 7, M
0472H DD E1 POP IX
SYS40: 0474H CD 83 04 CALL DAK2: ;CALL  0483H
0477H 38 FB JRC SYS40: ;relativer Sprung zu auf 0474H, wenn CARRY
0479H 21 EF 05 LD HL, 05EFH
SYS45: 047CH 85 ADD M
047DH 6F LD L, A
047EH 30 01 JRNC SYS42: ;relativer Sprung auf 0481H wenn nicht CARRY
0480H 24 7E
0482H C9     


  
 37 08 D9 0E 00 1E FB DD 7E 00 2F D3 F4
0490H 7B D3 F5 06 64 10 FE 06 04 DB F9 57 CB 12 38 02
04A0H 79 08 0C 10 F7 DD 23 CB 03 3E FF D3 F5 38 DB 11
04B0H FA FF DD 19 D9 08 C9 21 F4 23 7B CD D9 04 7A CD
04C0H D9 04 C9 21 F2 23 CD D9 04 C9 E5 D5 21 07 06 E6
04D0H 0F 5F 16 00 19 D1 7E E1 C9 F5 CD CA 04 77 23 F1
04E0H 0F 0F 0F 0F CD CA 04 77 23 C9 FD 21 17 06 FD E5
04F0H DD E1 DD 7E 00 87 D8 FA EE 04 0E 00 CB 77 20 02
0500H CB C9 E6 3F 21 34 05 5F 16 00 19 5E 23 56 DD 23
0510H DD 66 00 3E FF 6A D3 F5 43 00 10 FD A9 2D 20 F6
0520H 25 20 F2 DD 23 18 CB 3A FB 23 FE 01 C8 FE 02 C8
0530H E1 C3 96 02 70 18 6A 1A 64 1B 5E 1D 59 1E 54 20
0540H 4F 22 4B 24 46 26 42 29 3F 2B 3B 2E 38 31 35 33
0550H 32 37 2F 3A 2C 3D 2A 41 27 45 25 49 23 4D 21 52
0560H 1F 57 1D 5C 1B 62 1A 67 18 6E 17 74 16 7B 14 82
0570H 13 8A 12 92 E7 EF 08 C6 C2 00 00 4E E7 00 48 CE
0580H AE E3 00 00 E7 C2 C2 6F 6B 00 00 00 00 00 00 00
0590H 00 4E AE CE 00 4E 00 00 00 00 00 CA 68 21 00 EF
05A0H AD 00 CA AE 48 00 48 E8 48 48 CE 4D 01 00 05 0A
05B0H 00 0F 00 00 00 63 01 00 00 00 00 00 00 04 04 6B
05C0H 01 00 16 03 00 00 00 26 26 00 00 A1 01 00 03 03
05D0H 00 00 00 0E 0E 00 00 C0 01 00 03 03 00 00 00 0E
05E0H 0E 00 00 DF 01 00 03 03 00 00 00 11 47 00 00 12
05F0H 1E 1F 00 00 01 02 03 04 05 10 07 08 09 0E 0B 0C
0600H 0D 0A 0F 19 14 06 11 E7 21 CD AD 2B AE EE 25 EF
0610H AF 6F EA C4 E9 CE 4E 12 02 20 02 10 02 20 02 12
0620H 02 20 02 0D 02 20 02 09 02 20 02 0D 02 20 02 06
0630H 02 20 06 12 02 20 02 10 02 20 02 12 02 20 02 0D
0640H 02 20 02 09 02 20 02 0D 02 20 02 06 02 20 06 12
0650H 02 20 02 14 02 20 02 15 02 20 02 14 02 20 02 15
0660H 02 20 02 12 02 20 02 14 02 20 02 12 02 20 02 14
0670H 02 20 02 10 02 20 02 12 02 20 02 10 02 20 02 12
0680H 02 20 02 0D 02 20 02 12 04 20 06 80 FF FF FF FF
0690H 22 EC 22 21 42 07 22 02 23 E1 E5 ED 73 FA 22 31
06A0H E4 22 CD 56 07 3A FE 22 2F FD 21 E6 22 F5 21 CF
06B0H 07 85 6F 5E 23 56 ED 53 F2 23 F1 16 00 5F FD 19
06C0H FD 5E 00 FD 56 01 ED 53 04 23 2F 32 FE 22 CD B7
06D0H 04 DD 21 F2 23 CD 5A 04 FE 10 38 14 28 37 FE 11
06E0H 28 42 FE 12 28 23 FE 19 28 49 FE 14 28 5D 18 E1
06F0H 21 04 23 ED 6F 23 ED 6F ED 5B 04 23 CD B7 04 21
0700H F4 23 06 04 CD DC 02 18 C8 ED 5B 04 23 FD 73 00
0710H FD 72 01 18 B9 3A FE 22 2F FE 16 38 02 3E FE 3C
0720H 3C C3 A9 06 3A FE 22 2F FE 00 20 02 3E 18 3D 3D
0730H C3 A9 06 31 E4 22 CD 71 07 ED 7B FA 22 E1 2A FC
0740H 22 E5 2A 02 23 E9 2A EC 22 ED 45 2A FC 22 7E EB
0750H CD C3 04 C3 CE 06 31 FE 22 E5 3B 3B FD E5 DD E5
0760H D9 08 E5 D5 C5 F5 D9 08 3B 3B D5 C5 F5 31 E2 22
0770H C9 31 E6 22 F1 C1 D1 E1 D9 08 F1 C1 D1 E1 D9 08
0780H DD E1 FD E1 31 E2 22 C9 FF FF FF FF FF FF FF FF
0790H 2A F8 23 E5 21 C2 07 22 00 23 3E E9 32 FE 22 21
07A0H A5 07 22 02 23 F5 2A EC 22 3E 00 D3 EC 3E 85 D3
07B0H EC 3E 04 D3 EC ED 5E 3E 23 ED 47 C6 00 FB 00 F1
07C0H ED 4D F3 F5 3E 03 D3 EC F1 22 EC 22 C3 99 06 4E
07D0H 6F C6 EA CE E9 C2 6B 5E 7F D6 FA DE F9 D2 7B 4A
07E0H 20 AB 20 4F AE C6 4F 5B FF FF FF FF FF FF FF FF
07F0H FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF A1
INT00: 2300H FF RST 0000H
INT08: 2308H FF RST 0038H
INT10: 2310H FF RST 0038H
INT18: 2318H FF RST 0038H
INT20: 2320H FF RST 0038H
INT28: 2328H FF RST 0038H
INT30: 2330H FF RST 0038H
INT38: 2338H C3
EQUATE
2040H ORG 2040H ;DATEN Adresse
2040H  DEFB 05AH ;erste Zahl
2041H 79 DEFB 079H ;zweite Zahl


zur Hauptseite
© Samuel-von-Pufendorf-Gymnasium Flöha © Frank Rost im Juli 2003

... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-)

„Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“

Diddi Hallervorden, dt. Komiker und Kabarettist