Releases: ocornut/meka
Releases · ocornut/meka
Meka 2023-08-26
Emulation (Mappers)
- Added support for Korean xx-in-1 mapper at 0x8000 for 'Zemina Best 88', 'Zemina Best 25', 'Zemina Best 39' etc. (#104) [@bsittler]
GUI
- Added YM2413 state to tech info (#110) [@maxim-zhao]
- Added GG stereo mask to tech info (#111) [@maxim-zhao]
Database
- Added and modified entries in the checksum and compatibility lists.
Miscellaneous
- Attempting to convert history.txt to UTF-8. Had a guess at the older encodings and hand-fixed what remained. (#112) [@maxim-zhao]
Meka 2023-03-27
Emulation (SF-7000)
- Added support for extended DSK format (as .dsk or .sf7 extensions). For future SF-7000 releases we will use this format as our legacy 163840 bytes .SF7 format didn't convey enough information to reliably emulate all available software. [@miniupnp]
Emulation (Mappers)
- Added support for Korean xx-in-1 mapper at 0xFFFE for: 'Super Game 45'. [@bsittler]
- Added support for Korean xx-in-1 mapper at 0xFFF3,0xFFFC for: 'Super Game 150', 'Super Game 270'. [@bsittler]
- Added support for Korean xx-in-1 mapper at 0x0000 (xored 0xFF) for 'Zemina 4-in-1 (Q-Bert, Sports 3, Gulkave, Pooyan)' and more. [@bsittler]
- Added support for Korean xx-in-1 mapper at 0xFFF0,0xFFFE,0xFFFF for: 'Mega Mode Super Game 30 [SMS-MD]' and more. [@bsittler]
- Added support for Korean xx-in-1 mapper at 0xFFF5,0xFFFE,0xFFFF for 'Pigu-Wang 7 Hap', 'Jaemiissneun Game Mo-eumjip 42 Hap [SMS-MD]', 'Jaemiissneun Game Mo-eumjip 65 Hap [SMS-MD]' and more. [@bsittler]
- Added support for Korean xx-in-1 mapper at 0xFFFA,0xFFFE,0xFFFF for 'Game Jiphap 30 Hap [SMS-MD]'. [@bsittler]
Miscellaneous
- Disabled F10 key to quit emulator (regular ALT+F4 or OS close works).
Database
- Added and modified entries in the checksum and compatibility lists.
Meka 2022-03-27
Emulation (Mappers)
- Mappers: added support for Mapper 19 (
MAPPER_SMS_Korean_2000_xor_1F
) for: "128 Hap", "Game Mo-eumjip 188 Hap". [@bsittler, @ocornut] - Mappers: added support for Mapper 20 (
MAPPER_SMS_Korean_BFFC
) for "Super Game 200" etc. [@bsittler, @ocornut] - Mappers: improved support for Mapper 18 (
MAPPER_SMS_Korean_MSX_8KB_0300
) for: "Super Game World 30 Hap", "Super Game World 75 Hap", "Super Multi Game - Super 75 in 1", "Super Multi Game - Super 125 in 1". [@bsittler, @ocornut]
Database
- Added and modified entries in the checksum and compatibility lists.
Meka 2021-07-26
Build
- Windows: Stopped shipping UPX-compressed builds. (#60, #63).
- Windows: Building with Visual Studio 2019 toolchain.
Emulation (Mappers)
- Mappers: added support for Korean xx-in-1 mapper for: 'Super Multi Game - Super 75 in 1' and 'Super Game World 75'.
Database
- Added and modified entries in the checksum and compatibility lists.
Meka 2019-12-13
We have never tagged builds on github since Meka went into it's long 0.80 journey.. let's do this now..
What has changed since Meka 0.72:
Emulation (Main)
- Z80: Fixed emulation of R register (fixes 'Bubble Bobble', 'Hong Kil Dong' among others) [Calindro]
- Z80: Fixed CPDR running fully and ignoring interrupts. [Calindro]
- Z80: Fixed HALT timing. [Calindro]
- VDP: Setting address via palette write preserve upper address bits. Fixes tests #4 and #15 of FluBBA's VDP Tester. [Omar]
- VDP: Writing to palette sets the read buffer. Fixes test #10 of FluBBA's VDP Tester. [Omar]
Emulation (Audio)
- PSG: Added support for Game Gear stereo emulation! [Maxim]
- PSG: Emulate the PSG volumes "ideally" rather than matching some real systems' suboptimal output. [Maxim]
- Emu2413: Fixed commands 0x26-0x28 from turning off the drums. [ValleyBell]
- Rewrote sound engine and fixed audio issues that many users had. Still issues and PAL mode are broken... The sound is also now functional under Linux and MacOS. [Omar]
Emulation (Memory System, Mappers, Peripherals)
- Added support for variant of MSX-based Korean 8KB mapper used by 'Nemesis'. [Omar]
- Added support for '4 PAK All Action' mapper. [Omar]
- Added support for 'Janggun-ui Adeul' mapper. [Omar]
- Added support for Taiwanese DahJee/Jumbo SG-1000 II RAM extension adapter. [Omar]
- Added support for Sega Graphic Tablet v2.0 prototype hardware. [Maxim,Omar]
- Added support for Korean Hi-Com 3-in-1 and 8-in-1 mapper. [Omar]
- Added support for SC-3000 Survivors Multicart mapper. [Omar,Honestbob]
- Fixed 32K "No Mapper" mapper from forwarding 3-D Glasses writes. Fixes '3D Gunner'. [Omar]
- SMS/GG ROM images smaller than 48KB default to using no mapper. [Omar]
- Hardware reset leaves RAM cleared with $F0 patterns on Japanese SMS. This allow 'Ali Baba' and 'Block Hole' to run properly. Better clearing patterns could be implemented for other systems/countries after we've done more research. [Omar]
- Added support for mirrored VDP ports in $80..$BF range, as required by some Korean games such as 'Pooyan', 'Sky Jaguar' or 'E.I.'. [Omar]
- Light Phaser: Adding per-game hacky light phaser function to reduce drift between perceived cursor and what the game will end up using, particularly useful for 'Missile Defense 3-D' and '3D Gunner'. [Omar]
Misc
- Changed default key mapping for Player 1 buttons to use Z/X. [Omar]
- Setup panel allows to select display driver and resolution. [Omar]
Debugger
- Added support for setting breakpoint from ROM addresses (perform reverse mapping to validate address). [Omar]
- Referring to a symbol using with the : prefix (in the form ":xxxx") returns the ROM address instead of the CPU address. [Omar]
- Added
STEPOUT
command ("Continue to nextRET*
instruction at same stack-frame level."). [Omar] - Added
STACK
command ("Dump stack", with dual 8/16 bits display and with symbol resolving). [Omar] - Added
VARS
command ("Variables") to display content pointed by symbols in RAM. [Omar] - Added
TRACE
command to trace past execution. [Omar] - Improved the range of disassembly before PC cursor when running loops. [Omar]
- Fixed
CLOCK
command display for period longer than 10 minutes. [Maxim] - Added support for parsing the bank in NO&GMB/WLA symbol format. Symbols are turned into ROM addresses. [Omar]
- Added support for parsing SJASM symbol format. [Omar]
- Added support for parsing TASM symbol format. [Omar]
- Added a "Reload Symbols" menu option (useful when manually crafting symbols while reverse engineering). [Omar]
- Added shortcuts button in interface for "Stop/Continue", "Step", "StepOver", "StepOut", "Stack". [Omar]
- Disassembler: uses recorded Z80 execution history to allow semi-freely scrolling up and down in disassembly. [Omar]
- Disassembler: display symbols given their full ROM bank mapping (if bank information is provided by symbols file). [Omar]
- Disassembler: display symbols in 'RST xx' instructions. [Omar]
- Disassembler: opcodes shown in lower-case, increased spacing for readability. [Omar]
- Disassembler: display symbols+offset on JP/JR/CALL/RET/DJNZ instructions. [Omar]
- Disassembler: display symbols on IX/IY indexed instructions given the current value of IX/IY. [Omar]
- Disassembler: fixed issues with prefixed instructions. [Omar]
- Improved disassembler view centering, increased the track-back buffer, fixed issues with prefixed instructions. [Omar]
- Better support for 24-bits constants (for
PRINT
, etc.). [Omar] - Debugger is always available at runtime. Obsoleted /DEBUG command-line parameter. [Omar]
- Debugger window can be resized. [Omar]
Tools
- CheatFinder: added a new cheat finder application. [Omar]
- Can search for 1-bit, 8-bit, 16-bit, 24-bit values.
- Can search in RAM,ROM,VRAM,VREG,PRAM,SRAM,Z80 spaces for maximum flexibility,
although for actual cheat-finding purpose RAM is likely to be more searched for. - Reduce the match set by using ==,!=,<,>,<=,>= operators, compare with a constant
or the old value stored in each match memory location. - Highlight matches in the memory editor for easier visibility.
- Undo button.
- TilemapViewer: support for legacy graphic mode 2 used by SG-1000 games. [Omar]
- TilemapViewer: support for 256x256 tilemap used in PAL/SECAM wide screen mode. [Omar]
- TileViewer: support for showing full 16 KB range of tiles in legacy graphic modes. [Omar]
- MemoryEditor: fixed editing of 93c46 EEPROM memory. [Omar]
- MemoryEditor: fixed display of address when number of columns is not 16. [Omar]
- Wav Logging: recording in Stereo. [Maxim]
Translations
- Added Polish translation. [thr]
- Updated Dutch translation. [Mark van Tilburg]
Ports
- MacOSX: Preliminary MacOSX port. MEKA NEEDS A MAC MAINTENER!
GUI
- Now possible to resize the game window and some of the tools. [Omar]
- Now possible to change the font of the tools in the .CFG file. [Omar]
- Made "Ocean" the default theme and increased default GUI resolution. [Omar]
- Made "SMS Power! theme more readable. [Omar]
- TextInput: support for text selection, hold SHIFT+Left/Right keys to select text. [Omar]
- TextInput: support for CTRL+Left/Right to jump to previous/next word. [Omar]
- TextInput: support for clipboard (CTRL+X,CTRL+C,CTRL+V) shortcuts, tied to OS clipboard. [Omar]
- Depth order of windows is preserved accross sessions. [Omar]
- Increased mouse horizontal range when using scrollbars. [Omar]
- Added 'game_window_scale' directive on configuration file to resize game window. [Omar]
- Discontinued ALT+P (=F12) and CTRL+X (=F10) shortcuts. [Omar]
- Added ALT+V shortcut to start/stop VGM logging. [Omar]
- Menu entries display their shortcuts. Tidied up some menu entries. [Omar]
- Pressing DEL key in a text input box delete the character ahead of cursor. [Omar]
- FileBrowser: search for known extension when opening ZIP file (instead of picking first). [Maxim]
- FileBrowser: holding CTRL key while using the mouse wheel fasten scrolling. [Omar]
- FileBrowser: returning to parent directory position cursor on last child. [Omar]
- FileBrowser: BackSpace key is shortcut to return to parent directory. [Omar]
- FileBrowser: display JP flag when a game is JP/KR or JP/TW in the database. [Omar]
- FileBrowser: alphabetical shortcuts ignore disk drivers under Windows. [Omar]
- 3-D Glasses mode doesn't halve framerate of the interface anymore. [Omar]
Sources/Development
- Now build with a C++ compiler, fixed all incompatible C constructs + lots of cleanup. Codebase can now freely take advantage of all C++ compiler features. [Omar]
- Updated from Allegro 4 (software rendering based) to Allegro 5.2.40 (with OpenGL/DirectX backends). This required a lot of changes and rewrite in the codebase. It probably added new bugs, and performances seems to vary depending on computer settings and video drivers. [Omar, Maxim] Please do report if you have any issue/slowdown so we can fix them!
- Added a batch script 'tools/dist_bin_win32.bat' to create binary Win32 package. [Omar]
- Removed #ifdef-out code that was used by the MS-DOS version. [Omar]
- Removed code for the old OPL3 based YM2413 emulator. [Omar]
- Removed easter egg code for emulating the NES. [Omar]
- Removed easter egg mini-games and various other obsolete features. [Omar]
- Removed mekaw.txt and mekanix.txt documentation files (obsolete). [Omar]
- (Win32) Updated project to using Visual Studio 2017. [Maxim]
- (Win32) Grabbing dependencies via nuget. [Maxim]
- (Win32) Using precompiled header for faster compilation (MSVC). [Omar]
- Configuration file is created early on startup if missing. [Omar]
Database
Added and modified entries in the checksum and compatibility lists. [Omar]
Some particular renaming includes:
SMS - c4bb1676 - E-SWAT [A] --> E-SWAT [v0]
SMS - c10fce39 - E-SWAT [B] --> E-SWAT [v1]
SMS - d1a7b1aa - Olympic Gold (KR, BR) --> Olympic Gold [v0]
SMS - 6a5a1e39 - Olympic Gold --> Olympic Gold [v1]
GG - a6bf865e - Beavis and Butt-Head (MTV's) (EU) --> Beavis and Butt-Head (MTV's) (US, EU)
GG - 3858f14f - Beavis and Butt-Head (MTV's) (US) --> Beavis and Butt-Head (MTV's) [Proto]
GG - f3ca6676 - Columns (JP) --> Columns [v0]
GG - 83fa26d9 - Columns --> Columns [v2]
GG - a8ef36a7 - Junction --> Junction (JP)
GG - 23f9150a - Kawasaki Superbike Challenge --> Kawasaki Superbikes (EU) (now dumped US version)
GG - a45fffb7 - Riddick Bowe Boxing --> Riddick Bowe Boxing (JP)
GG - de25e2d8 - Sports Illustrated - Championship F..--> Sports Illustrated - Championship Football & Baseball [BAD] (was bad dump)
GG - 5b5de94d - Sports Trivia - Championship Edition --> Spo...