Skip to content

Latest commit

 

History

History
186 lines (130 loc) · 25.9 KB

README.md

File metadata and controls

186 lines (130 loc) · 25.9 KB

Jaleco Mega System 1 A FPGA Implementation

FPGA compatible core of Jaleco's Mega System 1 A (P-47 based) arcade hardware for MiSTerFPGA written by Darren Olafson with assistance from atrac17. Verified against a authentic P-47: The Freedom Fighter PCB purchased by atrac17.

The intent is for this core to be a 1:1 playable implementation of the Mega System 1 A arcade hardware. Currently in beta state, this core is in active development. Additional Mega System 1 arcade titles will be in separate repositories (Mega System 1 Rev Z/B/C).


Supported Titles (Type-A)

Title PCB
Number
Encrypted
Program
MCU Status Released
P-47: The Freedom Fighter MB8844

MB8843
N/A N/A Implemented 20230701
Kick Off - Jaleco Cup MB8844 N/A N/A Implemented / W.I.P No
Shingen Samurai-Fighter / Takeda Shingen MB8844 Yes N/A Implemented / W.I.P No
Ninja Kazan / Iga Ninjyutsuden MB8845 Yes Yes Implemented 20230923
The Astyanax / The Lord of King MB8844

MB8845
Yes Yes Implemented 20230701
Hachoo! MB8845 Yes Yes Implemented 20240101
Jitsuryoku!! Pro Yakyuu MBMO2A Yes Yes Implemented 20240106
Plus Alpha MB8845 Yes Yes Implemented 20240106
Saint Dragon MB8845 Yes Yes Implemented 20230715
Rod-Land MBMO2A

MB8845
Yes N/A Implemented 20230513
Phantasm MB8845 Yes N/A Implemented 20230708
E.D.F: Earth Defense Force (Prototpe) W.I.P Yes N/A Implemented 20240101
In Your Face (Prototpe) W.I.P Yes N/A Implemented 20240101
Soldam W.I.P Yes N/A Implemented 20230519

External Modules

Module Function Author
fx68k Motorola 68000 CPU Jorge Cwik
fx68k Motorola 68000 CPU Jorge Cwik
jt51 Yamaha YM2151 Jose Tejada
jt6295 OKI MSM6295 Jose Tejada
jt6295 OKI MSM6295 Jose Tejada
yc_out Y/C Video Module Mike Simone
mem SDRAM Controller / Rom Downloader Josh Bassett, modified by Darren Olafson
core_template MiSTer Framework Template sorgelig, modified by Darren Olafson / atrac17

Known Issues / Tasks

  • OKI playback; correct samples (ROM board dependent) [Issue]

  • Mosaic OBJ effects verify against PCB (P-47 JALECO logo) [Task]

  • OBJ Scroll effects verify against PCB (P-47 trail effect) [Task]

  • Screen flip implementation [Task]

  • Verify H-FLIP / V-FLIP for screen flip against PCB [Task]

  • Program CPU overclock toggle [Task]

  • OPM / ADPCM audio mix toggles [Task]

  • Verify analog timings from MB8842 mother board [Task]

  • Measure HBL, VBL, H-SYNC, and V-SYNC timings from MB8842 mother board [Task]

  • 64-Bit SDRAM controller access for sprites [Task]

PCB Check List

Clock Information

H-Sync V-Sync Source PCB
Number
15.625kHz 56.205035 DSLogic+ MB8842

Crystal Oscillators

Freq (MHz) Use PCB
Number
4.000 MHz OKI MSM6295 / MCU CLKS (4 MHz) ROM Board
(See PCB Number)
7.000 MHz M68000 AUDIO CLOCK (7MHz)
YM2151 CLK (3.5 MHz)
MB8842
12.000 MHz M68000 CPU CLK (6 MHz)
Pixel CLK (6 MHz)
MB8842

Pixel clock: 6.00 MHz

Estimated geometry:

384 pixels/line  

278 lines/frame  

Main Components

Chip Use PCB Number
Motorola 68000 CPU Main CPU MB8842
Motorola 68000 CPU Audio CPU MB8842
Yamaha YM2151 OPM Sound MB8842
OKI MSM6295 ADPCM Sound ROM Board
(See PCB Number)
OKI MSM6295 ADPCM Sound ROM Board
(See PCB Number)

Custom Components

Chip Function
NEC D65005GB200 Custom Gate-Array / OBJ
NEC D65005GB249 Custom Gate-Array / SYNC
NEC D65012GF303 Custom Gate-Array / VCTR
NEC D65012GF307 Custom Gate-Array / SCPT

Core Features

Refresh Rate Compatibility Option

  • Video timings can be modified if you experience sync issues with CRT or modern displays; this will alter gameplay from it's original state.
Refresh Rate Timing Parameter HTOTAL VTOTAL
15.63kHz / 56.2Hz MB8842 384 278
15.63kHz / 59.4Hz NTSC (Closest Spec) 384 263
  • MAME information for timing parameters is incorrect.
Refresh Rate Timing Parameter HTOTAL VTOTAL
14.77kHz / 56.2Hz MAME 406 263

P1/P2 Input Swap Option

  • There is a toggle to swap inputs from Player 1 to Player 2. This only swaps inputs for the joystick, it does not effect keyboard inputs.

Audio Options

  • There is a toggle for mixing audio from mono to stereo; MB8842 had this option via dipswitch.

  • There are toggles to disable playback of OPM and ADPCM audio or raise the mixing volume the OPM and ADPCM audio channels.

Overclock Options

  • There is a toggle to increase the M68000 frequency from 6MHz to 7.2MHz; this will alter gameplay from it's original state addressing native slowdown of gameplay.

Native Y/C Output

H/V Adjustments

  • There are two H/V toggles, H/V-sync positioning adjust and H/V-sync width adjust. Positioning will move the display for centering on CRT display. The sync width adjust can be used to for sync issues (rolling, flagging etc) without modifying the video timings.

Scandoubler Options

  • Additional toggle to enable the scandoubler without changing ini settings and new scanline option for 100% is available, this draws a black line every other frame. Below is an example.
Scandoubler FxScanlines 25%Scanlines 50%Scanlines 75%Scanlines 100%






PCB Information / Control Layout

Title Joystick Service Menu Dip Switches Shared Controls Dip Default PCB Information
P-47: The Freedom Fighter 8-Way Service Menu Dip Sheet Co-Op N/A Coming soon
Ninja Kazan / Iga Ninjyutsuden 8-Way Service Menu Dip Sheet Turn Based N/A Coming soon
Phantasm 8-Way Service Menu Dip Sheet Turn Based N/A Coming soon
Saint Dragon 8-Way Service Menu Dip Sheet Turn Based N/A Coming soon
The Astyanax / The Lord of King 8-Way Service Menu Dip Sheet Co-Op N/A Coming soon
Rod-Land 8-Way Service Menu Dip Sheet Co-Op N/A Toggling the "Chapter" dipswitch will go from the "First Story (Rescue My Mom)" to the "Second Story (The Unknown Pyramid)".

You can also insert a coin and press up, up, up, down, down, down, start to enable the second story or up, up, up, down, down, down start to return to the first story on English versions.

For Japanese versions, the code is reversed for accessing the second story and returning to the first.

There are three endings to Rod-Land, complete the 31 levels in the first story or second; for the special ending, play either story by inputing the secret code and beating the extra level (32).
Soldam 8-Way Service Menu Dip Sheet Versus N/A Coming soon
Jitsuryoku!! Pro Yakyuu 8-Way Service Menu Dip Sheet Versus N/A Coming soon
Hachoo! 8-Way Service Menu Dip Sheet Co-Op N/A Coming soon
E.D.F: Earth Defense Force (Prototpe) 8-Way Service Menu Dip Sheet Co-Op N/A Coming soon
In Your Face (Prototpe) 8-Way Service Menu Dip Sheet Versus N/A Coming soon
Plus Alpha 8-Way Service Menu Dip Sheet Co-Op N/A Coming soon

Keyboard Handler


  • Keyboard inputs mapped to mame defaults for Player 1 / Player 2.

Services Coin/Start
FunctionsKeymap
TestF2
ResetF3
Service9
PauseP
FunctionsKeymap
P1 Start1
P2 Start2
P1 Coin5
P2 Coin6
Player 1 Player 2
FunctionsKeymap
P1 UpUp
P1 DownDown
P1 LeftLeft
P1 RightRight
P1 Bttn 1L-Ctrl
P1 Bttn 2L-Alt
P1 Bttn 3Space
P1 Bttn 4L-Shift
FunctionsKeymap
P2 UpR
P2 DownF
P2 LeftD
P2 RightG
P2 Bttn 1A
P2 Bttn 2S
P2 Bttn 3Q
P2 Bttn 4W

Support

Please consider showing support for this and future projects via Darren's Ko-fi and atrac17's Patreon. While it isn't necessary, it's greatly appreciated.

Licensing

Contact the author for special licensing needs. Otherwise follow the GPLv2 license attached.