[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
ProDOS 1.x - no SYS file, do BYE instead of hang, like 2.x
- Subject: ProDOS 1.x - no SYS file, do BYE instead of hang, like 2.x
- From: Steve Nickolas <usotsuki@buric.co>
- Date: Fri, 2 Nov 2012 20:26:13 -0400
- Bytes: 3172
- Cancel-lock: sha1:lWsDg627GhVBwMcCLPBCsBqgOxY=
- Injection-info: mx04.eternal-september.org; posting-host="b1331f5cb4326106a7720f5a86b16b36"; logging-data="25465"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+84a9H5kBfvIHNwxJibrHKPaFYOkU388E="
- Newsgroups: comp.sys.apple2
- Organization: A noiseless patient Spider
- User-agent: Alpine 2.02 (DEB 1266 2009-07-14)
Here's a set of patches that make ProDOS 1.x (from the October 1 version
of 1.0, until 1.9) exit to the Selector like 2.x if they don't find a SYS
file. I tested with 1.8, then emended for other versions.
In all cases, the code looks like this before:
nosys: ldx #$27
@1: lda msgnosys, x
sta $07A8, x
dex
bpl @1
@2: bmi @2 ; ALWAYS
And now it looks like this:
nosys: jsr MLI
.byte $65 ; QUIT
.word exitparm
exitparm: .byte $04
.byte $00
.word $0000
.byte $00
.word $0000
The new code takes the same exact amount of space as the old. At least
2.0.3 does not need this patch anymore; this is the existing behavior of
2.0.3 backported to these older versions of ProDOS.
This is most potentially useful with SELEXTRA (you'll find it on some of
my disks) which is a modified Selector that can also run BIN files.
1.0: On September 1983 version:
Don't bother, the selector isn't present.
On October 1983 version: Patch at $22CD*
08AD A2 27 BD E2 08 9D A8 07 CA 10 F7 30 25
change to 20 00 BF 65 B3 08 04 00 00 00 00 00 00
1.0.1: Same as 1.0, patch at $22E1
1.0.2: Same as 1.0, patch at $22E1
1.1: Same as 1.0, patch at $22CA
1.1.1: Same as 1.0, patch at $2319
1.2: New patch at $2430
0955 A2 27 BD 89 09 9D A8 07 CA 10 F7 30 25
change to 20 00 BF 65 5B 09 04 00 00 00 00 00 00
1.3: Same as 1.2, patch at $2430
1.4: Same as 1.2, patch at $2430
1.5: New patch at $2431
0959 A2 27 BD 8D 09 9D A8 07 CA 10 F7 30 25
change to 20 00 BF 65 5F 09 04 00 00 00 00 00 00
1.6: Same as 1.5, patch at $2431
1.7: Same as 1.5, patch at $2431
1.8: Same as 1.5, patch at $243C
1.9: New patch at $2464
0964 A2 27 BD 98 09 9D A8 07 CA 10 F7 30 25
change to 20 00 BF 65 6A 09 04 00 00 00 00 00 00
* Address assumes file starts at $2000.
WARNING: This isn't tested on all versions of ProDOS!
-uso.