[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: KEGS' Bug Discover



> While reviewing this case, I decided to look into and fix some other
> bank-crossing bugs in KEGS, all relatively minor.  Addressing modes like
> direct page and stack can never leave bank 0 (they should wrap around
> from 0x00ffff to 0x000000 or 0x000000 to 0x00ffff) and that also wasn't
> always handled correctly.  I also finally answered a pending comment in
> the code as to how JSR (abs,x) really should work (it uses K as the bank
> register, and the abs + x and abs+x+1 must stay in that bank), and fixed
> the code.  THe 65816 has a lot of weird cases around bank crossings
> making it easy to not get all the cases right unless it's reviewed
> carefully.

Thank Kent,

I'll download the new version right away.  The previous version did
not work with my GTE engine which depends heavily on JSR (abs,x) using
the K bank as well as JML (abs) working correctly with regard to the
various R/W flags in $E0C068.

I suspected the emulator was failing on code like that, but have been
too busy over the holidays to test my theory.  If I still find a
failure, I'll look for the cause and post it if you're open to
receiving a bug report.

Thanks for all your hard work,
-Lucas S.