User Tools

Site Tools


oric:hardware:cumana_disk_format
Data on Cumana disk System Track
Byte Use
0 Drive 0, side 1 - Number of tracks (0, 40, 80)
1 Drive 1, side 1
2 Drive 2, side 1
3 Drive 3, side 1
4 Drive 0, side 2
5 Drive 1, side 2
6 Drive 2, side 2
7 Drive 3, side 2
8 DSTEP value
9 - F
10 Sector for next available sector
11 Track for next available sector
12 Sector pointer to first directory
13 Track pointer to first directory
14 - 15 Number of blocks free on disk - 2 bytes
16 - 17 Number of blocks used on disk - 2 bytes
18 - 20 Disk name
21 - on Not used
Data on Cumana disk Directory Track
Byte Use
0 Track - pointer to next directory (0 if no more)
1 Sector - pointer to next directory (0 if no more)
2 Number of files in directory (max = 15)
3 - 8 Filename - null if no file in slot
9 - B Filename extension
C - D Number of sectors taken by file - 2 bytes
E Sector of first block of program
F Track of first block of program
10 Sector of last block of program
11 Track of last block of program
12 P, N, I status
13 - 22 Repeat sequence in 16 byte blocks
etc. Same format for data files, including STORE
Data on Cumana disk File Tracks
Byte Use
First block (program, code, memory created by !SAVE)
0 Track pointer to next block
1 Sector pointer to next block
2 #FF = suitable for !LOAD
3 00
4 - 5 Start address for !LOAD - 2 bytes
6 - 7 End address for !LOAD - 2 bytes
8 T address / program type - 2 bytes:
9 0000 = code no T, 0001 = basic, 0002 = basic AUTO, ABCD = code T address
A Number of bytes in this block. #F5 = full
B Data bytes from here on
Subsequent blocks created by !SAVE
0 Track pointer to next block. Null if no more
1 Sector pointer to next block. Null if no more
2 Number of bytes in this block. #FD = full
3 Data bytes from here on
Blocks created by !OPEN / !PUT
0 Track pointer to next block. Null if no more
1 Sector pointer to next block. Null if no more
2 Data - for single byte data. For $ - length of $ (e.g. 3) followed by
string
3 Data - for single byte data. For $ - string character
4 Data - for single byte data. For $ - string character
5 Data - for single byte data. For $ - string character (last)
6 Data - for single byte data. For $ - length of $ followed by string
7 Data - for single byte data. For $ - string character
8 etc.
Blocks created by !STORE
0 Track pointer to next block. Null if no more
1 Sector pointer to next block. Null if no more
2 - 3 End address + 1 from which data was saved - 2 bytes
4 - 5 Start address from which array was saved - 2 bytes
6 Bit 7 set for % integers
7 #FF for strings
8 Array block copied from memory. For $ - Length of $ followed by $.
oric/hardware/cumana_disk_format.txt · Last modified: 2012/05/28 23:45 by polluks