ammended COPROC REGS function to use new spec system. FPU registers
display formatted values
removed RegisterStatus() function for now. the ARM status register is
more complex in reality than how I've modelled it (CSPR vs ASPR and and
an ESPR in some models). the information is there but not in a coherent
way. probably requires adding a status register group
used by Activision's Robot Tank and Decathalon
updated method by which ParkerBros is fingerprinted. results are the
same but the code now matches other fingerprint methods
the bugs fixed as a result of testing:
* 6502 stack now is hardcoded to sit between 0x0100 and 0x01ff
- new StackPointer type (instead of a plain Register type) handles
the addressing of the stack through the Address() function
- the VCS memory subsystem already masked the address bus correctly
* status register BRK flag always set regardless of Load() value
- this means that popping the status register from the stack will
reset the BRK flag correctly
ROMVectors test is disabled
build tag of "6507_functional_test" required for new tests (because test
is slow and we don't need to run it on a regular basis)
go-wav, statsview and memviz all indirectly used gopkg.in/yaml.v3 which
I do not want to depend upon
WAV functionality is no longer available for wav writing or reading
(supercharger tapes). will try to reintroduce functionality in the
future
Makefile updated to build with freetype by default.
building without the imguifreetype build tag will cause the application
to use the default proggyclean font
embeds JetBrainMono-Regular.ttf under the OFL-1.1 License
INPTx data mask was wrong. bit 6 is now "driven"
ZeroPageIndexedX and ZeroPageIndexedY did not cause a phatom read as
they should. cycles were accumulated correctly but no phantom read - I
missed this when adding the phantom reads to the CPU
this means that playmode now uses the lazy system. it's only loading
what it needs so as not to use too much memory. the good news is that it
doesn't seem to take any significant CPU time
tracker reset on debugger/emulation reset
piano keys window is now part of the tracker window
updated README indicating new hotkey
introduced PlumbFromDifferentEmulation interface. the ARM emulation
doesn't like being moved between emulation instances so the ARM is
recreated when plumbing a state that originated in a different
emulation. not all mappers need to implement this interface.
I'd already implemented Chris's volume mixing routines from the "Sounding
Off in the Digital Domain". This commit replaces Ron Frie's original
audio implementation with a new and more accuration technique.
altered table showing keypad mappings; reverted back to referring to the keypad peripheral (rather than the keyboard peripheral); updated debugging console HELP output