mirror of
https://github.com/zellyn/diskii.git
synced 2024-11-21 23:31:47 +00:00
Remove debug prints and add FHELLO FWORLD notes
This commit is contained in:
parent
6c5cbe06c8
commit
bf77cdc029
@ -55,10 +55,33 @@ Beneath Apple ProDOS Table E.1
|
|||||||
| FD | VAR | ProDOS | Applesoft BASIC variables file |
|
| FD | VAR | ProDOS | Applesoft BASIC variables file |
|
||||||
| FE | REL | ProDOS | EDASM relocatable object module file |
|
| FE | REL | ProDOS | EDASM relocatable object module file |
|
||||||
| FF | SYS | ProDOS | System file |
|
| FF | SYS | ProDOS | System file |
|
||||||
** NakedOS FHELLO
|
** NakedOS FHELLO + FWORLD
|
||||||
|
This is the simplest possible example of a FHELLO program that loads
|
||||||
|
another program (FWORLD) at $6000, then jumps to it. The placeholder
|
||||||
|
FWORLD below clears the screen, prints "HELLO WORLD", then spins
|
||||||
|
forever.
|
||||||
|
|
||||||
|
*** FHELLO
|
||||||
20 40 03 JSR NAKEDOS
|
20 40 03 JSR NAKEDOS
|
||||||
6D 01 DC ADC NKRDFILE
|
6D 01 DC ADC NKRDFILE
|
||||||
2C 02 DF BIT ${filename}
|
2C 02 DF BIT ${filename}
|
||||||
2C 00 E0 BIT ${target page}
|
2C 00 60 BIT ${target page}
|
||||||
F8 CLD
|
F8 CLD
|
||||||
4C 00 E0 JMP ${target page}
|
4C 00 60 JMP ${target page}
|
||||||
|
|
||||||
|
*** FWORLD
|
||||||
|
6000-G 20 58 FC JSR HOME
|
||||||
|
6003-H A2 00 LDX #00
|
||||||
|
6005-I BD 13 60 LDA -O,X
|
||||||
|
6008-J F0 06 BEQ -N
|
||||||
|
600A-K 20 ED FD JSR COUT
|
||||||
|
600D-L E8 INX
|
||||||
|
600E-M D0 F5 BNE -I
|
||||||
|
6010-N 4C 10 60 JMP *
|
||||||
|
6013- C8 C5 CC CC CF HELLO
|
||||||
|
6018- AC A0 D7 CF D2 CC C4 00 , WORLD.
|
||||||
|
|
||||||
|
*** diskii commands
|
||||||
|
|
||||||
|
echo -n -e '\x20\x40\x03\x6D\x01\xDC\x2C\x02\xDF\x2C\x00\x60\xF8\x4C\x00\x60' | diskii put -f ./lib/supermon/testdata/chacha20.dsk DF01:FHELLO -
|
||||||
|
echo -n -e '\x20\x58\xFC\xA2\x00\xBD\x13\x60\xF0\x06\x20\xED\xFD\xE8\xD0\xF5\x4C\x10\x60\xC8\xC5\xCC\xCC\xCF\xAC\xA0\xD7\xCF\xD2\xCC\xC4\x00' | diskii put -f ./lib/supermon/testdata/chacha20.dsk DF02:FWORLD -
|
||||||
|
@ -754,7 +754,6 @@ func (o operator) PutFile(fileInfo disk.FileInfo, overwrite bool) (existed bool,
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return false, err
|
return false, err
|
||||||
}
|
}
|
||||||
fmt.Printf("PLUGH: numFile: %v, namedFile: %v, symbol: %v\n", numFile, namedFile, symbol)
|
|
||||||
if symbol != "" {
|
if symbol != "" {
|
||||||
if o.st == nil {
|
if o.st == nil {
|
||||||
return false, fmt.Errorf("cannot use symbolic names on disks without valid symbol tables in files 0x03 and 0x04")
|
return false, fmt.Errorf("cannot use symbolic names on disks without valid symbol tables in files 0x03 and 0x04")
|
||||||
@ -777,7 +776,6 @@ func (o operator) PutFile(fileInfo disk.FileInfo, overwrite bool) (existed bool,
|
|||||||
if err := o.st.AddSymbol(symbol, 0xDF00+uint16(numFile)); err != nil {
|
if err := o.st.AddSymbol(symbol, 0xDF00+uint16(numFile)); err != nil {
|
||||||
return existed, err
|
return existed, err
|
||||||
}
|
}
|
||||||
fmt.Println("PLUGH: about to write symbol table: %v", o.st)
|
|
||||||
if err := o.sm.WriteSymbolTable(o.sd, o.st); err != nil {
|
if err := o.sm.WriteSymbolTable(o.sd, o.st); err != nil {
|
||||||
return existed, err
|
return existed, err
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user