Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » BSAVE (CAOS 4.8) für KC85/3 » Themenansicht

Autor Thread - Seiten: -1-
000
15.09.2025, 20:42 Uhr
Bert



Hallo Forum,

ich versuche gerade ein (BASIC-)Programm, welches auf dem KC85/4 erstellt wurde auf dem KC85/3 zu starten.
Ich möchte gern den Weg über BSAVE gehen.
Die resultierende .KCB-Datei wird dabei (von mir) vom ROM in den RAM kopiert und auf 0370h angesprungen.
Auf dem 85/4 unter CAOS 4.8 und 4.2 funktioniert das tadellos.
Beim 85/3 rennt das BASIC nach kurzer Zeit in's Nirvana:

Quellcode:

AF=DD42 [.Z....N.] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=0373  FE 7F       CP      7FH
AF=DD3E [..1H1PN.] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=0375  CC 2F E0    CALL    Z,0E02FH
AF=DD3E [..1H1PN.] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=0378  DB 88       IN      A,(88H)
AF=9F3E [..1H1PN.] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=037A  E6 FB       AND     0FBH
AF=9B98 [S..H1...] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=037C  0F          RRCA
AF=CD89 [S...1..C] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=037D  17          RLA
AF=9B89 [S...1..C] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=037E  17          RLA
AF=37A1 [S.1....C] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=037F  0F          RRCA
AF=9B89 [S...1..C] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=0380  D3 88       OUT     (88H),A
AF=9B89 [S...1..C] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01C0   PC=0382  CD 4F C6    CALL    0C64FH
AF=9B89 [S...1..C] BC=0280 DE=C1C1 HL=FF02 IX=01F0 IY=FFFF SP=01BE   PC=C64F  2A 5F 03    LD      HL,(035FH)
AF=9B89 [S...1..C] BC=0280 DE=C1C1 HL=0401 IX=01F0 IY=FFFF SP=01BE   PC=C652  2B          DEC     HL
AF=9B89 [S...1..C] BC=0280 DE=C1C1 HL=0400 IX=01F0 IY=FFFF SP=01BE   PC=C653  22 CF 03    LD      (03CFH),HL
AF=9B89 [S...1..C] BC=0280 DE=C1C1 HL=0400 IX=01F0 IY=FFFF SP=01BE   PC=C656  2A B0 03    LD      HL,(03B0H)
AF=9B89 [S...1..C] BC=0280 DE=C1C1 HL=BFFF IX=01F0 IY=FFFF SP=01BE   PC=C659  22 C4 03    LD      (03C4H),HL
AF=9B89 [S...1..C] BC=0280 DE=C1C1 HL=BFFF IX=01F0 IY=FFFF SP=01BE   PC=C65C  AF          XOR     A
AF=0044 [.Z...P..] BC=0280 DE=C1C1 HL=BFFF IX=01F0 IY=FFFF SP=01BE   PC=C65D  CD DF C8    CALL    0C8DFH
AF=0044 [.Z...P..] BC=0280 DE=C1C1 HL=BFFF IX=01F0 IY=FFFF SP=01BC   PC=C8DF  EB          EX      DE,HL
AF=0044 [.Z...P..] BC=0280 DE=BFFF HL=C1C1 IX=01F0 IY=FFFF SP=01BC   PC=C8E0  2A 5F 03    LD      HL,(035FH)
AF=0044 [.Z...P..] BC=0280 DE=BFFF HL=0401 IX=01F0 IY=FFFF SP=01BC   PC=C8E3  28 0E       JR      Z,0C8F3H
AF=0044 [.Z...P..] BC=0280 DE=BFFF HL=0401 IX=01F0 IY=FFFF SP=01BC   PC=C8F3  2B          DEC     HL
AF=0044 [.Z...P..] BC=0280 DE=BFFF HL=0400 IX=01F0 IY=FFFF SP=01BC   PC=C8F4  22 DD 03    LD      (03DDH),HL
AF=0044 [.Z...P..] BC=0280 DE=BFFF HL=0400 IX=01F0 IY=FFFF SP=01BC   PC=C8F7  EB          EX      DE,HL
AF=0044 [.Z...P..] BC=0280 DE=0400 HL=BFFF IX=01F0 IY=FFFF SP=01BC   PC=C8F8  C9          RET
AF=0044 [.Z...P..] BC=0280 DE=0400 HL=BFFF IX=01F0 IY=FFFF SP=01BE   PC=C660  2A D7 03    LD      HL,(03D7H)
AF=0044 [.Z...P..] BC=0280 DE=0400 HL=04DA IX=01F0 IY=FFFF SP=01BE   PC=C663  22 D9 03    LD      (03D9H),HL
AF=0044 [.Z...P..] BC=0280 DE=0400 HL=04DA IX=01F0 IY=FFFF SP=01BE   PC=C666  22 DB 03    LD      (03DBH),HL
AF=0044 [.Z...P..] BC=0280 DE=0400 HL=04DA IX=01F0 IY=FFFF SP=01BE   PC=C669  C1          POP     BC
AF=0044 [.Z...P..] BC=0385 DE=0400 HL=04DA IX=01F0 IY=FFFF SP=01C0   PC=C66A  2A 56 03    LD      HL,(0356H)
AF=0044 [.Z...P..] BC=0385 DE=0400 HL=BEFF IX=01F0 IY=FFFF SP=01C0   PC=C66D  F9          LD      SP,HL
AF=0044 [.Z...P..] BC=0385 DE=0400 HL=BEFF IX=01F0 IY=FFFF SP=BEFF   PC=C66E  21 B4 03    LD      HL,03B4H
AF=0044 [.Z...P..] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFF   PC=C671  22 B2 03    LD      (03B2H),HL
AF=0044 [.Z...P..] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFF   PC=C674  CD 1D DE    CALL    0DE1DH
AF=0044 [.Z...P..] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFD   PC=DE1D  F5          PUSH    AF
AF=0044 [.Z...P..] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFB   PC=DE1E  3E 01       LD      A,01H
AF=0144 [.Z...P..] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFB   PC=DE20  32 08 03    LD      (0308H),A
AF=0144 [.Z...P..] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFB   PC=DE23  F1          POP     AF
AF=FFFF [SZ1H1PNC] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFD   PC=DE24  C9          RET
AF=FFFF [SZ1H1PNC] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFF   PC=FFFF  FF          RST     38H
AF=FFFF [SZ1H1PNC] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFD   PC=0038  00          NOP
AF=FFFF [SZ1H1PNC] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFD   PC=0039  00          NOP
AF=FFFF [SZ1H1PNC] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFD   PC=003A  00          NOP
AF=FFFF [SZ1H1PNC] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFD   PC=003B  00          NOP
AF=FFFF [SZ1H1PNC] BC=0385 DE=0400 HL=03B4 IX=01F0 IY=FFFF SP=BEFD   PC=003C  00          NOP



Liegt das an mir (bzw. meinem vorherigen umkopieren) oder am BSAVE von CAOS 4.8?
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
15.09.2025, 21:50 Uhr
FL



Hallo Bert,

Beim Speichern mit BSAVE wird der komplette Basic-Arbeitsbereich gesichert.
In deinem Beispiel ist als Speicherende BFFFh eingetragen.
Beim Laden in den KC85/3 geht das Programm davon aus, das auch dort soviel RAM vorhanden ist.

Wenn du diese Adressen patchst sollte es passen:
03C4H und 03B0H = Speicherende
0356H = Speicherende-100h (Stackende)

Gruß
Frank.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
15.09.2025, 22:23 Uhr
Bert



Stimmt, der /3 hat ja im BASIC weniger RAM zur Verfügung.
Danke, jetzt klappt es!
--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
Heute, 07:12 Uhr
ralle



Ich dachte immer, das BSAVE funktioniert wie das alte. Anfangsadresse und Endadresse eintragen. Erstere ist 300h und zweiteres muss gesucht werden. Dann wird das . KCB wesentlich kleiner.
--
Gruß Ralle

Wenn Sie dazu neigen, Bedienungsanleitungen zusammen mit dem Verpackungsmaterial wegzuwerfen, sehen Sie bitte von einem derart drastischen Schritt ab!...
... Nachdem Sie das Gerät eine Weile ausprobiert haben, machen Sie es sich am besten mit dieser Anleitung und ihrem Lieblingsgetränk ein oder zwei Stunden lang in Ihrem Sessel bequem. Dieser Zeitaufwand wird Sie dann später belohnen...

aus KENWOOD-Bedienungsanleitung TM-D700
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
Heute, 09:14 Uhr
Bert



Was auch geht: Bei der Frage nach 'MEMORY END ?' eine entsprechend passende Zahl anzugeben.

Quellcode:

16k RAM = 16383 = 12087 Bytes frei
32k RAM = 32767 = 31470 Bytes frei (M022)
48k RAM = 49151 = 47854 Bytes frei (M011)



@ralle: Das Problem lag bzw. liegt nicht (direkt) am BSAVE, sonder daran mit wieviel Speicher das BASIC initialisiert wurde. Wenn auf dem Zielsystem weniger Speicher vorhanden ist, funktioniert es nicht mehr, weil der Stackpointer dann in's Nirvana zeigt:

Quellcode:

AF=0044 [.Z...P..] BC=0385 DE=0400 HL=04DA SP=01C0   PC=C66A  2A 56 03    LD      HL,(0356H)
AF=0044 [.Z...P..] BC=0385 DE=0400 HL=BEFF SP=01C0   PC=C66D  F9          LD      SP,HL
AF=0044 [.Z...P..] BC=0385 DE=0400 HL=BEFF SP=BEFF   PC=C66E  21 B4 03    LD      HL,03B4H


--
Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
Heute, 16:37 Uhr
ralle



Dann muss ich das mal Probieren.
--
Gruß Ralle

Wenn Sie dazu neigen, Bedienungsanleitungen zusammen mit dem Verpackungsmaterial wegzuwerfen, sehen Sie bitte von einem derart drastischen Schritt ab!...
... Nachdem Sie das Gerät eine Weile ausprobiert haben, machen Sie es sich am besten mit dieser Anleitung und ihrem Lieblingsgetränk ein oder zwei Stunden lang in Ihrem Sessel bequem. Dieser Zeitaufwand wird Sie dann später belohnen...

aus KENWOOD-Bedienungsanleitung TM-D700
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek