JetSetIlly
558ab3a3ab
moviecart fingerprinting
...
previously, we've relied on the file extension to be set to MVC but this
is a poor solution because it means moviecarts with the .bin file
extension are missed
2023-10-21 19:52:18 +01:00
JetSetIlly
b3d7c547a0
moviecart timecode display fixed
...
bottom edge of the screen is properly masked when the OSD is visible
corrected masking of screen when the OSD isn't visible
2023-10-21 19:52:18 +01:00
JetSetIlly
8ccae4e70f
TV rotation
...
cartridges can control TV rotation if necessary. only movie cart does
this for now
alt + <cursor keys> manually flips the screen rotation
2023-10-07 16:06:56 +01:00
JetSetIlly
54e3abd04f
cartridge RAM window not available for atari carts unless superchip is present
...
the decision whether to show cartridge menu is partly made on whether
the cartridge has a "RAM bus" available. atari cartridges (unlike other
cartridge type) always have a RAM bus but only some have a superchip.
the test for whether a cartridge has cartridge RAM has been made more
stringent
2023-10-03 19:24:22 +01:00
JetSetIlly
f18e4e6f08
corrected version check for Moviecart
...
bad stream data is handled with a log message and a stateful flag
preventing any more data reads
2023-10-02 09:01:13 +01:00
JetSetIlly
889c19b099
implemented moviecart 2 format
2023-09-28 14:50:34 +01:00
JetSetIlly
3cff5da258
updated vidchess bot
...
can now work with vidchess level 2-8 as well as level 1
image searching now works with sha1 hashes throughout
2023-09-23 20:12:12 +01:00
JetSetIlly
121d5f9cd6
fixed callstack/callers output
2023-09-23 08:57:00 +01:00
JetSetIlly
749940cad9
function name shown in coproc disasm tooltip
2023-09-23 08:55:27 +01:00
JetSetIlly
1cc0a66c70
added SECAM support
2023-09-18 19:19:25 +01:00
JetSetIlly
9035f1f3eb
log SDL version on startup
2023-09-18 16:36:19 +01:00
JetSetIlly
520a666053
StrongARM ColorLookup uses the appropiate table for the current TV
...
specification
added minimal Television interface to Environment type. exposes
GetSpecID() to the hardware emulation
2023-09-15 15:50:47 +01:00
JetSetIlly
40925c9134
ELF will use non-streaming byte injection if GPIO is accessed directly
2023-09-13 20:14:28 +01:00
JetSetIlly
81695c938d
added support for busstuff data in byte stream
2023-09-13 20:14:28 +01:00
JetSetIlly
0fe99092ef
premption of snoopDataBus() to enable controller input
2023-09-13 20:14:28 +01:00
JetSetIlly
cdd82fb68b
increased the ELF stream pushBoundary value
...
comment clarifies why the pushBoundary is required and the reasons for
the value
2023-09-13 20:14:28 +01:00
JetSetIlly
a921130414
ELF byte streaming now works with a fixed sized array
2023-09-13 20:14:28 +01:00
JetSetIlly
7de45d3d25
added -elf=none to all profiling invocation of the emulator in the Makefile
2023-09-13 20:14:28 +01:00
JetSetIlly
0b0314fbcd
proof-of-concept for streaming injected bytes
2023-09-13 20:14:28 +01:00
JetSetIlly
1f66e0da76
more efficient reading/writing of ARM registers from StrongARM functions
2023-09-13 20:14:28 +01:00
JetSetIlly
9208d4eae9
expanded scope of StrongArmFunctionSpec
2023-09-13 20:14:28 +01:00
JetSetIlly
3b7200280d
changed how strongarm support functions are executed
...
"support" functions are executed immediately and do not cause the ARM to
yield to the VCS
2023-09-13 20:14:27 +01:00
JetSetIlly
14dc6cb618
simplified the ELF/strongarm loop
2023-09-13 20:14:27 +01:00
JetSetIlly
75c3f602a2
corrected mapping of executable memory for ELF when address is at the very beginning of the block
2023-09-13 17:24:56 +01:00
JetSetIlly
717348c167
simplified ARM disassembly process particularly the static disassembly
...
removed execution notes from ARM disassembly. the notes were useful but
the implementation was ugly. not currrently needed so removed for now
2023-09-01 19:55:18 +01:00
JetSetIlly
33ca591b0b
simplified branching logic for Thumb set of instructions
...
in particular the operation of the BL instruction is clearer and
disassembled in a more natural manner
2023-09-01 09:59:51 +01:00
JetSetIlly
65d74d796c
added detail to disassembly of Thumb-2 instructions
...
reorganised logic of function handling decoding of "A6.6 32-bit transfer
between ARM core and extension registers"
fixed live disassembly of 32bit instructions
2023-09-01 09:59:51 +01:00
JetSetIlly
db2af1984b
improved caching for Thumb instructions
...
this change was done simply to bring the treatment of Thumb instructions
in line with Thumb-2 instructions. there is definitely more work to be
done with regard to making the caching more efficient
2023-08-31 08:54:37 +01:00
JetSetIlly
a0afd5c03b
improved caching of decoded Thumb2 (16bit) instructions
2023-08-31 08:54:37 +01:00
JetSetIlly
27df3bd5f5
improved caching of decoded Thumb2 (32bit and FPU) instructions
...
previously, the cached instructions still required a significant amount
of decoding. the new method captures the state of the decoding much
closer to the variable element of the instruction (eg. using what's in
the register etc.)
most of the benefit of the caching still comes from not having to reread
program memory every instruction but the new method does add a small
performance increase and arguably, more clarity to the code
2023-08-31 08:54:33 +01:00
JetSetIlly
6774404aaf
TIM2 in ARMv7-M updates are queued until results are required
2023-08-30 07:34:19 +01:00
JetSetIlly
b3c743d8df
tiny efficiency improvement in ACE
2023-08-30 07:34:19 +01:00
JetSetIlly
1ba0b164d3
ELF files run .init_array and .preinit_array sections
...
(init sections are detected by section type rather than name)
2023-08-30 07:34:19 +01:00
JetSetIlly
4fd1d9ef90
corrected hotspot information for F4 mapper
2023-08-29 13:14:40 +01:00
JetSetIlly
6639b8b490
reading ARM opcodes uses binary.ByteOrder (like data access does already)
2023-08-26 14:48:06 +01:00
JetSetIlly
9e332bd4d6
improved coprocessor registers window. can set registers from window
...
added TIM2 group to ARMv7-M extended registers specification
2023-08-26 09:14:54 +01:00
JetSetIlly
4007e6fc37
simplification of how gui interacts with debugger
...
removed unused caching fields. renamed function and interface names
related to breakpoints sharing
debugger quantum value is atomic for safe reading outside emulation
goroutine. moved quantum definitions to govern package
simplification of how debugger interfaces with coprocessor debugger/developer
2023-08-26 09:14:54 +01:00
JetSetIlly
12b9f19d1f
removed lazy update components. made savekey rewind safe
2023-08-26 09:14:40 +01:00
JetSetIlly
b822a49225
sketched in coprocessor registers window
2023-08-20 18:25:25 +01:00
JetSetIlly
74c3457406
coprocessor interface will return extended registers spec
...
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
2023-08-20 18:25:25 +01:00
JetSetIlly
6c7dc2ec75
changing sync rate no longer resets frame queue
...
a constantly changing sync rate, caused by inconsistent scanlines every
frame, would cause bad image stutter
2023-08-17 19:16:19 +01:00
JetSetIlly
a9c64def68
correct check for .debug_info section in DWARF loading
2023-08-15 15:24:59 +01:00
JetSetIlly
7dafebc099
added SBC (register)
...
corrected ADC (register) and RSB (register)
2023-08-15 15:24:59 +01:00
JetSetIlly
072e0c5239
VLDR correction
2023-08-14 20:28:51 +01:00
JetSetIlly
c4c926ed60
corrected VFMA/VFMS and VFNMA and VFNMS and saturation functions
...
beefed up FPU tests
2023-08-14 20:28:51 +01:00
JetSetIlly
cc06de58ee
arm disassembly reset only on 'expected' yields. ie. not breakpoints
2023-08-14 20:28:51 +01:00
JetSetIlly
17aff38d51
general tidy up. developer source ranges in particular
2023-08-14 20:28:51 +01:00
JetSetIlly
bd1ce44244
T1 encoding (64bit floats) for VLDR and VSTR
2023-08-14 20:28:51 +01:00
JetSetIlly
f81b237ee6
added []uint8 as a supported type for DW_AT_const_value
2023-08-14 20:28:51 +01:00
JetSetIlly
5c8b0a4bfd
added VMOV (immediate). implemented VFPExpandImm()
2023-08-14 20:26:49 +01:00