Robotrontechnik-Forum

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

Robotrontechnik-Forum » Technische Diskussionen » KCC Format (nicht TAPE) » Themenansicht

Autor Thread - Seiten: -1-
000
08.06.2024, 16:46 Uhr
PIC18F2550

Avatar von PIC18F2550

Hallo,

so sollte der doch eigendlich aussehen.

Quellcode:

;  0 : 44 4D 41 2D 54 45   Name           DB        "DMA-TEST"
;  6 : 53 54            
;  8 : 4B 43 43            Dateityp       DB        "KCC"
;  B : 00 00 00 00 00      Hersteller     DB        00h, 00h, 00h, 00h, 00h
; 10 : 02                  AnzalArgumente DB        02h
; 11 : 00 40               Ladeadresse    DW        PSTART
; 13 : 94 41               Endadresse     DW        PEND + 1
; 15 : 00 00               StartAdresse   DW        PRUN
; 17 :                     Datenbytes        
; 7F :                             ORG    127
; 7F :                            
; 7F : 00 00               CRC            DW        0000h optional            



leider gibt es auch KCC Dateien die mit sowas anfangen.




gibt es eine Markante Stelle in der KCC Datei an hand man dieser feststellen kann ob da OP-Code anstelle des Namens enthalten ist?

Danke.
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
08.06.2024, 21:12 Uhr
Bert



Eigentlich kannst Du nur prüfen, ob die Bytes bei Namen und Dateityp gültige ASCII-Zeichen ($20 bis $7E) enthalten. Oder Du prüfst auf Großbuchstaben ($41 bis $5E).

Entstanden sind solche Artefakte, weil die genutzte SAVE-Routine den Kassettenpuffer ($B700 bis $B77F) vor Verwendung nicht richtig gelöscht bzw. initialisiert hat.

Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
08.06.2024, 21:23 Uhr
PIC18F2550

Avatar von PIC18F2550

Ok dann werden diese nicht benötigt.
Danke.
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
003
09.06.2024, 09:26 Uhr
Bert



Genau. Wirklich relevant sind nur die zwei (oder drei) Adressen.
Der Name ist (zumindest bisher) nur schmückendes Beiwerk.

Ein Ausnahme ist z.B. die Laderoutine von BASIC (CLOAD).

Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
004
09.06.2024, 10:04 Uhr
Hojoe



Eigentlich hat Bert schon alles Wesentliche geschrieben. Als zusätzliche Illustration:



Wie zu sehen ist, enthält der 1. Block die gleichen Daten wie der letzte Block minus die Adressdaten. Nach dem Laden enthält der Block Puffer den letzten Block der Datei und beim Speichern wurden nur die Adressdaten im Puffer eingetragen und dann raus geschrieben.

Holger
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
005
09.06.2024, 10:34 Uhr
PIC18F2550

Avatar von PIC18F2550

Ok Danke für die Info.
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
006
11.06.2024, 12:22 Uhr
PIC18F2550

Avatar von PIC18F2550

Da scheint noch allerhand durcheinander zu sein.



Wie sied der Header für .KCB und .SSS aus?

Und gibt es noch mehr Endungen als .KCC, .KCB und .SSS?
Die .BIN lassen wir mal außen vor.
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
007
11.06.2024, 13:51 Uhr
Bert




Zitat:
PIC18F2550 schrieb
Wie sied der Header für .KCB und .SSS aus?


.KCB entspricht .KCC


Zitat:

Und gibt es noch mehr Endungen als .KCC, .KCB und .SSS?


Ja, gibt es.
Da hilft ein Blick in's aktuelle CAOS-Handbuch, Kapitel 3.8.3 Dateitypen.

Grüße,
Bert
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
008
11.06.2024, 14:34 Uhr
PIC18F2550

Avatar von PIC18F2550

Könnte es sein das KCB und SSS den selben aufbau im 128byte Vorblock haben?
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
009
11.06.2024, 16:10 Uhr
Bert



Die SSS-Dateien, die ich auf die Schnelle auf meiner Platte gefunden habe, scheinen gar keinen Vorblock zu haben. Es kann aber sein, das der vom Emulator beim Laden dazugedichtet wird.

Ansonsten, wie ich schon schrieb: KCB sind KCC-Dateien
Der Unterschied zu SSS-Dateien ist: bei KCB-Dateien liegen die Speicheradresse schon fest und die ganzen BASIC(-System)-Variablen werden mit gespeichert (bzw. geladen).
Die Ladeadresse bei KCB-Dateien ist (immer?) die 0300h:
https://www.iee.et.tu-dresden.de/~kc-club/09/RUBRIK03.HTM

Damit funktionieren die KCB-Dateien nur mit dem ROM-BASIC im KC85 3/4/5.

Die SSS-Dateien dagegen lassen sich auch auf dem Robotron-KC oder (theoretisch) mit einem RAM-BASIC laden.

Grüße,
Bert

P.S.: Noch ein Nachtrag zu den BASIC-Arbeitszellen. Da gibt es bei robbi eine prima Übersicht:
https://www.sax.de/~zander/z9001/baszell.pdf

Dieser Beitrag wurde am 11.06.2024 um 16:12 Uhr von Bert editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
010
11.06.2024, 17:06 Uhr
PIC18F2550

Avatar von PIC18F2550

Ich denke ich muss den vorblock prüfen ob das so stimmen kann.
https://www.iee.et.tu-dresden.de/~kc-club/09/0901.HTML

Danke.
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
011
11.06.2024, 18:47 Uhr
susowa



KCC- und BASIC- (SSS) Blöcke sind unterschiedlich aufgebaut:

Magnetband (130 Byte):
Bei BASIC-Dateien gilt ein anderer Aufbau: Hier enthält der erste Block eine
1-Byte-Block-Nummer, eine 3-Byte-Typ- und eine 8-Byte-Namensinformation. Ab
dem 13. Byte des ersten Blockes sind Daten enthalten. Letztes Byte ist die
Prüfsumme über die Daten. Bei weiteren Blöcken wird die Blocknummer hochgezählt,
der letzte Block erhält die Blocknummer FF.

Diskette (128 Byte):
Bei BASIC-Dateien gilt ein anderer Aufbau: Hier enthält der erste Block eine 3-Byte-Typ- und eine 8-Byte-Namensinformation. Ab dem 13. Byte des ersten Blockes sind Daten enthalten. Weitere Blöcke enthalten nur Daten.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
012
12.06.2024, 12:25 Uhr
PIC18F2550

Avatar von PIC18F2550



KCC Dateien enthalten im 1. Block Parameteranzahl, Ladeadresse, Länge, und Startadresse.
KCB Dateien enthalten im 1. Block Parameteranzahl, Ladeadresse, Länge, und Startadresse.

Problematisch sind die SSS Dateien.
Sie enthalten ab den 1. Block Daten.
Die Länge lässt sich nur über die Dateigröße ermitteln was auch nicht so Zielführend ist.

z.B.
>>KC-Club.Download.KC-Softwarearchiv.Rubrik 03
DATEINAME | StAdr | EndAdr |
17+4 .SSS | 0401 | 06B6 | Spiel 17+4 (textbasiert)

Die Dateigröße ist 0300h der benötigte Datenblock nur 02B5h rest ist überhang.
Ich denke das beim normalen Kassettenladen auch der Überhang in den Puffer geladen wird.
Ob es zu gefährlichen Datenüberschreibungen kommen kan? Ich weis es nicht.
--
42 ist die Antwort auf die "Frage nach dem Leben, dem Universum und dem ganzen Rest"
Aktuelle Projektdokumentationen

Dieser Beitrag wurde am 12.06.2024 um 12:27 Uhr von PIC18F2550 editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
013
12.06.2024, 13:04 Uhr
ralle



Deswegen musste man mit Display das Ende des Programms suchen. Zumindest bei BSAVE.
--
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
014
12.06.2024, 19:08 Uhr
susowa




Zitat:
susowa schrieb
Diskette (128 Byte):
Bei BASIC-Dateien gilt ein anderer Aufbau: Hier enthält der erste Block eine 3-Byte-Typ- und eine 8-Byte-Namensinformation. Ab dem 13. Byte des ersten Blockes sind Daten enthalten. Weitere Blöcke enthalten nur Daten.



Das war falsch.

Da ist es besser beschrieben:

http://kc85.datahammer.de/KC85FileFormats.txt
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
015
12.06.2024, 20:31 Uhr
ralle



Das zum Thema BSAVE:



Ich schaue mal, wegen DSAVE.

Ich dachte, das hab ich irgendwo. aber hier noch eine Möglichkeit:


--
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

Dieser Beitrag wurde am 12.06.2024 um 21:01 Uhr von ralle editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
016
12.06.2024, 21:00 Uhr
maleuma



BASIC-Dateien *.SSS werden byteweise gelesen und geschrieben. Da gibt es keinen Vorblock.
Die ersten beiden Bytes sind die Anzahl der Datenbytes, danach folgen die Daten.
Beim Kassettenformat kommt vorher noch der Dateityp mit 3 Byte SSS gefolgt von 8 Byte Dateiname. Beim Diskettenformat oder auch USB werden die 11 Byte nicht in die Datei geschrieben, dort wird das als Dateiname interpretiert.
Das gleiche gilt übrigens auch für BASIC-Datenfelder *.TTT und BASIC-Listings *.UUU
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
017
12.06.2024, 21:01 Uhr
maleuma



Da die Daten byteweise aus dem Kassettenpuffer entnommen werden, gibt es auch kein Problem mit Überschreiben von Daten
--
Mario.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
018
12.06.2024, 21:08 Uhr
ralle



So, jetzt ist alles zusammen, um selbststartende Programme zu erzeugen:


--
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
019
18.06.2024, 13:49 Uhr
Bert



Tief in der JKCEMU-Hilfe hab ich noch folgendes gefunden:


Viele Grüße,
Bert
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