Back to the ACS format.
At the moment I'm implementing the writer to a D64 disk image with a single sequential (USR) file.
To do this, I wrote a little BASIC program that created the file the way I want it to look, and opened up my image viewer to see the bytes written. The first block looks like this:
Then I opened up an image created by my program to see what I need to adjust.
*1* I have an extra 01 01 01 00 at the beginning. Issue one.
(The date format is long. Not a serious issue.)
*2* I'm using 0x0a instead of 0x0d for newlines. Issue two.
Actually those two issues are probably the most important ones.
At the moment I'm implementing the writer to a D64 disk image with a single sequential (USR) file.
To do this, I wrote a little BASIC program that created the file the way I want it to look, and opened up my image viewer to see the bytes written. The first block looks like this:
Code:
00: 11 0b 2d 2d 2d 0d 41 43 53 31 2e 30 20 32 30 31 ..---.ACS1.0 201
10: 37 31 32 30 32 0d 41 32 2d 46 53 32 32 2d 45 20 71202.A2-FS22-E
20: 43 2b 30 20 44 2d 31 20 31 35 34 2e 31 0d 48 53 C+0 D-1 154.1.HS
30: 4c 20 36 30 30 20 31 20 20 44 30 20 30 30 30 30 L 600 1 D0 0000
40: 30 20 53 4c 20 48 55 4c 4c 0d 48 4c 4c 20 36 20 0 SL HULL.HLL 6
50: 20 20 31 20 20 46 31 20 30 30 30 30 30 20 4c 41 1 F1 00000 LA
60: 4e 44 45 52 53 0d 41 4b 43 20 30 20 20 20 32 38 NDERS.AKC 0 28
70: 20 46 31 20 30 30 30 30 30 20 4b 49 4e 45 54 49 F1 00000 KINETI
80: 43 0d 41 43 41 20 30 20 20 20 31 20 20 46 31 20 C.ACA 0 1 F1
90: 30 30 30 30 30 20 41 42 4c 41 54 0d 46 46 46 20 00000 ABLAT.FFF
a0: 31 31 38 20 31 20 20 44 30 20 30 30 30 30 30 20 118 1 D0 00000
b0: 46 55 45 4c 0d 44 50 46 20 36 20 20 20 32 20 20 FUEL.DPF 6 2
c0: 46 31 20 30 30 30 30 30 20 50 4c 41 4e 54 0d 44 F1 00000 PLANT.D
d0: 4a 46 20 31 31 20 20 32 20 20 46 31 20 30 30 30 JF 11 2 F1 000
e0: 30 30 20 4a 55 4d 50 0d 44 4d 46 20 33 20 20 20 00 JUMP.DMF 3
f0: 32 20 20 46 31 20 30 30 30 30 30 20 4d 41 4e 55 2 F1 00000 MANU
Then I opened up an image created by my program to see what I need to adjust.
Code:
00: 11 01 01 01 01 00 2d 2d 2d 20 0a 41 43 53 31 2e ......--- .ACS1.
10: 30 3a 20 46 72 69 20 44 65 63 20 31 20 30 31 3a 0: Fri Dec 1 01:
20: 31 34 3a 31 30 20 47 4d 54 2d 30 36 30 30 20 32 14:10 GMT-0600 2
30: 30 31 37 0a 0a 41 32 2d 46 53 32 32 2d 31 34 20 017..A2-FS22-14
40: 43 2b 30 20 44 2d 31 20 31 35 34 2e 31 0a 48 20 C+0 D-1 154.1.H
50: 36 30 30 20 31 20 20 44 30 20 30 30 30 30 30 20 600 1 D0 00000
60: 53 74 72 65 61 6d 6c 69 6e 65 64 20 48 75 6c 6c Streamlined Hull
70: 2c 20 6c 69 66 74 65 72 73 0a 48 20 36 20 20 20 , lifters.H 6
80: 31 20 20 46 31 20 30 30 30 30 30 20 4c 61 6e 64 1 F1 00000 Land
90: 69 6e 67 20 6c 65 67 73 20 77 69 74 68 20 70 61 ing legs with pa
a0: 64 73 0a 41 20 30 20 20 20 31 20 20 46 31 20 30 ds.A 0 1 F1 0
b0: 30 30 30 30 20 41 56 3d 32 38 2e 20 31 20 4b 69 0000 AV=28. 1 Ki
c0: 6e 65 74 69 63 20 43 68 61 72 67 65 64 0a 41 20 netic Charged.A
d0: 30 20 20 20 31 20 20 46 31 20 30 30 30 30 30 20 0 1 F1 00000
e0: 41 62 6c 61 74 20 43 6f 61 74 69 6e 67 0a 46 20 Ablat Coating.F
f0: 39 39 20 20 31 20 20 44 30 20 30 30 30 30 30 20 99 1 D0 00000
*1* I have an extra 01 01 01 00 at the beginning. Issue one.
(The date format is long. Not a serious issue.)
*2* I'm using 0x0a instead of 0x0d for newlines. Issue two.
Actually those two issues are probably the most important ones.