a2audit icon indicating copy to clipboard operation
a2audit copied to clipboard

Support for Apple IIe 80-col (1KiB) card appears wrong

Open tomcw opened this issue 1 year ago • 2 comments

Summary: a2audit 1.06 is attempting to do the AUXMEM TEST for this card.

Here's the MAME 0.272 output:

mame apple2ee -aux std80 -w -flop1 audit1.06.dsk

audit1 06_std80-failure(MAME)

I haven't tried with real h/w, as currently my 80-col (1KiB) card isn't working, so can't confirm how correct MAME is.

Some issues when running the AUXMEM TEST with only 1KiB of aux mem:

  • The 1KiB of memory (0x400 bytes) is mirrored throughout aux mem space, at $0000, $0400, $0800, ...
  • COPYTOAUX, copies main mem $6000 to aux mem $6000 - a total of $2F36 bytes - so it overwrites the 1KiB memory many times!
  • SET_ALTZP then JSR will push values to the stack at $1nn, $5nn, ...
  • This will also corrupt the code at aux $61nn, $65nn, ...

It looks like in auxmem.asm, that the following is wrong:

    40                          	;; If we have 64k or less, skip this test.
    41  63b9 ade672             	lda MEMORY
    42  63bc c941               	cmp #65
    43  63be b005               	bcs +

IE. the comment should be "65k or less" and the cmp should be cmp #66.

tomcw avatar Jan 05 '25 18:01 tomcw

I haven't tried with real h/w, as currently my 80-col (1KiB) card isn't working, so can't confirm how correct MAME is.

I fixed my 80-col (1KiB) card, and can confirm that the output from a2audit 1.06 for real h/w is the same as MAME's.

tomcw avatar Jan 19 '25 21:01 tomcw

@zellyn merged PR #17 into the main line for this: 6fdcedfd909b0d3a41dc7b6511d0932c952ecca0 - ie. a2audit 1.07.

It would be good to add some new tests to a2audit for this 80-col (1KiB) card, so I'll leave this issue open.

tomcw avatar Mar 23 '25 18:03 tomcw