A2osX/.Docs/LIBBLKDEV.md

98 lines
2.4 KiB
Markdown

*** Auto generated by docgen.cmd ***
## Copyright
Copyright 2015 - 2020, Remy Gibert and the A2osX contributors.
# D2TrkFmt16s
Write a track (16 sectors)
PUSHB DSSS0000
PUSHB VolNum
PUSHB HeadNum (0,1)
PUSHB TrackNum
## RETURN VALUE
CC : success
CS : A = Error
# D2TrkRead16s
Write a track (16 sectors)
PUSHB DSSS0000
PUSHB TrackNum
PUSHW Ptr to 16*256 buffer
## RETURN VALUE
CC : success, A = VolNum
CS : A = Error
# D2TrkWrite16s
Write a track (16 sectors)
PUSHB DSSS0000
PUSHB VolNum
PUSHB TrackNum
PUSHW = Ptr to 16*256 buffer
## RETURN VALUE
CC : success
CS : A = Error
# D2TrkWriteNIB
Write a track (NIBBLE)
## ASM
PUSHB = DSSS0000
PUSHW = Ptr to NIBBLE buffer (0 ended)
## RETURN VALUE
CC : success
CS : A = Error
A=0, currently starting/seeking...
# GetProDOSCatSize
Compute space needed for ProDOS Catalog
## C
int getprodoscatsize (short int options, short int catsize, int devsize );
## ASM
PUSHW = DevSize (in 512b blocks)
PUSHB = Catalog Size (in blocks)
PUSHB = Options
## RETURN VALUE
X=BlockCount (max 22)
Y,A=BufSize (max $4400)
# BuildProDOSCat
## ASM
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...
## License
A2osX is licensed under the GNU General Public License.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
The full A2osX license can be found **[Here](../LICENSE)**.
*** End of Auto generated file ***