A2osX/.Docs/LIBBLKDEV.md

53 lines
1.1 KiB
Markdown
Raw Normal View History

2017-03-13 15:05:21 +00:00
*** Auto generated by docgen.cmd ***
2017-03-30 09:03:23 +00:00
# GetProDOSCatSize
2018-06-17 07:19:20 +00:00
Compute space needed for ProDOS Catalog
2017-03-30 09:03:23 +00:00
## In :
2018-06-17 07:19:20 +00:00
PUSHW = DevSize (in 512b blocks)
PUSHB = Catalog Size (in blocks)
PUSHB = Options
2017-03-30 09:03:23 +00:00
## Out :
2018-06-17 07:19:20 +00:00
X=BlockCount (max 22)
Y,A=BufSize (max $4400)
2017-03-30 09:03:23 +00:00
# BuildProDOSCat
## In :
2018-06-17 07:19:20 +00:00
PUSHW = DevSize (in 512b blocks)
PUSHB = Catalog Size (in blocks)
PUSHB = Options
PUSHW = VolName (PSTR)
PUSHW = DstBuf (Zero filled)
Blk0 : ProDOS.BootBlk
Blk1 : SOS.BootBlk
Blk2...n : Volume Directory
Blkn+1.. : Volume Bitmap (4096/Blk)
max devSize = 65535 -> max 16 Bitmap Blk
absolute MAX DstBuf size=
7 for Disk II(280blk),3.5(1600),3.5HD(2880)
22 for 32mb Hardisk...
2017-03-30 09:03:23 +00:00
# TrkW16s
Write a track (16 sectors)
2018-06-14 15:31:36 +00:00
**In:**
2018-06-17 07:19:20 +00:00
PUSHW = Ptr to 16*256 buffer
PUSHB = TrackNum * 4 : 0->140+
PUSHB = DSSS0000
2018-06-14 15:31:36 +00:00
**Out:**
2018-06-17 07:19:20 +00:00
CC : success
CS : A = Error
A=0, currently starting/seeking...
2017-03-30 09:03:23 +00:00
# TrkWNIB
Write a track (NIBBLE)
2018-06-14 15:31:36 +00:00
**In:**
2018-06-17 07:19:20 +00:00
PUSHW = Ptr to NIBBLE buffer (0 ended)
PUSHB = TrackNum * 4 : 0->140+
PUSHB = DSSS0000
2018-06-14 15:31:36 +00:00
**Out:**
2018-06-17 07:19:20 +00:00
CC : success
CS : A = Error
A=0, currently starting/seeking...