Fix firmware and driver to support drive 2

This commit is contained in:
Terence Boldt 2021-10-07 00:57:30 +01:00
parent ccab3e801f
commit 7e56516acc
9 changed files with 9 additions and 8 deletions

Binary file not shown.

View File

@ -1,4 +1,4 @@
ca65 V2.18 - N/A
ca65 V2.17 - Raspbian 2.17-1
Main file : CommandFirmware.asm
Current file: CommandFirmware.asm

View File

@ -195,6 +195,6 @@ end:
.endrepeat
.byte 0,0 ;0000 blocks = check status
.byte 7 ;bit set(0=status 1=read 2=write) unset(3=format, 4/5=number of volumes, 6=interruptable, 7=removable)
.byte 23 ;bit set(0=status 1=read 2=write) unset(3=format, 4/5=number of volumes, 6=interruptable, 7=removable)
.byte DriverEntry&$00FF ;low byte of entry

View File

@ -1,4 +1,4 @@
ca65 V2.18 - N/A
ca65 V2.17 - Raspbian 2.17-1
Main file : DriveFirmware.asm
Current file: DriveFirmware.asm
@ -199,7 +199,7 @@ Current file: DriveFirmware.asm
00C7FC 1 .endrepeat
00C7FC 1
00C7FC 1 00 00 .byte 0,0 ;0000 blocks = check status
00C7FE 1 07 .byte 7 ;bit set(0=status 1=read 2=write) unset(3=format, 4/5=number of volumes, 6=interruptable, 7=removable)
00C7FE 1 17 .byte 23 ;bit set(0=status 1=read 2=write) unset(3=format, 4/5=number of volumes, 6=interruptable, 7=removable)
00C7FF 1 14 .byte DriverEntry&$00FF ;low byte of entry
00C800 1
00C800 1

View File

@ -1,4 +1,4 @@
ca65 V2.18 - N/A
ca65 V2.17 - Raspbian 2.17-1
Main file : FileAccessFirmware.asm
Current file: FileAccessFirmware.asm

View File

@ -1,4 +1,4 @@
ca65 V2.18 - N/A
ca65 V2.17 - Raspbian 2.17-1
Main file : MenuFirmware.asm
Current file: MenuFirmware.asm

Binary file not shown.

View File

@ -17,6 +17,7 @@ func ReadBlockCommand(drive1 *os.File, drive2 *os.File) {
if !oldFirmware {
driveUnit, err = a2io.ReadByte()
fmt.Printf("Drive unit: %0X\n", driveUnit)
if err != nil {
fmt.Printf("Drive unit not sent, assuming older firmware")
@ -26,7 +27,7 @@ func ReadBlockCommand(drive1 *os.File, drive2 *os.File) {
file := drive1
if driveUnit >= 8 {
if driveUnit >= 128 {
file = drive2
}

View File

@ -24,7 +24,7 @@ func WriteBlockCommand(drive1 *os.File, drive2 *os.File) {
file := drive1
if driveUnit >= 8 {
if driveUnit >= 128 {
file = drive2
}