Fileaufbau beim Atari


Fileaufbau beim Atari

von Bernd » Do 13. Sep 2007, 15:31
Hallo zusammen,

wer kann mir sagen (schreiben) wie ein File mit mehreren Speicherbereichen unter Dos aufgebaut ist.

Fileanfang ist ja immer $FF $FF - dann folgt die Startdresse zB $00 $40 (für $4000) und die Endadresse zB $40 $40 (für $4040)
anschließend die Daten selber.
Wie muss es dann weitergehen wenn der andere Bereich zB bei $7000 liegt. Kommt dann erneut wieder $FF $FF oder geht es weiter mit der neuen Startadresse $00 $70 weiter?

Danke für die Hilfe,
Bernd

von Bernd » Do 13. Sep 2007, 18:26
Danke an den Schreiber der P.N.,

weiter geht es direkt mit dem nächsten Ziel $00 $70.


Bernd

von HiassofT » Do 13. Sep 2007, 19:13
Bernd hat geschrieben:Danke an den Schreiber der P.N.,

weiter geht es direkt mit dem nächsten Ziel $00 $70.

Es kann aber auch ein $FF, $FF vorher kommen, es funktioniert beides. $FF, $FF muß aber natürlich beim ersten Block ganz zu Beginn kommen.

Wenn die Speicherzellen $2E2/$2E3 beschrieben werden, führt DOS automatisch ein JSR an die Adresse durch (INIT), am Ende wird dan ein Sprung durch $2E0/$2E1 (RUN) gemacht (falls die Adresse beschrieben wurde).

Zusätzlich habe setze ich bei MyPicoDos $2E0/$2E1 auf die Adresse des ersten Blocks, sodaß ein Programm auch dann gestartet wird, wenn keine RUN Adresse angegeben wurde. Die meisten DOSse machen das nicht (wenn ich mich richtig erinnere) sondern springen dann direkt wieder ins DUP zurück.

so long,

Hias

von Bernd » Fr 14. Sep 2007, 16:17
Danke Hias,

was ich vor habe ist recht einfach. Ich möchte ein XEGs ROM-File in eine XEGs Rambank einlesen.
Das File würde dann so aussehen, $FF $FF $00 $D5 $00 $D5 00 ( Page 0 aktivieren) - dann
$00 $80 $FF $9F der erste 8k Datenblock und weiter mit $FF $FF $00 $D5 $00 $D5 01
(nächste Page angewählt) und wieder der gleiche Speicherbereich mit den nächsten Datensatz usw.
Ein Programmteil von mir testet vorher ob die richtigen Schalterstellungen vorliegen.
Als XEX-File könnte ich diesen direkt einlesen.

Raster´s 128k XEG´s Ramplatine ist mir vom Speicher her zu klein. Ich habe ein 512k SRam Modul fertiggestellt.
Bis auf die Funktion "Modul aus" läuft alles. Da möchte ich die Files dann einlesen.

Viele Grüße,
Bernd

von Bernd » Fr 14. Sep 2007, 23:21
Hallo nochmals,

mein in QBasic geschriebenes Programm zur Speicherfütterung läuft. Vor jeder neuen Speicherzuordnung besteht das SIO2SD auf ein $FF $FF. Ohne die Kennung gibt es nur Datensalat.
Die XEX-Datei lese ich über das SIO2SD in das 512k S/XEG SRAM Modul ein. Mit normal Speed braucht man schlappe 7 Minuten, über das von HIAS gepachte OS mit 68000 Baud nur 2 1/2 Minuten - was für ein Unterschied! Das eingeladene Multiprogramm startet als ob es in ein ROM gebrannt wurde.

Jetzt fehlt noch einige Assemblerroutinen, etwas GAL-Code und einen Schaltplan. So schnell hatte ich noch nie eine Hardware aufgebaut.

Viele Grüße,
Bernd

(Warum in QBasic? Es lag mal bei einer DOS Version umsonst dabei, ist nur 255k groß und läuft unter XP auch im Dosenfenster. Daten aufzuspalten oder zusammenzuführen ist damit schnell machbar.)

von HiassofT » Sa 15. Sep 2007, 00:43
Bernd hat geschrieben:Vor jeder neuen Speicherzuordnung besteht das SIO2SD auf ein $FF $FF. Ohne die Kennung gibt es nur Datensalat.

Dann dürfte der eingebaute COM/EXE/XEX File-Loader im SIO2SD Mist bauen. Lade einfach in D1: das mypdos.atr und mache aus Deinem COM/XEX File ein ATR und lade es in D2:. Dann sollte alles einwandfrei funktionieren :-)

so long,

Hias

von Bernd » Sa 15. Sep 2007, 00:57
HiassofT hat geschrieben:
Bernd hat geschrieben:Vor jeder neuen Speicherzuordnung besteht das SIO2SD auf ein $FF $FF. Ohne die Kennung gibt es nur Datensalat.

Dann dürfte der eingebaute COM/EXE/XEX File-Loader im SIO2SD Mist bauen. Lade einfach in D1: das mypdos.atr und mache aus Deinem COM/XEX File ein ATR und lade es in D2:. Dann sollte alles einwandfrei funktionieren :-)

so long,

Hias


Hallo Hias,

werde ich ausprobieren. Es ist halt recht einfach die erstellte Datei direkt übers SIO2SD einzulesen ohne erst ein ATR File damit füttern zu müssen. APE hat ja auch einen Direktloader.

Hier ein Foto des 512k S/XEG´s SRam Modules.

Bild


Jetzt mache ich erst mal für 2 Tage eine Pause.

Viele Grüße,
Bernd