022
16.02.2008, 21:57 Uhr
Olli
|
Inzw. hab ich die Zeitschleife ja komplett draussen... Wenn ich die einzelnen Buchstaben alle einzelnd in die Adresse lade (was eine Ziemliche Wurst an Code erzeugt) kommt die Ausgabe - also der SIO kann nicht "voll" sein - nur mit OUTI und nem DEFM klappts halt nich....
Der aktuelle (nicht funktionierende Code):
Quellcode: | SIO0 EQU 024H S0AD EQU SIO0 S0AC EQU SIO0+1 S0BD EQU SIO0+2 S0BC EQU SIO0+3 STR DEFM 'Ollis P8000' STRC EQU 11 LD C,S0BD LD HL,STR LD B,STRC PRINT OUTI INC B SIOREA IN A,(S0BC) BIT 2,A JR Z,SIOREA DJNZ PRINT RET
|
Wenn ich mir einen Teil der U880-Firmware anschaue....
Quellcode: | ; LD C,S0BD LD B,ANZHWT LD HL,AUSHWT ATEST OUTI ;Ausgabe der Anfangsaussschrift fuer den Hardwareeigentest INC B P1WAIT IN A,(S0BC) BIT 2,A ;Ist der SIO fertig? JR Z,P1WAIT ;Nein, warten. LD C,2 ZAUS11 LD D,0 ZAUS1 DEC D JR NZ,ZAUS1 ;Realisierung einer Wartezeit DEC C JR NZ,ZAUS11 LD C,S0BD DJNZ ATEST ;alle Zeichen, bis Anzahl gleich 0 [.......] ; Ausschrift fuer die Meldung des Eigentest
AUSHWT DEFW 0D0AH DEFW 0A0AH DEFW 0A0AH DEFW 0A0AH DEFW 0A0AH DEFW 0A0AH DEFW 0A0AH DEFW 0A0AH DEFW 0A0AH DEFW 0A0AH DEFW 0A0AH DEFW 0A0AH DEFB 07H AHWT1 DEFB 0DH DEFB 0AH DEFM 'P8000 Hardwaretest U880 - Version 3.1' DEFB 0AH DEFB 0DH DEFB 20H DEFB 20H ;2* Space wegen Testschrittnummer ANZHWT EQU 68
|
Wenn man die definierten Zeichen durchzaehlt kommt man auf genau 68.... Im Grunde mache ich es eigentlich vom Code her auch nicht anders, oder?
Wiso ist die Startadresse eigentlich so wichtig? Das habe ich noch nicht so recht verstanden. Gebe ich gar keine mit an, bekomme ich beim Start sofort eine Speicherzugriffsfehler vom Betriebssystem(?)... Kann mir das einer erklaeren? -- P8000 adventures: http://pofo.de/blog/?/categories/1-P8000 Dieser Beitrag wurde am 16.02.2008 um 21:59 Uhr von Olli editiert. |