Rawdump diskread

Jeff
Posts: 201
Joined: Fri Mar 07, 2014 4:44 am
Location: British Columbia, Canada

Re: Rawdump diskread

Post by Jeff » Wed Jul 08, 2015 2:41 pm

Here are two possible improvements:

Code: Select all

RDBYT    
    BIT    DISK    ; TEST FOR INDEX PULSE
    BPL    RDBYT2
    LDA    DISK+$10
    LSR    A
    BCC    RDBYT
    LDA    DISK+$11 ; READ BYTE
    CLC
    RTS

RDBYT2    
    LDA    #FILLCH
    SEC
    RTS
; I think this might work too, and it is a bit tighter:

Code: Select all

RDBYT    
    BIT    DISK    ; TEST FOR INDEX PULSE
    BPL    RDBYT2
@1
    LDA    DISK+$10
    LSR    A
    BCC    @1
    LDA    DISK+$11 ; READ BYTE
    CLC
    RTS

RDBYT2    
    LDA    #FILLCH
    SEC
    RTS
I too suggest a bump to 2 MHZ, if possible, might be necessary.

/Jeff
Image

Klyball
Posts: 150
Joined: Tue Dec 09, 2014 12:53 am

Re: Rawdump diskread

Post by Klyball » Wed Jul 08, 2015 4:44 pm

I have not bumped up the system to 2mhz yet , ideally the software should work with a stock system so optimizing the code will be the best approach.
Replica 600 Rev D:8K,CEGMON
Replica 610 Rev B: 24k,MPI B-51 with Custom Data separator D-13
510 on the bench/replica 582 backplane/replica 470a /replica 555/original 570B/2 x Shugart 851
Ongoing : 630 ,620 ,510,542c,custom 590,SA1200,592,594,596,598

MK14HAK
Posts: 254
Joined: Wed Mar 16, 2011 1:49 am
Location: New Zealand

Re: Rawdump diskread

Post by MK14HAK » Fri Jul 10, 2015 4:41 am

I think "stock" OSI 8" systems ran at 2MHz ??
600RevB:16K,2MHz,64x32,470,CEGMON
SuperKit:502,540B,542B,CEGMON, 8" and 5" FDDs
Cards:PE IO,6522 D-A-D, AY3-8910,ProgramGraphics,Color,UK101
WIP:Archive/Restore Util,HexDOS,FDD Emulator

MK14HAK
Posts: 254
Joined: Wed Mar 16, 2011 1:49 am
Location: New Zealand

Re: Rawdump diskread

Post by MK14HAK » Sat Jul 11, 2015 1:17 am

I have had it confirmed this is still a problem at 2Mhz with 8" disks.
Anyone tried Jeff's fix?
600RevB:16K,2MHz,64x32,470,CEGMON
SuperKit:502,540B,542B,CEGMON, 8" and 5" FDDs
Cards:PE IO,6522 D-A-D, AY3-8910,ProgramGraphics,Color,UK101
WIP:Archive/Restore Util,HexDOS,FDD Emulator

MK14HAK
Posts: 254
Joined: Wed Mar 16, 2011 1:49 am
Location: New Zealand

Re: Rawdump diskread

Post by MK14HAK » Tue Jul 14, 2015 3:06 am


RAWDUMP program simply dumps the raw contents of each disk track (including formatting bytes) to a file. The format is: images of 5.25" disks are 92,160 bytes long (40*9*256), with the raw image of each track beginning on a 2304-byte (9*256) boundary. Images of 8" disks are 295,680 bytes long (77*15*256), with the raw image of each track beginning on a 3840-byte (15*256) boundary. Raw contents are what you get from the EXAM command in 65D, e.g. EX 4000=01 to get the raw contents of track 1 starting at $4000.

RAWDUMP is a dump of the UART stream from reading one track, including all garbage bytes before the start of the track, between sectors, and after the end of the last sector, etc; padded to 2304 bytes/track for a 5.25" disk, and 3840 bytes/track for 8" disks.
600RevB:16K,2MHz,64x32,470,CEGMON
SuperKit:502,540B,542B,CEGMON, 8" and 5" FDDs
Cards:PE IO,6522 D-A-D, AY3-8910,ProgramGraphics,Color,UK101
WIP:Archive/Restore Util,HexDOS,FDD Emulator

Klyball
Posts: 150
Joined: Tue Dec 09, 2014 12:53 am

Re: Rawdump diskread

Post by Klyball » Sun Sep 06, 2015 7:44 pm

Time to get back to this problem.
I have confirmed using the exam command dumps a good read of the track to memory, so I guess writing a utility that uses the os calls might be the way to go.
I have played around with redoing the read program with limited success. Ideas?
Replica 600 Rev D:8K,CEGMON
Replica 610 Rev B: 24k,MPI B-51 with Custom Data separator D-13
510 on the bench/replica 582 backplane/replica 470a /replica 555/original 570B/2 x Shugart 851
Ongoing : 630 ,620 ,510,542c,custom 590,SA1200,592,594,596,598

Klyball
Posts: 150
Joined: Tue Dec 09, 2014 12:53 am

Re: Rawdump diskread

Post by Klyball » Fri Sep 11, 2015 3:17 am

I have had some success with the disk dump program.
I played with the delay timing here:

Code: Select all

RDTRK4
	LDA DISK+2
	ORA #$80	
	STA	DISK+2	; UNLOAD DISK HEAD
	CLC
	RTS

; DELAY 1.25MS PER LOOP

DELAY	
	LDY	#$C7    ; WAS F8
DELAY1	
	DEY
	BNE	DELAY1
	EOR	$FF,X
	DEX
	BNE	DELAY
	RTS
I actually wanted to cut it in half with 7C but I typed it backwards . but it seems to be dumping eight inch disks just fine so far.
can some one test on 5.25 to see if its will still work there, otherwise it might need to be set as a variable.

Yahoo!!

Time to start dumping disks
Replica 600 Rev D:8K,CEGMON
Replica 610 Rev B: 24k,MPI B-51 with Custom Data separator D-13
510 on the bench/replica 582 backplane/replica 470a /replica 555/original 570B/2 x Shugart 851
Ongoing : 630 ,620 ,510,542c,custom 590,SA1200,592,594,596,598

Jeff
Posts: 201
Joined: Fri Mar 07, 2014 4:44 am
Location: British Columbia, Canada

Re: Rawdump diskread

Post by Jeff » Fri Sep 11, 2015 3:31 am

They say "Timing is everything!"

Way to go Grant!
/Jeff
Image

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest