[ucsim] CDB/var handling improvements
[ucsim/stm8] Add missing analyze label for trap vector
[ucsim/stm8] Port simulation
[ucsim] Another VCD update
[ucsim] HW tick must happen before time tick
[ucsim] Fix debug
[ucsim] ticks is unsigned long not double
[ucsim] vcd updates
Rebased
[ucsim] Improvements to code analyzer
Rebased. (Includes #417 and #418)
[ucsim/stm8] Pipetrace break handling fix
(Included in the latest rebase of #416)
[ucsim/stm8] Fix vcd-in test
Oops! Premature optimization :-) There's also a missing exec cycle when a relative jump isn't taken. Add this...
Rebased to master
[ucsim/stm8] Improve STM8 CLK emulation
[ucsim] Fixes and improvements to tickers
[ucsim/stm8] Instruction timings and pipeline analysis
[ucsim/stm8] Fix disassembly
[ucsim] Fix elision of simulated time in tests
Updated. Paused intervals are recorded and marked by $dumpoff, $dumpon sections. An optional pausetime value may be set in order to limit the length of paused intervals recorded. If no output file is given gtkwave is invoked directly.
[ucsim] Fixes and improvements
[ucsim] Make dump command wrap
[ucsim] Fix virtual overloading
[ucsim] Fix compile flags ordering
Updated to not spew complaints, not fork extra shells and to include updated baselines.
[ucsim] Don't force the use of -Wno-overloaded-virtual
[ucsim] Typo in format string
[ucsim] Test VCD outputs need to be elided
[ucsim] Elide unimportant output when running tests
Updated with new baseline for bitaddr test
[ucsim] Avoid some duplicate lines in dump
[ucsim] Clean up memory design
[ucsim] Ignore paths when comparing test output
[ucsim] Clean up pblaze warnings
[ucsim] Tests that fail hard are no reason to stop
[ucsim] Symdis test should only disass actual code not random junk
[ucsim] Tests should not use undecoded address space
[ucsim] Only compare bits when iterating variables
[ucsim] Need to use CXXFLAGS when linking serialview
[ucsim] Typo in configure help text
[ucsim] Avoid freeing random pointers
Any particular reason? Do we really need to support old compilers AND allow the use of "override" and "final" as identifiers rather than using them to avoid bugs?
How about this one then? Uses GNU binutils style rather than assembler list style.
[ucsim] Incorrect condition in variable creation
Rebased to current
[ucsim] Add a "tick" command
Rebased to current
Rebased to current
[ucsim] Symbolic disassembly
[ucsim]
Um, no. Sorry. Revert that and use this. Address spaces and chips are often used interchangeably as just memory and nothing says we can't have an address space and a chip with the same name. Better to just add a uid.
[ucsim] Fix var list ordering
[ucsim] Support older compilers via autoconf
[ucsim] VCD improvements
Rebased to current head
[ucsim] Avoid shadowing of clean target in tests
[ucsim] Missing Makefile for test
Oh, I see. Looks like Daniel changed it already.
Fixed. Applies on top of current sdcc (as of 2021-03-27) Made it work for both in-tree and out-of-tree builds. Added "make baseline" to update baselines (in source tree). Updated all baselines to match recent changes to ucsim. Sergey: I don't see any use of [[ except in the autoconf/configure stuff?
Rebased to current head.
Rebased to current head.
[ucsim] Bit addressing goodness
At a guess you didn't reapply #343 first so the virtual hierachies broke. This is a fix to #343 and needs #343 applied first. To keep it simple here are both patches again. Apply constcast-343 and then the fix and you should get: Running ucgbz80 regression tests abs (f: 0, t: 6, c: 1, b: 1812, T: 49738) absolute (f: 0, t: 20, c: 4, b: 3912, T: 140950) addrspace (f: 0, t: 0, c: 1, b: 1176, T: 39890) addsub (f: 0, t: 78, c: 12, b: 16243, T: 453734) align (f: 0, t: 12, c: 6, b: 7954, T: 328672) and_survive...
N.B. This is the fix for "option handling error" in #343. Please reapply #343 with this on top. (And #349 :-))
[ucsim] Add a regression test infrastructure
Need to use CXXFLAGS when linking
[ucsim] Fix override methods not overriding
[ucsim] Fix missing breaks in instruction handling
[ucsim] Fix Z80 handling of 0xdd and 0xfd prefixes
[ucsim] More const, cast and warnings clean up
[ucsim] Fix warning in options handling
[ucsim] Make top level clean targets work
[ucsim] Add missing frees
Minor clean up.
[ucsim] Clean up consts and casts
You can close this - it's a patch not a bug :-)
You can close this - it's a patch not a bug :-)
[ucsim] Memory leak fix
[ucsim] cl_strings should free with free() not delete
[ucsim] cl_strings should free with free() not delete
[ucsim] Memory leak fix
[ucsim/stm8] Incorrect operands for disassembly of ldf
[ucsim/stm8] rlwa/rrwa should not have second operand in disass
ucsim/stm8: missing instruction in disass tables
[ucsim/stm8] Incorrect operands for disassembly of mov
[ucsim] Allow 0b prefix to specify base 2 input
[ucsim] Casting to int misses bits and fails to sign-extend correctly
[ucsim] cl_memory_cell::toggle_bits is dead code
[ucsim] memory cell <mem> < addr> crashes if mem not address space
[ucsim] Must set instPC in exec_inst methods
You mean because t_addr is u64_t which is long on a 64bit build and long long on 32bit? Well yes, but it's the format that should match the data, you shouldn't cast the data to fit. The right thing to do is to use addr_format for every t_addr printed. Here's a patch that does just that. I also added format attributes to a few other things. It looks ugly but it makes things match up properly on both 64bit and 32bit builds. And corrects some actual bugs.
[ucsim] Use gcc's format checker and correct the issues found.
[ucsim/stm8] Simulate the BREAK instruction
[ucsim] Fix typo in STM8 assembler mnemonics
[ucsim] var names are const