Our first release of 2025 is here! I hope you all enjoy the Technos16 cores. Before diving into the update, please make sure to read the instructions for Technos16.
Over the past few weeks, I’ve been working on creating standardized templates from the initial ports of Armed Police Batrider and WWF WrestleFest for our new "game core" framework by Pramod.
In my last post, I briefly discussed our framework, tools, and that we were in the process of porting the Technos16 cores to MiSTerFPGA. Today, I’m excited to announce that our K3 (Koin3) framework is now up and running on MiSTerFPGA!
We are currently adding modules to the K3 framework template and tailoring it to our specific needs. At the moment, Pramod is validating xsd64 (our proprietary SDRAM controller) and the ez68k module, which interfaces with fx68k.
Meanwhile, I’m focused on modifying and creating modules for inputs (mouse-relative, mouse-absolute, keyboard, trackball, rotary controls, etc.), audio mixing, and writing a new scandoubler.
xsd64
A variable burst-based controller capable of handling large data transfers to and from SDRAM
Designed for use cases requiring efficient clearing or reading of large amounts of data from VRAM
Supports 128MB addressing, up to 256MB of storage, and dual SDRAM configurations
ez68k
Abstracts core operations of fx68k, such as DTACK, clock generation, interrupts, and bus handling, away from the user
GUI-configurable, simplifying address bus integration and management
Our K3 framework integrates standard options that were frequently requested and is fully compatible with the MiSTer template, allowing for seamless updates to the sys directory via simple drag-and-drop functionality.
Additionally, previously released Coin-Op Collection cores will be ported to Koin3 with significant improvements and enhancements.
Aspect Ratio, Crop/Scale options, including 5x Crop support
DV1 support for Retrotink 4K CE/PRO
18-bit/24-bit analog I/O board support
Y/C out support for S-Video (Y/C) and Composite (CVSB)
Analog H/V positioning for precise CRT display alignment
Analog Sync Pulse adjustments to resolve "flagging" issues on CRT displays
NTSC Refresh Rate toggle, forcing the core to output 15.73 kHz/59.4 Hz
FM, BGM, FX audio toggles with independent gain adjustments
Customizable video timing Verilog module for enhanced flexibility
Cheat support for ROM/MEM addresses via a Verilog module
Integrated Hi-Score saving
Lagless flip screen support for both vertical and horizontal displays
Additional feature announcements coming soon...
Once the K3 template is finalized, we plan to open-source the Technos16 and Tecmo16 cores as examples, accompanied by detailed tutorials. Existing public cores that have been ported to the framework will also be released publicly. However, new cores will continue to follow the licensing method we implemented in September 2024.
Our goal with K3 is to prioritize portability and development, ensuring support for upcoming devices while maintaining compatibility with MiSTer if possible.
We've decided to focus on this throughout Q1, before resuming development on Midway. Moving forward, each core will be its own standalone release as we transition away from multi-game cores. We currently have over ten games planned for release on MiSTer, this does not include the completion of the Toaplan2.
Now on to Technos16...
As with the Analogue Pocket versions, this release will require ROM assembly. To make the process as seamless as possible, I’ve provided a directory structure in the release package. Follow the instructions below:
ROM Assembly Directions (Windows)
Install Python (if needed)
Download and install the latest version of Python (version 3.x).
Note: Do not use Python 2.x.
Extract the Package
Unzip the provided package to a folder on your computer.
Prepare ROM Files
Place the required ROM zip files in the root folder (Technos16_Assembler) of the extracted package.
Ensure these files are in MAME-merged set format.
Run Batch Files in Order
Start by running the assembly batch file:
ctribe_rom_assembly.bat (for the first ROM set).
Then, execute the corresponding generation batch file:
ctribe_rom_generation.bat.
Repeat this process for the remaining ROM sets by running their respective generation batch files:
ddragon3_rom_generation.bat
wwfwfest_rom_generation.bat
Transfer Output
After executing all batch files, copy the contents of the output directory to the games/mame folder on your SD card.





Question: Why do I have to assemble ROM files?
Answer: This is due to RLE compression. This reorders the bits after decompression done on hardware. For a more detailed explanation, see here.
Question: Why do I have to repack the ctribe ROM sets?
Answer: Repacking reorders the bits after hardware decompression and requires an additional length parameter that isn’t handled during MRA generation. The 28j17-0.105 ROM is a hex file padded with 00. Unlike ddragon3, I couldn’t incorporate it into the build MRA files.
Our next update is just a few weeks away, featuring a new core along with additional improvements to Technos16 and an introduction to Raizing.
I’ve already begun working on Toaplan2, while Pramod is wrapping up validation for the next phase of Koin3. The custom SH2 used in Capcom CPS3 hardware donated by Jose Cruz has been decapped and imaged. I'd like to thank him for the donation as our previous SH2 cracked during delayering. Stay tuned!
If you experience issues with the WWF WrestleFest alts, redownload the zip file for today's release.
Disclaimer:
All product names, trademarks, and registered trademarks mentioned are the property of their respective owners. "Analogue," "Analogue Pocket," "MiSTerFPGA," "MiSTer", "Capcom," "Midway," "Technos," "Tecmo," "Toaplan," "Raizing," and all derivative works are trademarks, registered trademarks, or copyrighted materials of their respective holders. Use of these names does not imply endorsement or association with this post. All rights reserved to their respective owners. This post is for educational and research purposes only.
Miguel Tobon
2025-01-30 21:29:54 +0000 UTCatrac17
2025-01-28 06:24:33 +0000 UTCRoberto Lari
2025-01-28 05:19:11 +0000 UTCatrac17
2025-01-27 05:03:23 +0000 UTCEdson Souza
2025-01-27 05:00:52 +0000 UTCatrac17
2025-01-26 22:40:26 +0000 UTCEdson Souza
2025-01-26 22:35:13 +0000 UTC태근 박
2025-01-26 12:42:18 +0000 UTCKent Pendragon
2025-01-25 22:49:26 +0000 UTCFabricio
2025-01-24 23:39:52 +0000 UTCTymour Azzam
2025-01-24 21:32:25 +0000 UTCTony Vo
2025-01-24 21:26:47 +0000 UTCFrank McDonald
2025-01-24 19:49:49 +0000 UTCatrac17
2025-01-24 19:36:38 +0000 UTCTony Vo
2025-01-24 19:35:18 +0000 UTCatrac17
2025-01-24 19:35:05 +0000 UTCFrank McDonald
2025-01-24 19:31:51 +0000 UTCFrank McDonald
2025-01-24 19:23:48 +0000 UTC80's spaceman
2025-01-24 19:19:30 +0000 UTC80's spaceman
2025-01-24 19:17:29 +0000 UTCatrac17
2025-01-24 19:16:49 +0000 UTC80's spaceman
2025-01-24 19:16:16 +0000 UTCDr. Manga
2025-01-24 18:35:13 +0000 UTCSanborn
2025-01-24 18:34:58 +0000 UTCAlexander Upton
2025-01-24 18:24:11 +0000 UTC