Skip to content

Commit ce6459a

Browse files
committed
Wip
1 parent 98ecc83 commit ce6459a

2 files changed

Lines changed: 13 additions & 10 deletions

File tree

E000.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Routine needs parameter to be set:
2525

2626
If the specified drive is not present or turned off, or the disk does not contain valid boot sectors, the routine will return carry bit set.
2727

28-
BOOT_CALL routine at [$F890](#F890) which attempts to load and execute the boot sector from an auto-boot disk in the given drive and device. The BOOT protocol is as follows:
28+
BOOT_CALL routine at [$F890](#F890) attempts to load and execute the boot sector from an auto-boot disk in the given drive and device. The BOOT protocol is as follows:
2929

3030
* Close all open files on boot device.
3131
* Read track 1 sector 0 into TBUFFR ($B00).
@@ -51,14 +51,14 @@ The following examples illustrate the flexibility of this layout. This loads and
5151
<pre>
5252
$00 -> "CBM"
5353
$03 -> $00, $00, $00, $00 // no other BOOT sector
54-
$07 -> "NAME",$00 // message "NAME"
55-
$0C -> $00 // no filename
54+
$07 -> "NAME",$00 // message "NAME" (+ terminator A)
55+
$0C -> $00 // no filename (only terminator B)
5656
$0D -> // code
5757
$A2, $13, // LDX #$13
5858
$A0, $0B, // LDY #$0B
5959
$4C, $A5, $AF // JMP $AFA5 (J_EXECUTE_A_LINE)
60-
$14 -> RUN"PROGRAM" // data (BASIC statement)
61-
$20 -> $00
60+
$14 -> RUN"PROGRAM" // BASIC statement
61+
$20 -> $00 // empty code (C)
6262
</pre>
6363

6464
This results in the message Booting NAME... being displayed and, utilizing a C128 BASIC jump table entry that finds and executes a BASIC statement, loads and runs the BASIC program named "PROGRAM". The same header can be used to load and execute a binary (machine code) program by simply changing RUN to BOOT.
@@ -68,9 +68,9 @@ While the file auto-load feature of the boot header could be used to load binary
6868
<pre>
6969
$00 -> "CBM"
7070
$03 -> $00, $00, $00, $00 // no other BOOT sector
71-
$07 -> $00 // no message
72-
$0C -> $00 // no filename
73-
$0D -> // code
71+
$07 -> $00 // no message (only terminator A)
72+
$08 -> $00 // no filename (only terminator B)
73+
$09 -> // code (C)
7474
$20, $7D, $FF, // JSR $FF7D (JPRIMM)
7575
$0D, $53, $45, $4C, $45, // String start
7676
$43, $54, $20, $4D, $4F,
@@ -92,13 +92,13 @@ $0D -> // code
9292
$EB, $4C, $00, $B0
9393
</pre>
9494

95-
Starting from $0D, the first three bytes stands for
95+
Starting from $09, the first three bytes stands for
9696

9797
<pre>
9898
JSR $FF7D
9999
</pre>
100100

101-
which is a jump to $FF7D (JPRIMM). It prints on screen the
101+
which is a jump to [$FF7D](E000#FF7C) (JPRIMM). It prints on screen the
102102
string of character codes immediately following the JSR.
103103

104104
So, the code above shows this message and waits for a key press:

index.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ All references have been eliminated and are being reviewed to verify that the us
2020

2121
### Memory reference
2222

23+
* [$0000-$00FF - Zero Page](0000) (WIP)
2324
* [$E000-$FFFF - Kernal Rom, Standard Commodore Jump Table](E000) (WIP)
2425

2526
Most references have been eliminated and are being reviewed to verify that the user license complies with the proposed contents. The contents will gradually be reinserted after the necessary checks.
@@ -50,3 +51,5 @@ An article from Marko Mäkelä about Vic2 (and Vic2e) memory access
5051

5152
* [The MOS 6567/6569 video controller (VIC-II) and its application in the Commodore 64](https://ist.uwaterloo.ca/~schepers/MJK/ascii/VIC-Article.txt)
5253
An article from Christian Bauer about Vic2
54+
55+
* [unusedinode](http://unusedino.de/ec64/technical.html) some tech info about C64

0 commit comments

Comments
 (0)