renamed references to illegal accesses to faults. the new name is
simpler and more flexible
faults locking was already independent of source lock
single MemoryFault() function in coproc developer interface
simplified faults window
curated package predated the standard errors package introduced in
go1.13
the standard package does a better job of what curated attempted to do
the change of package also gave me a opportunity to clean up the error
messages a little bit
the latency of "Flash" in the UnoCart is different to the Flash in the
Harmony
future versions will rename the internal use of Flash and SRAM to slow
and fast memory, or something like that. The labels can then be applied
depending on the cartridge type
clearer policy for setting of refresh rate
FPS display in playmode displays icon to indicate no VSYNC. removed
"atari safe" message (nice idea but requires work)
audioEnabled preference values renamed to audioMute
this is to facilitate the differentiation of muting and disabling
AtariVox output. muting of AtariVox is a subset of audio mute.
set defaults for revisions, rewind and ARM tabs of the prefs window (in
addition to the CRT tab). set defaults button labelled appropriately
fixes some race conditions caused by pre/post hooks on prefs values -
prefs values are generally goroutine safe, except when pre/post hook is
defined
*.windowSize and *.windowPos preference values replaced with single *.windowGeometry value
prefs package type now have a pre-hook (called before new value is set).
existing hook/callback clarified to be a post-hook (called after new
value is set).
prefs generic type now handles prefs.GenericGetValueUndefined to
indicate that the value cannot be ascertained at this time (the prefs
package should use the most recent previous value instead)
altered slightly how sdlimgui preferences are handled. debugger and
playmode now load and have access to all preferences. the only
difference remains window position and size.
pref types are likely to be called in critical sections. to make the
prefs package easy to use, values in the types were protected by
mutexes, this is relatively expensive however. with the exception of the
generic type, critical sections are now protected with atomics.
small performance improvement
small performance improvement when in immediate mode. modified last
execution window to say if execution was in immediate mode or not (to
explain the absence of cycle count)
removed stale ARM preferences
updated screenshots and README
ARM MAM mode is set according to cartridge mapper driver
Preferences changed to specify this or whether to override it with a
particular value.
Removed the other MAM control preferences
Removed Flash/SRAM information from the last execution window
added mam preferences to prefs window. reorganised prefs window.
removed hardware prefs from PREFS command and lazy system. the lazy
system doesn't seem to be required and it makes more sense for the PREFS
command to deal solely with debugging topics.
preferences window visible in playmode on (F8). FPS indicator now on F7
common TIA variations added to tia package
revisions preferences window in sdlimgui
key names in prefs package can now contain digits in addition to letters
removed options related to setting scale of debug/play window
- can be done more effectively window controls
preference initialisation for debug and play modes is more clear
- removed errant playmode setting (terminalOnError - not applicable)
simplified window management
nicer feedback on rewind slider
fs package is an abstraction layer for those function in the standard os
package that are used by gopher2600. for non-wasm builds the functions
are fowarded straight to the os pacakge.
for wasm builds, the calls are swallowed.