tschak909
Experienced Member
Hi guys,
Am adapting Coleco Adam CP/M to handle larger drives. The sector access method does not change at all, as it can easily address a 1024 byte block as a 32-bit quantity. So in theory I should be able to simply adjust the DPB:
But I've fallen flat on my face.
Method used:
Create 8mb disk image.
```
dd if=/dev/zero of=bigcpm.dsk bs=1024 count=8192
```
use hexedit to fill disk with 0xE5
mount on drive B, and sysgen the resulting disk. (This should always work because sysgen literally just writes the system loaded from an existing disk to the first 12 blocks of a disk, regardless of geometry.)
then hexedit the disk, and edit the DPB for the disk drive, this is at 0xDDB6 in memory, which corresponds to 0xFB6 on disk image:
Original values for a 160K ADAM Disk Image:
08 00 03 07 00 92 00 3f 00 c0 00 10 00 0D 00
SPT = $0008
BSH = $03
BLM = $07
EXM = $00
DSM = $0092
DRM = $003F
AL0 = $C0
AL1 = $00
CKS = $1000
OFF = $0D
I tried to modify to:
80 00 05 1F 01 FF 07 FF 03 FF 00 00 00 0D 00
SPT = $0080
BSH = $05
BLM = $1F
EXM = $01
DSM = $07FF
DRM = $03FF
AL0 = $FF
AL1 = $00
CKS = $0000
OFF = $0D
But this gives me the following screenshot: Any ideas? Anybody still around who can actually help debug this level of hackery?
-Thom
Am adapting Coleco Adam CP/M to handle larger drives. The sector access method does not change at all, as it can easily address a 1024 byte block as a 32-bit quantity. So in theory I should be able to simply adjust the DPB:
But I've fallen flat on my face.
Method used:
Create 8mb disk image.
```
dd if=/dev/zero of=bigcpm.dsk bs=1024 count=8192
```
use hexedit to fill disk with 0xE5
mount on drive B, and sysgen the resulting disk. (This should always work because sysgen literally just writes the system loaded from an existing disk to the first 12 blocks of a disk, regardless of geometry.)
then hexedit the disk, and edit the DPB for the disk drive, this is at 0xDDB6 in memory, which corresponds to 0xFB6 on disk image:
Original values for a 160K ADAM Disk Image:
08 00 03 07 00 92 00 3f 00 c0 00 10 00 0D 00
SPT = $0008
BSH = $03
BLM = $07
EXM = $00
DSM = $0092
DRM = $003F
AL0 = $C0
AL1 = $00
CKS = $1000
OFF = $0D
I tried to modify to:
80 00 05 1F 01 FF 07 FF 03 FF 00 00 00 0D 00
SPT = $0080
BSH = $05
BLM = $1F
EXM = $01
DSM = $07FF
DRM = $03FF
AL0 = $FF
AL1 = $00
CKS = $0000
OFF = $0D
But this gives me the following screenshot: Any ideas? Anybody still around who can actually help debug this level of hackery?
-Thom