A2osX/_Docs/LIBBLKDEV.md

1.1 KiB

*** Auto generated by docgen.cmd ***

GetProDOSCatSize

  • Compute space needed for ProDOS Catalog

In :

  • PUSHW = DevSize (in 512b blocks)

Out :

  • X=BlockCount (max 22)
  • Y,A=BufSize (max $4400)

BuildProDOSCat

In :

  • PUSHW = DevSize (in 512b blocks)
  • PUSHW = VolName (PSTR)
  • PUSHW = DstBuf (Zero filled)
  • Blk0 : ProDOS.BootBlk
  • Blk1 : SOS.BootBlk
  • Blk2,3,4,5 : Volume Directory
  • Blk6.... : 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...

TrkW16s

Write a track (16 sectors)

In:

  • PUSHW = Ptr to 16*256 buffer
  • PUSHB = TrackNum * 4 : 0->140+
  • PUSHB = DSSS0000

Out:

  • CC : success
  • CS : A = Error
  • A=0, currently starting/seeking...
    

TrkWNIB

Write a track (NIBBLE)

In:

  • PUSHW = Ptr to NIBBLE buffer (0 ended)
  • PUSHB = TrackNum * 4 : 0->140+
  • PUSHB = DSSS0000

Out:

  • CC : success
  • CS : A = Error
  • A=0, currently starting/seeking...