[net.micro.apple] ProDOS 40 track patches

tim@amdcad.UUCP (Tim Olson) (07/01/86)

	"Beneath Apple ProDOS" by Don Worth and Pieter Lechner includes
the patches needed to convert ProDOS to work with 40-track drives.  However,
these patches are for 1.0.1.  I am listing the code I found around the
patch area in hopes that this code did not change from 1.0.1 to 1.1.1.
Therefore, all you have to do is search for the corresponding code in 1.1.1.
and patch the correct locations.

First, we must patch the driver to recognize 40-track drives:

	BLOAD PRODOS,TSYS,A$2000
	CALL -151
	520D:39
	3D0G
	BSAVE PRODOS,TSYS,A$2000

For those running 1.1.1, the code around the patch area is:

	5200-	A5 46		LDA	$46
	5202-	A6 47		LDX	$47
	5204-	8E 56 FB	STX	$FB56
	5207-	F0 07		BEQ	$5210
	5209-	CA		DEX
	520A-	D0 2A		BNE	$5236
	520C-	C9 18		CMP	#$18	<-- # blocks mod 256
							(change to #$39)
	520E-	B0 26		BCS	$5236
	5210-	A0 05		LDY	#$05
	5212-	0A		ASL
	5213-	2E 56 FB	ROL	$FB56
	5216-	88		DEY
	5217-	D0 F9		BNE	$5212
	5219-	0A		ASL
	521A-	90 02		BCC	$521E
	521C-	09 10		ORA	#$10
	521E-	4A		LSR
	521F-	4A		LSR
	5220-	4A		LSR
	5221-	4A		LSR



Next, we must patch the FILER to create new 40-track diskettes:

	BLOAD FILER,TSYS,A$2000
	CALL -151
	4244:39
	79F4:28
	3D0G
	BSAVE FILER,TSYS,A$2000

Code around the patch areas:

	423A-	A5 AC		LDA	$AC
	423C-	8D 98 42	STA	$4298
	423F-	A5 AA		LDA	$AA
	4241-	D0 06		BNE	$4249
	4243-	A9 18		LDA	#$18	<-- # blocks mod 256
						    (change to #$39)
	4245-	A2 01		LDX	#$01
	4247-	D0 25		BNE	$426E
	4249-	AD 98 42	LDA	$4298
	424C-	09 C0		ORA	#$C0
	424E-	85 70		STA	$70
	4250-	A9 FC		LDA	#$FC

---------------------------------------------------

	79EF-	E6 D1		INC	$D1
	79F1-	A5 D1		LDA	$D1
	79F3-	C9 23		CMP	#$23	<-- # of tracks
						    (change to #$28)
	79F5-	90 8B		BCC	$7982
	79F7-	A9 00		LDA	#$00
	79F9-	48		PHA


	Good luck!

	Tim Olson
	Advanced Micro Devices
	ihnp4!amdcad!tim