A small update has been released. A log has been added to the Breakpoint Window. All breakpoints that get hit will be logged there. By disabling the check for „Suspend“ you can avoid suspension when breakpoints are hit and only log them instead.
Some people have experienced issues downloading files from emulicious.net. These issues should be solved now. If you still encounter problems with downloads from this website please report them so they can be solved as soon as possible.
An update of Emulicious has been released. The update comes with additional options for the tracer and introduces an outline to the debugger.
The outline helps you navigate through code more easily by providing a structured representation of the code. It is directly linked to the selection of the debugger so it can also help to orient yourself in the code.
The tracer can be controlled using conditions now. You can define conditions on which to start/end tracing and a condition on which to trace an instruction at all.
Besides that the tracer allows you to provide an expression to be evaluated before each instruction being traced. The result of the evaluation is appended to the trace. This way you can add additional information to your trace. For example if you want to watch the value in RAM at $c000 you can set the expression to „@$c000“. Using this expression each line of your trace will also show you the value at $c000.
A major update of Emulicious has been released!
For Windows users that don’t have Java installed on their system an alternative download including Java binaries has been added to the Downloads section.
It comes with several new features:
- The stack now shows labels of the functions that have been called (it can be double-clicked to navigate to the call)
- The stack now shows the names of the registers that have been stored in it
- Conditional breakpoints
- An option for setting uninitialized memory and a breakpoint that breaks on access of uninitialized memory
- A breakpoint that breaks when an interrupt doesn’t restore the state properly
- Emulation of PAL for the SEGA Master System
- Emulation of the screen borders of the SEGA Master System
- Options to unhide the offscreen area of the SEGA Game Gear
- DATA labels in the Z80 disassembler
- RAM labels in the Z80 disassembler
Besides these new features Game Boy emulation has been fixed and the expressions panel has been improved to support more complex expressions.
Z80 disassembler / Master System disassembler
The Z80 disassembler / Master System disassembler has been improved to create DATA labels for data that is referenced. This can help to identify blocks of data more easily. It now also create RAM labels that can help to determine RAM usage and variable sizes.
Expressions/conditions support the following
=, ==, !=, <, >, <=, >=
hex numbers (prefixed by either $ or 0x)
binary numbers (prefixed by %)
symbols loaded from a symfile
variables (see below)
the @ operator to „read“ a value from a calculated address.
Besides that the following variables are supported:
All register names. As single registers and as register pairs.
va (the current vdp address)
scanline (the current scanline)
address (the current address)
bank0 (the bank in slot 0)
bank1 (the bank in slot 1)
bank2 (the bank in slot 2)
For read/write watchpoints only:
value (the value being read/written)
source (the address being read/written)
For write watchpoints only:
oldvalue (the value being overwritten)
A new version of Emulicious has just been released.
The new version extends the debugger with a Find Dialog and helps you track the control flow by highlighting the trace of the instructions being executed. A Reference Hierarchy has been added that lists all references to a specified label.
When hovering a control flow instruction its destination will be highlighted now and when it is clicked while holding the CTRL key the debugger will be scrolled to its destination.
A new update of Emulicious has arrived!
With this new version you can finally enjoy your favorite games in fullscreen! You can enter fullscreen by either pressing ALT+ENTER or from the Graphics menu.
The debugger has been extended by watchpoints (aka memory breakpoints) that will halt execution on a read/write of a specified memory location.
The memory editor has been extended by a find dialog that allows searching the memory. Besides that the memory editor now supports simple table files.