0.88u3 ------ General Improvements -------------------- More FD1094 improvements, a program to produce the key tables from dumped state data is now included as etc/fd1094dp.c, please note the key table format has changed slightly to reflect some new findings [Nicola Salmoria] Various fixes to prevent crashes in X86-64 compiles [Hans de Goede] Misc Fixes [Nathan Woods] src/cpuintrf.c: src/cpuintrf.h: - Adds a MESS specific CPU core src/inptport.c: - Fixed a few input group declarations on MESS specific input types src/sound/astrocde.c: - Moved some variable declarations to the tops of their respective groups. Converted mermaid.c to tilemaps [Curt Coder] * Mermaid drivers/mermaid.c vidhrdw/mermaid.c - tilemap conversion - cleaned up driver - merged memory map - removed fake input port Improvements to the Liberator driver, correct proms now used [Aaron Giles] Fixed addc, subc, mulu, muls in Hyperstone Core [Tomasz Slanina] (fixes title screen objects in suplup, and bullets in misncrft) Hyperstone updates [Pierpaolo Prazzoli] - Fixed software opcodes when used as delay instructions - Added nested delays Improvements to SPI decryption [Ville Linde] Jr Pacman driver cleanups [Aaron Giles] New Windows based debugger [Aaron Giles] ---------------------------------------- Note: The new debugger is enabled as the default debugger for the next few u releases (in a debug build only) to allow feedback, it can be disabled by changing the makefile (description of 1st update) There are some new behaviors and new ways of doing things you should be aware of. By default the debugger no longer "auto hides". This was a remnant of the way the old debugger worked that I have gotten rid of. If you want to hide all the debugger windows, just close the "main" debug window. It will return if you break in the debugger at a future time. The "main" window has four panes: a register list on the left, a disassembly around the current PC at the top, a console output window in the middle, and an input line at the bottom. The input line supports full editing features, and you can also use up arrow/down arrow to cycle through recently typed commands. Hitting Enter on a blank line in the console is equivalent to single stepping once. You can also do that with F11. To run, either use the "go" command or hit F12 (or close the "main" window). To run until the next CPU, either use the "next" command or hit F6. You can bring up multiple independent memory and/or disassembly windows by using the Debug menu. Each window can look at a different address space on any CPU. You can enter any expression (including those using registers from the CPU) into the entry line at the top of these windows in order to specify which address to begin displaying at. I've implemented a number of useful commands in the console. Type "help" to navigate the extensive online documentation for a number of examples on how to use these features. You can do some really cool stuff now with the conditional watchpoints and breakpoints. This is a work-in-progress, but it's pretty good now (IMHO) and stable for common debugging operations. Let me know what you like/dislike about it and what sorts of features you feel are still lacking. (description of 2nd update) F12 now means "run and hide the debugger". I found this was too useful to get rid of entirely. F5 just means "run", keeping the debugger visible. Enabling the debugger now forces window mode and prevents you from switching to full screen mode. (description of 3rd update) * Added step over/step out functionality. F10 or "over" steps over an instruction. Shift+F11 or "out" steps out of a subroutine or exception handler. Note that this feature relies on the disassembler to produce some flags indicating which instructions which need to be stepped over (generally CALLs and TRAPs) and which instructions end a step out search (generally RETURNs). * Modified the 680x0 and MIPS3 disassemblers to support these features. * Changed the disassembly view to back up 3 instructions when resetting (that is, the current PC should appear on the 4th line instead of the 1st line). This is not perfect, but works pretty well overall and should help see the previous couple of instructions when, say, a watchpoint is hit. * Improved filtering of keypresses so that they don't leak into the game when you are typing in the debugger. New Games supported or promoted from GAME_NOT_WORKING status: ------------------------------------------------------------- Super Lup Lup Puzzle [Tomasz Slanina, Pierpaolo Prazzoli] Mission Craft [Tomasz Slanina, Pierpaolo Prazzoli] these now run due to cpu core fixes being made New Clones supported or promoted from GAME_NOT_WORKING status: -------------------------------------------------------------- Hot Rod (4 player, Japan) [Chris Hardy] Meteorites (italian clone of asteroids) [Pierpaolo Prazzoli] Liberator (set 2) [Aaron Giles] Street Fighter EX Plus (USA, 970407) [Brian Troha] New Non-Working games / clones supported ---------------------------------------- Raiden Fighters Jet (Single Board, US) [J. Rodman] Sega Y-Board skeleton driver Galaxy Force 2, Power Drift, G-Loc, Strike Fighter, Rail Chase *only* the driver file, no video has been ported yet so nothing works Woodpecker (2 sets) Yachtsman