Skip to content

Releases: ocornut/meka

Meka 2022-03-27

27 Mar 19:25
Compare
Choose a tag to compare

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

26 Jul 12:35
c00bce7
Compare
Choose a tag to compare

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.

mekaw-2021-07-26.zip

Meka 2019-12-13

13 Dec 12:34
Compare
Choose a tag to compare

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 next RET* 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...