Schlagwort-Archive: Atari Bootsektor

Atari Boot Sektor, Update….

Vor einigen Monaten glaubte ich, ich habe es im Griff. Boot Programm geschrieben und siehe da, es lief anstandslos. Muss wohl ein Zufall gewesen sein.

Denn, es ist wohl nicht so einfach wie ich dachte! Internet durchstöbert und gesehen, ich bin nicht alleine. Um es nun kurz zu machen, dieser Artikel half:

http://wiki.strotmann.de/wiki/Wiki.jsp?page=Boot%20from%20Cassette

Ist zwar für das Booten von Kassette gedacht, funktioniert aber genauso für die Disk. Der in meinem Artikel veröffentlichte Code, läuft wohl nur bedingt, warum weis ich noch nicht:

https://retrozock.com/2012/05/21/boot-sektoren/

So geht’s:

Bildschirmfoto 2013-05-30 um 18.54.12

Hier sagen wir dem OS wieviele Sektoren zu lesen sind, wohin der Code ins RAM geschrieben wird und wohin nach dem Booten gesprungen wird – zur INIT Routine – Es folgt der BOOT- Continious Code, in diesem Fall wird einfach zum Start unseres Programms, hier tatsächlich die Fortsetzung des Boot- Prozesses – nämlich meine eigene Laderoutine. Zeichensatz, Titelbild und Hauptprogramm werden in den Speicher geladen!

 

 

 

Entscheidend ist die INIT- Routine, hier einfach durch RTS abgeschlossen. Die wird nach dem lesen der ersten 3 Sektoren aufgerufen. Danach folgt der BOOT Continious Code, in dem Fall der Beginn meines Programms....

Entscheidend ist die INIT- Routine, hier einfach durch RTS abgeschlossen. Die wird nach dem lesen der ersten 3 Sektoren aufgerufen. Danach folgt der BOOT Continious Code, in dem Fall der Beginn meines Programms….

Advertisements

Boot Sektoren……

…..speziell auf dem Atari sind so eine Sache. Gerade dann, wenn man sich mit so etwas das letzte Mal vor ca. 20 Jahren beschäftigt hat.

So funktionier’s: Man schreibe das nachstehende Programm auf Sektor #1 einer Diskette und führe einen Kaltstart aus. Was wird wohl passieren? Alles ganz einfach, nicht wahr?

*-------------------------------------
* BOOT SEKTOR
* DER NACHSTEHENDE CODE DEFFINIERT
* DAS O.G.

* ES WIRD 1 SEKTOR NACH $0600 IN'S
* RAM GELADEN UND AB $0600+6
* AUSGEFUEHRT.
        ORG $0600
BOOT    DFB 0      IMMER 0!
        DFB 1      SOVIELE SEKTOREN LESEN

        DFW BOOT   DAHIN INS RAM SCHREIBEN
        DFW ST     DORT AUSFUEHREN

ST      LDA #255
        STA 712
        JMP ST
* FUER'S PROGRAMM OHNE BELANG, ABER
* INFORMATIV
        ASC "MULTIBOOT 21.5.2012"