Commit graph

2087 commits

Author SHA1 Message Date
JetSetIlly
884de163d4 updated README 2022-05-30 11:07:10 +01:00
JetSetIlly
050434c067 go.mod tidy 2022-05-29 21:04:07 +01:00
JetSetIlly
26e6275ff1 fixed keyboard input for terminal since upgrade to imgui.go v4.4.0 2022-05-29 13:52:53 +01:00
JetSetIlly
92d4f170f8 hsync events differentiated by typedefed integer instead of a string 2022-05-28 19:12:16 +01:00
JetSetIlly
d7b1f0df71 simplified conditions underwhich playfield and sprites tick()
also triggerMissileReset() is passed to missile at init time and not on
call to Missile.tick()

small performance improvement
2022-05-28 19:12:16 +01:00
JetSetIlly
8241f85f0f corrected when playfield "ticks" and added an early return condition 2022-05-27 23:19:54 +01:00
JetSetIlly
bacfa2c2f1 added UpdateTracker() to Audio package. not part of the Step() function
this isn't a performance improvement but it Step() is now clearer and
UpdateTracker() can be called less often
2022-05-27 22:15:24 +01:00
JetSetIlly
6b089f5f57 ChipHasChanged() used to decide whether to call Step() or QuickStep()
small speed increase because we can use QuickStep() more often than
Step() when processing the TIA and RIOT
2022-05-27 21:27:11 +01:00
JetSetIlly
4ce3aecbca readded wavwriter package using go-audio/wav package 2022-05-26 21:10:28 +01:00
JetSetIlly
7ee76e030a note about supercharger tape regulator timings 2022-05-26 21:10:28 +01:00
JetSetIlly
d47bbe01c3 readded Supercharger WAV loading using go-audio/wav package 2022-05-26 16:31:45 +01:00
JetSetIlly
7e57bbe46c removed unused/unwanted dependencies
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
2022-05-26 12:14:34 +01:00
JetSetIlly
3d67309adc commenting and variable naming change in TIA implementation
changes intended to clarify the thinking behind optimisation strategy in
the TIA
2022-05-26 08:37:34 +01:00
JetSetIlly
6cd9b8c8e1 previous frame of audio signals resent when realtime mixer is starved 2022-05-25 13:56:01 +01:00
JetSetIlly
8fb2d16b00 reording of CDF MapAddress() decisions 2022-05-25 09:23:56 +01:00
JetSetIlly
aa3facd2a8 moved baud count check in AtariVox to before the state check 2022-05-25 08:16:54 +01:00
JetSetIlly
e36b068305 fixed program memory boundary check in ARM
the incorrect code has never caused an issue to my knowledge but it can
easily be seen that it might cause a out-of-bounds array access
2022-05-25 08:16:54 +01:00
JetSetIlly
ecc5d21ab3 arm.SetDeveloper() called more carefully
it was called even if no source was found. this meant that an
execution profile was gathered for no reason.

small but significant performance improvement for ROMs with no source
code
2022-05-24 17:38:34 +01:00
JetSetIlly
bf6a785e70 CDF/DPC+/DPC and ParkerBros all returned errors on cartridge write
... regardless of whether the write address was a recognised register.
this resulted in the CPU string formatting the error, which was wasted
CPU load and resulted in memory allocations

the error wasn't noticed because the CPU error was never logged
2022-05-23 19:56:06 +01:00
JetSetIlly
5230bf80b4 check for disasm==nil in ARM before formatting disasm notes
resulted in needless call to formatting functions and to malloc
2022-05-23 19:07:19 +01:00
JetSetIlly
a9710d55ef corrected how atarivox is muted/disabled
mute/disable only prevents engine.SpeakJet() being called. it no longer
disables any other atarivox or savekey updating
2022-05-23 18:56:43 +01:00
JetSetIlly
7e0e2a4714 altered how ineffective TIA/RIOT writes are handled
removed frequent and relatively expensive map lookups resulting in a
small performance increase
2022-05-23 18:02:40 +01:00
JetSetIlly
6422c08ddf QuickStep() added to complement Step() for TIA and RIOT
QuickStep() removes all checking for changed memory state. moreover, if
the CPU RDY flag is false, we can say that QuickStep() is always
prefered to Step() because by definition the state of memory cannot have
changed

a small but significant performance improvement. a side effect of this
improvement is that execution speed will increase depending on the
number and length of WSYNCs
2022-05-23 18:02:40 +01:00
JetSetIlly
5fb2bcc5b2 triggerMissileReset() only called on missile tick when necessary
small but significant performance improvement. the previous method by
which triggerMissileReset() could be considered a bug as it differed
from the intention. current code is correct with regards to intention
2022-05-23 18:02:40 +01:00
JetSetIlly
8edd79a9e8 removed writeSignal check in TIA and RIOT memory modules
the check was added as a protection/warning against incomplete TIA/RIOT
implementations. the removal has resulted in a small performance
improvement
2022-05-23 18:02:13 +01:00
JetSetIlly
8d9075dff2 precalculate lengths of bufferpixels
very small improvement in efficiency
2022-05-23 14:29:33 +01:00
JetSetIlly
a5468fc215 simplified CPU cycleCallback function. removed nil check 2022-05-23 14:29:33 +01:00
JetSetIlly
bb707e5818 tidied Audio.Step() function 2022-05-23 14:29:33 +01:00
JetSetIlly
997411743d abstract filepath.Abs() in fs package (for wasm target) 2022-05-22 21:45:51 +01:00
JetSetIlly
618e239bf6 operator field in instructions.Definition is now numeric
this significantly increases the speed of lookup in the cpu
2022-05-22 20:52:54 +01:00
JetSetIlly
08ec430643 small performance bump by removing implicit call to runtime.assertI2I 2022-05-22 19:47:00 +01:00
JetSetIlly
7ee464f950 bumped version for required modules 2022-05-22 08:47:44 +01:00
JetSetIlly
5d386ed72e clarified how pixel perfect fade option is displayed and added tooltip explanation 2022-05-21 11:35:31 +01:00
JetSetIlly
63dcc6d7c3 removed -termtype as an option for playmode command line
may be readded if ASCII rendering of TV screen is ever implemented
2022-05-21 11:19:24 +01:00
JetSetIlly
1f58af2002 updated README 2022-05-21 10:17:17 +01:00
JetSetIlly
1ad268c270 fixed alignment of labels in collisions window 2022-05-21 09:55:26 +01:00
JetSetIlly
02c9f1f8a3 improved formatting of Dec/Hex/Bin values in variable tooltip
added explicit note about array length / struct size when appropriate

variable tooltip will show in static window when hovered over the
address of a variable. does not handle compound variables yet
2022-05-21 09:54:34 +01:00
JetSetIlly
05818a0973 fixed debug colours option in debugger
broken in commit 54517978ee
2022-05-20 22:01:44 +01:00
JetSetIlly
dabd8b46d2 readded "active" pause screen as an option 2022-05-19 11:34:51 +01:00
JetSetIlly
5f228e0717 corrected peripherals mute in debugger 2022-05-18 15:27:47 +01:00
JetSetIlly
9d02cdebc1 removed check to see if variable is in list of globals
it's a nice idea but the check needs to be more comprehensive to be
useful. for example, we could legitimately be pointing to an element in
an array, which wouldn't be picked up by the check we had

something to develop further in the future
2022-05-18 14:44:48 +01:00
JetSetIlly
750212fcd3 support for DWARF pointer types 2022-05-18 09:58:00 +01:00
JetSetIlly
0db4a81a68 glsl destroyed after SDL
fixes crash caused when quitting application with window open in full screen
2022-05-17 08:47:04 +01:00
JetSetIlly
695949644c reversed sign of offset in ghosting shader
this fixes what I assume is a floating point error introduced with the
scaling shader. one to watch
2022-05-17 08:36:28 +01:00
JetSetIlly
c20b20d5f7 clarified some concepts in the prefs package. "fixed" the Generic type 2022-05-16 13:05:26 +01:00
JetSetIlly
ee07cd0a54 muting of peripherls must now go through the central ports.MutePeripherals() function
this allows the ports type to apply the mute state on newly inserted
peripherals

this prevents the situation on startup in which the mute is applied
before the peripheral is inserted
2022-05-15 21:29:31 +01:00
JetSetIlly
738273519f removed gui.ReqShowFPS and -showfps command line option
state of fps overlay is saved on exit so there is now need for those
requests/options
2022-05-14 23:00:14 +01:00
JetSetIlly
d4bcc9e6e7 state of fps overlay saved to preference file on program exit 2022-05-14 22:56:45 +01:00
JetSetIlly
d1dbe181ec audio mute notification
fps overlay shows small emulation event icons (pause, mute, etc.)
2022-05-14 22:43:25 +01:00
JetSetIlly
1a39e8674c audio mute options will be saved automatically on program exit 2022-05-13 15:32:00 +01:00