Skip to content

Latest commit

 

History

History
190 lines (142 loc) · 12 KB

README.md

File metadata and controls

190 lines (142 loc) · 12 KB

Toaplan Version 2 FPGA Implementation

FPGA compatible core of Toaplan Version 2 arcade hardware for MiSTerFPGA based on work by Pramod Somashekar. Without his extensive work on the GP9001, none of this would be possible.

FPGA implementation will reference Knuckle Bash (TP-023) schematics and will be verified against Dogyūn!! (TP-022), Knuckle Bash (TP-023), Tatsujin Ō (TP-024), FixEight (TP-026) and Batsugun (TP-030).

The intent is for this core to be a 1:1 playable implementation of Toaplan V2 hardware. Currently in alpha state, this core is in active development by atrac17 with assistance from Darren Olafson (Time Permitting).

The development process for this core will take time, understand that we have other obligations and active projects outside of the Toaplan V2 hardware.

Toaplan_logo_shadow_small

Supported Games

Title PCB
Number
Encrypted
Program
MCU MCU
Usage
Status Released
Teki Paki TP-020 No HD647180 Audio - No
Ghox TP-021 No HD647180 Audio & I/O - No
Dogyūn!! TP-022 Yes NEC V25 Audio W.I.P No
Knuckle Bash TP-023 Yes NEC V25 Audio W.I.P No
Tatsujin Ō TP-024 No None N/A Implemented Beta 20230119
Whoopee!! TP-025 No None N/A Implemented Beta 20221225
FixEight TP-026 No NEC V25 Audio & I/O W.I.P No
V-V TP-027 Yes NEC V25 Audio W.I.P No
Batsugun TP-030 No NEC V25 Audio - No
Otenki Paradise: Snow Bros. 2 TP-033 No None N/A Implemented Beta 20221225

External Modules

Name Purpose Author
fx68k Motorola 68000 CPU Jorge Cwik
t80 Zilog Z80 CPU Daniel Wallner
jt51 Yamaha YM2151 Jose Tejada
jt6295 OKI MSM6295 Jose Tejada
jtopl2 Yamaha OPL 2 Jose Tejada
jtframe FPGA Framework Jose Tejada; modified by Pramod Somashekar
GP9001 Toaplan Graphics ASIC Pramod Somashekar

Known Issues / Tasks

  • Reference TP-023 schematics and compare variations with TP-024 PCB [Task]
  • Verify clock domains for TP-024 [Task]
  • Verify PCM and OPM levels on TP-024 [Task]
  • 94.5 MHz Integer PLL for clocks [Task]
  • Update clocking for 94.5Mhz PLL [Task]
  • Add volume toggles for ADPCM and OPM audio [Task]
  • Add volume toggles to disable ADPCM and OPM audio [Task]
  • Additional scanline options for scandoubler [Task]
  • Add 31kHz toggle for hi-res CRT [Task]
  • Adjust volume toggles for ADPCM and OPM audio on TP-024 [Task]
  • Add Truxton II - Tatsujin Oh [New Version] as an alternate [Request]
  • Add stereo toggle for TP-024 [Request]

  • Sprite mux priority on explosions TP-025 [Issue]
  • Trace TP-024 to find is_vb for spriteram; not written at the start of vblank TP-024 [Issue]
  • Verify sprite lag priority for TP-024; currently 2 frames [Issue]
  • Screen tearing with vertical scrolling on 240p with 31kHz toggle; if enabled screen tearing is fixed TP-033 [Issue]
  • Sprite warping of player due to instable timings TP-024 [Issue]
  • Audio drift; occurs on TP-024 and TP-033 (Reference clk implementation / CPU writes) [Issue]
  • Analog screen flip shifts one row of pixels TP-024 [Issue]
  • Analog screen flip cuts one row of pixels TP-024 / TP-033 [Issue]
  • Sprite flicker on enemies TP-024 [Issue]
  • Sprite flicker on left side TP-024 [Issue]
  • Add SOCD commands for sprite warp on TP-024 [Issue]

PCB Check List

Clock Information

H-Sync V-Sync Source PCB Number
15.625kHz 59.637404 DSLogic + TP-024

Crystal Oscillators

TP-024 (Truxton II - Tatsujin Oh)

Location Freq (MHz) Use PCB Number
X1 16.000 MHz M68000 / OKI MSM6295 TP-024
X2 27.000 MHz GP9001 / YM2151 TP-024

TP-025 (Whoopee!! - Pipi & Bibi's)

Location Freq (MHz) Use PCB Number
OSC1 10.000 MHz M68000 TP-025
OSC2 27.000 MHz GP9001 / YM3812 / Z80 TP-025

TP-033 (Otenki Paradise: Snow Bros. 2)

Location Freq (MHz) Use PCB Number
X1 27.000 MHz GP9001 / YM2151 TP-033
X2 16.000 MHz M68000 / OKI MSM6295 TP-033
X3 32.000 MHz Not Utilized on TP-033 TP-033

Pixel clock: 6.75 MHz

Estimated geometry:

432 pixels/line  

262 lines/frame  

Main Components

TP-024 (Truxton II - Tatsujin Oh)

Location Chip Use PCB Number
U 90 Motorola 68000 CPU Main CPU TP-024
U 53 Yamaha YM2151 OPM Sound TP-024
U 20 OKI MSM6295 ADPCM Sound TP-024

TP-025 (Whoopee!! - Pipi & Bibi's)

Location Chip Use PCB Number
B 2 Motorola 68000 CPU Main CPU TP-025
E 3 Zilog Z80 CPU Sound CPU TP-025
E 5 Yamaha YM3812 OPL Sound TP-025

TP-033 (Otenki Paradise: Snow Bros. 2)

Location Chip Use PCB Number
U 57 Motorola 68000 CPU Main CPU TP-033
U 29 Yamaha YM2151 OPM Sound TP-033
U 30 OKI MSM6295 ADPCM Sound TP-033

Custom Components

TP-024 (Truxton II - Tatsujin Oh)

Location Chip Use PCB Number
U 67 GP9001 Graphics VDP TP-024

TP-025 (Whoopee!! - Pipi & Bibi's)

Location Chip Use PCB Number
C 14 GP9001 Graphics VDP TP-025

TP-033 (Otenki Paradise: Snow Bros. 2)

Location Chip Use PCB Number
U 18 GP9001 Graphics VDP TP-033

Additional Components (Board Dependent)

Location Chip Use PCB Number
N/A Zilog Z80 CPU Sound CPU
N/A NEC V25 Sound CPU & I/O Handling
N/A HD647180X Sound CPU & I/O Handling
N/A GP9001 Second Graphics VDP

Core Features

  • TBD, beta implementation.

PCB Information

  • TBD, beta implementation.

Control Layout

  • TBD, beta implementation.

Keyboard Handler

  • Keyboard inputs mapped to mame defaults for all functions up to the third player which is not listed below.
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
FunctionsKeymap
P2 UpR
P2 DownF
P2 LeftD
P2 RightG
P2 Bttn 1A
P2 Bttn 2S
P2 Bttn 3Q

Acknowledgments

Pramod Somashekar for his extensive work on the GP9001, Raizing FPGA implementation, general knowledge, and assistance with implementing Tatsujin Ō.

Jose Tejada for his extensive work on FPGA modules utilized in this implementation, general knowledge, and assistance over the last two years.

@90s_cyber_thriller for loaning all Toaplan V2 hardware used in the development process.

Support

Please consider showing support for this and future projects by contributing to the developers. While it isn't necessary, it's greatly appreciated.

atrac17's Patreon
Darren Olafson's Ko-fi

License

Contact the author(s) for special licensing needs. Otherwise follow the GPLv3 license attached.