On 9/4/2012 11:59 AM, BLuRry wrote:
On Tuesday, September 4, 2012 6:28:34 AM UTC-5, schmidtd wrote:On 9/4/2012 4:46 AM, Ric wrote:> I try on my //c 255 rom but don't work right. > Should be rewrite serial card subroutine on file SERIAL.DRIVE > The command dos is Apple2VirtualDrive COM1 disk.hdv It won't work on a IIc because it is currently hard-coded to talk to the GS serial hardware. I've got the serial code isolated and bolted the serial backend of ADTPro to it, and now it'll use whatever hardware is supported by that. But I still have to get the driver to attach to ProDOS correctly - I'm reading the Beyond ProDOS book for that now.That's a pretty easy problem to fix!
The 'problem' isn't the comms - I'm pretty solid on that - the problem is cleanly interfacing to the P8 driver model. I expect that a "hello world" message from the driver's entry point that is fed to DEVADR21 (he calls it DEV2S1) should produce that message when doing a CAT,S2,D1 - but it crashes instead.
The initialization code doesn't quite look complete to me, or at least my translation to ca65 didn't come across quite right:
; ADD POINTER TO DRIVER LDA #<DRIVER STA DEV2S1 LDA #>DRIVER STA DEV2S1+1 ; ADD TO DEVICE LIST INC DEVCNT LDY DEVCNT LDA #$20 ; SLOT 2 DRIVE 1 STA DEVLST,Y RTSWhere "DRIVER" is the entry point to the block driver command processor. Terrence had only stored a value at DEV2S1+1, which can't be right...