015
10.07.2009, 20:05 Uhr
Ralph
|
Olli.. der Klaus hat Recht.. das Wait kommt zu spät...
hier mal der erste Teil des Monitors als Quelltext...
Quellcode: | KBoot: di ;Interrupts sperren ld sp,Stack ;StackPointer setzen #1856 im 2 ;Interrupt Mode 2 einstellen jr KBoot1 M0008H: ;UP Eingabekanal normal Tastatur (Zeichen in A) RST8: jp STRST8 ;Einsprungpunkt für RST8 Befehl ;UP Zeichen holen KBoot1: call UPMS30 jr KBoot2 ; M0010H: ;UP Ausgabekanal normal Bildschirm (Zeichen in A) RST10: jp STRST10 ;Einsprungpunkt für RST 10 Befehl ; ;UP Out Ausgabekanal RST10 Befehl... gibt Zeichen an akt. Ausgabekanal aus Outp: push hl ; push af ;Zei sichern jp Outp1 ;zum Verteiler je IOByte... ; M0018H: ;UP Zeichenkettenausgabe (#DF)einschließlich dem Byte wo Bit7=H ;Ausgabe nach #DF folgender Zeichen RST18: jp STRST18 ;Einsprungpunkt für RST 18 Befehl ;Zeichenkette ausgeben ; KBoot2: ld de,CurPos jr KBoot3 ; M0020H: ;Warmstart Betriebssystem RST20: jp STRST20 ;Einsprungpunkt für RST 20 Befehl ; DEFB #0FF,#0FF,#0FF,#0FF,#0FF ;5 Reservebytes ; M0028H: ;1Byte auf Kasette saven ? RST28: jp STRST28 ;Einsprungpunkt für RST 28 Befehl ; OutBWS1:push hl ; push de ; jp OutBWS2 ;weiter zur Routine ; M0030H: ;1Byte von Kasette laden ? RST30: jp STRST30 ;Einsprungpunkt für RST 30 Befehl ; M0033H: ;UP #0033 gibt Zeichen auf dem Bildschirm aus... OutBWS: push af ;Zei sichern jr OutBWS1 ; DEFB #0FF,#0FF ;2 Reservebytes SetBase #0038 ;Programmzähler auf 0038H M0038H: ;UP Breakpoint (OP Code FFH gefunden, oder Fehlereinsprung) RST38: jp STRST38 ;Einsprungpunkt für RST 38 Befehl ; KBoot3: ld a,HI IntVek ;InterruptVektor HighByte ld i,a ;Interruptvektoregister laden ld hl,PIniTab ;IniTabelle CTC PIO1 und PIO2 RamMode #0ad8
|
-- Es geht alles erst richtig los ! Dieser Beitrag wurde am 10.07.2009 um 20:32 Uhr von Ralph editiert. |