Robotrontechnik-Forum

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

Robotrontechnik-Forum » Technische Diskussionen » KC85: Wie wurden KCB-Dateien erstellt? » Themenansicht

Autor Thread - Seiten: -1-
000
06.04.2024, 09:20 Uhr
Bert



Beim Zerlegen von TERMINAL.MAC ist mir in der 80-Zeichenroutine eine markante Assemblerfolge aufgefallen:

Quellcode:

jr      c,_pc7

rld
ld      a,c
rrd
        
jr      _pc8

_pc7:

rrd
ld      a,c
rld

_pc8:


Bei den Mnemonics rrd und rld mußte ich erstmal nachschlagen, was die bewirken.

Danach habe ich mein KC85-Software-Verzeichnis durchsucht, wo diese Codefolge noch auftaucht: Typestar, CAOS4.8, ROMWORD, WORD4ROM, WORDPRO, ZAS4Vxx.ZAS
Also alles, was irgendwie einen 80-Zeichenmodus mitbringt.


Außerdem tauchten noch die Programme GALILEI.KCB und U880-4.KCB auf.
Man kann die hier finden:
https://www.iee.et.tu-dresden.de/~kc-club/09/RUBRIK04.HTM

Das sind zwei nette BASIC-Programme, die aber gar keine 80-Zeichenausgabe nutzen.
Auch sonst wird dort nicht mit irgendwelchen Assemblertricks gearbeitet.

Das Codefragment steht im Eingabepuffer vom BASIC drin und zwar zwischen 0370h und 03A8h.

Wie konnte dieses Codefragment an diese Stelle gelangen?

Daher die Frage: Wie wurden früher KCB-Programme erstellt?
Eigentlich ist man doch nur aus dem BASIC raus (BYE) und hat im CAOS mit SAVE gearbeitet, oder?
Gab es noch andere Hilfsprogramme?

Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
06.04.2024, 09:47 Uhr
ralle



DSAVE, wurde sogar in der Funkamateur veröffentlicht. Also es gab einen Batch, um selbststartente Basic-Programme zu erstellen.
--
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
002
07.04.2024, 08:39 Uhr
Bert



Meinst Du evtl. BSAVE?

Ist das der Patch, von dem Du sprichst?:
http://www.robotrontechnik.de/bilder/Upload_Forum/20/9k_kfg.jpg
Dort wird allerdings BASIC modifiziert.

Aber ja, in BSAVE schreibt die Hilfsroutine in den Eingabepuffer:

Quellcode:

    in a,(088h)        ; PIO A
    or 080h        ; BASIC ROM an
    and 0fbh        ; IRM aus
    out (088h)        ; ausgeben

    ld a,(ix+004h)    ; Port 86h
    or 060h        ; USER-ROM, Ebene 3 (BASIC)
    out (086h),a    ; Ausgabe und
    ld (ix+004h),a    ; Sichern

    ld a,089h        ; RUN-TOKEN
    ld (BAS_INPUTBUF),a    ; Eingabepuffer
    jp 0c41fh        ; BASIC-ROM



Das Codefragment aus 000 steht direkt im Anschluß daran, es muß also schon vor BSAVE dort im RAM gestanden haben...

Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
07.04.2024, 08:48 Uhr
ralle



Bsave war mehr für Kassetten. Mich wundert nur, daß Mario sich nicht einklinkt.
--
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
07.04.2024, 11:47 Uhr
maleuma



Sorry, dass ich noch nicht geantwortet habe

Der Eingabepuffer von BASIC wird bei einem BSAVE/DSAVE oder wie auch immer das Programm zum Speichern auf MC-Ebene heißt, komplett mit abgespeichert.
Der Eingabepuffer ist so groß, dass dieser nicht immer komplett benutzt und damit überschrieben wird. Beim Neustart von BASIC wird dieser Eingabepuffer auch nicht mit initialisiert.
Es könnte also sein, dass vor dem Aufruf von BASIC irgendein Programm mit einer 80-Zeichen-Routine im Speicher war und somit als Reste noch im Speicher standen.
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
07.04.2024, 17:46 Uhr
ralle



Heft 10/1990

--
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
006
08.04.2024, 18:44 Uhr
Bert



Vielen Dank für's raussuchen Ralle!

DSAVE (und auch das referenzierte BSAVE von W. Niemann, FA4/1989) nutzen zwar ebenfalls den BASIC-Eingabepuffer, aber mit einer anderen Routine:

Quellcode:

data_ba2e:
    ld hl,00384h        ; Quelle, data_fkey
    ld de,0b901h        ; Ziel, Funktionstastenspeicher
    ld bc,0000dh        ; Anzahl
    ldir

    ld (ix+00dh),0f1h   ; Tastaturcode: Taste F1
    set 0,(ix+008h)     ; Tastencode aktivieren
    ret

data_fkey:
    ; Tastenfolge für F1
    DB "REBASIC"
    DB 0dh
    DB "RUN"
    DB 0dh


Da wird die Taste für F1 mit REBASIC+RUN belegt und der Tastendruck simuliert.

Viele Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
09.04.2024, 06:19 Uhr
ralle



Die Bedienung war so, daß man von 0300h bis Programmende das als MC speichert. Das BSave lag auch unterhalb des BASIC-Speichers.
--
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
008
18.04.2024, 19:46 Uhr
maleuma



BSAVE ist seit CAOS 4.7 fester Bestandteil im ROM. Ist auch im Handbuch beschrieben :-)
Es ist jetzt eine Selbststart-Routine enthalten, welche mit allen CAOS-Versionen zurecht kommt.
--
Mario.
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