XaiJu
Coin-Op Collection
Coin-Op Collection

patreon


Coin-Op Collection Presents: Toaplan V2

Toaplan V2 Updates:

I spent the last few weeks refactoring the code for Truxton II, Snow Bros. 2, Whoopee!!, and implemented Teki Paki. I also added support for the HD647180 version of Whoopee! to the Teki Paki core. These boards all share similar components, but are designed differently. To get a better idea of what this entailed, you can take a look at the Toaplan2 repository history.



I've pushed all these changes to distribution repositories for MiSTerFPGA and OpenFPGA projects or you can update manually. The biggest change is that Truxton II will require PocketFPGA users to reassemble to ROM file.

There are parameters set in code by the MRA file and they've changed. Failure to do so will result in graphics corruption as the sprite lag setting isn't read properly. I've made cosmetic changes, each title totally independent, update modules, adjusted sound playback, and set individual parameters in the GP9001 module.

There is popping in ADPCM samples on Truxton II when several enemies are destroyed at once, this is not due to missing ROM reads. I've verified ROM reads in simulation. Registers for the OKI are set by the program ROM and this title does not use a sub-CPU for audio.

The OKI MSM6295 uses a phrase command which is sent twice, the current implementation ignores multiple commands sent to the same channel (reference here) resulting in popping . I'll open a ticket in the JT6295 repository asking for support. This may also fix ADPCM issues in Street Fighter.

You'll see additional options for the OpenFPGA ports of Toaplan V2 games that I ported. To include a list menu, region selection, and the audio mix toggle for stereo sound in Truxton II.






Going forward, I'll be using Modelsim to run simulations when implementing a core and the Analogue Pocket as my primary method of testing during development. Why? Mainly due to time, but the Pocket also has a better memory architecture than MiSTerFPGA. I plan to leverage this for future releases and Toaplan V2 titles.

Currently, the GP9001 runs 5 frames behind hardware due to SDRAM limitations and bandwidth.  The master clock runs at 94.5 MHz which results in an integer clocking setup and runs 7x the speed of the main pixel clock (13.5 MHz).

While this is the maximum speed achievable on the MiSTerFPGA platform, I'll attempt to increase it to 108 MHz on the Analogue Pocket, eliminating the 5-frame lag. These 5 frames are a result of the M68000 CPU not generating the frame on time or the frame isn't drawn on time by the GP9001. Whichever is the culprit behind these 5 frames will be resolved by increasing the speed of the SDRAM.

The next title I'll implement in FPGA is Ghox (pictured above). I acquired the PCB from Beep back in October for reference. This will require use of the y80e core as Ghox is not backwards compatible with the z80. If the y80e core doesn't function properly, then we'll (Pramod and I) implement a z180 CPU ourselves due to it using the extended range and additional I/O ports.

After Ghox is implemented, I'll be tackling the z80 test location version of Dogyuun that was recently dumped and implemented in mame in preparation for all the dual GP9001 titles.

After the dual GP9001 implementations is set, we'll start work on implementing the NEC v25 CPU. It shouldn't take too long to create, the architecture is based on an Intel 8088 CPU. This exists in HDL. The current timeline is to finish these titles over the summer.

What additional titles will this work bring? Here's a list below:

TP-022 - Dogyūn!! / Dogyuun
TP-023 - Knuckle Bash
TP-026 - FixEight
TP-027 - V-V / Grind Stormer
TP-033 - Batsugun

Capcom ZN1 / ZN2 Updates:

Coin-Op Collection's latest member Brandon Arnold who does in-house reverse engineering has finished die analysis of the DL-3129 and schematic for this and the ZN-1 / ZN-2 hardware are complete.

We learned about some improvements in addressing and clocking used in the CPS2 AIO vs. CPS2 and have a clear understanding of how the CAPCOM board works. Once the ZN-1 / ZN-2 core is stood up and functional, all findings and reverse engineering work will be published.

In June, Pramod is going to send his Armed Police Batrider PCB to Brandon and he'll start reverse engineering the board and we'll be publishing the full schematic for Armed Police Batrider. Pramod will be auctioning off his original PCB with the proceeds going to a charitable organization.

Once the schematics for Armed Police Batrider completed by Brandon are published, he'll start focusing on the next "big platform" for reverse engineering and writing the ZN-1 / ZN-2 implementation.

Coin-Op Collection & MiSTerFPGA support:

To clarify, our organization is a group of individuals with varying schedules and commitments. Each individual has their own development process. Our work on the MiSTerFPGA, OpenFPGA, and additional FPGA platforms is a hobby, not a full-time job.

Currently, Darren has no plans to work on any projects for MiSTerFPGA in the foreseeable future. Pramod has no intentions of supporting the MiSTerFPGA platform beyond his Raizing FPGA implementation.

Brandon is targeting his work and implementation of Capcom ZN-1 / ZN-2 for the MARS (Multi Arcade & Retro System) platform and won't be targeting development of his core for MiSTerFPGA.

Your Patreon support directly funds the projects we undertake as a group. This includes donating or purchasing hardware for developers inside and outside our organization, buying equipment and supplies, and covers other expenses essential for research. It does not directly compensate us for our time.

I (atrac17) want to clarify that I have never said I wouldn't support MiSTerFPGA releases. This idea is untrue and seems to have originated outside our group. The only community Darren, Pramod, or I actively participate in is in the Coin-Op Collection Discord created for Patron supporters.

We understand there are community expectations regarding MiSTerFPGA support. However, technical limitations exist, and each developer has their own process. Code for our implementations will be made available once complete and deemed suitable by the primary developer if MiSTerFPGA support is not planned.

In the future, all releases from the Coin-Op Collection group will undergo a beta testing period. This typically lasts 90 days, but may be longer for complex cores. I have no plans to restrict access to these beta releases other than private posts for current supporters. This policy may be adjusted depending on end users and may result in a form of "DRM".

Discord Access:

If you're a Patron and are having trouble accessing the discord, please use the follow the instructions posted here. You'll automatically join the server after setting up integration between Discord and Patreon.

If you've set a link between Patreon and Discord and haven't auto-joined the server, please remove the Discord account from Patreon and then relink it following the instructions provided above in the link. This has been verified from a supporting user.

Upcoming Releases & Furture Updates:

Next week we'll see WWF WrestleFest from the Technos16 core released to the OpenFPGA distribution page for downloaders. Double Dragon 3: The Rosetta Stone will see it's first release candidate here on Patreon for the Analogue Pocket by Pramod and be the first core to enter the beta phase.

Additionally, I'll give an update on the NMK16 core, the Pac-Land core, and the next big reverse engineering project. Have a great week!

Coin-Op Collection Presents: Toaplan V2 Coin-Op Collection Presents: Toaplan V2 Coin-Op Collection Presents: Toaplan V2

Comments

I'm pleased you have clarified how you intend to support each platform from now on, re-subbed

John Perry

Cool - I missed that bit somehow. Looking forward to playing it!

brian Yu

"Brandon is targeting his work and implementation of Capcom ZN-1 / ZN-2 for the MARS (Multi Arcade & Retro System) platform and won't be targeting development of his core for MiSTerFPGA."

atrac17

Is ZN-1/2 core targeted for MiSTer, Pocket or MARS? Or all of the above?

brian Yu

5 frames. Each game has sprite lag built in. It varies depending on the game.

atrac17

do we know the target lag for the real hardware? 5 frames sound a lot you would imagine the game would feel laggy while it doesn't

Andrea Bogazzi

Pacland coming soon 👏

HT

5-frames, just like the post states. The SDRAM isn't viable on MiSTer at 108MHz which would alleviate this issue.

atrac17

Congrats for the advancements first of all. I have a question about the 5 frames of lag you are mentioning in this post. How those differ from the current core implementation? Today how many frames of lag we have with the gp9001?

Andrea Bogazzi

All good, thank you!

NFGphoto

I've sent a DM with an invite, you probably would have unlink the two apps and relink them.

atrac17

Yes, I can connect to several others without issue.

NFGphoto

That's an expired invitation link. Is your Patreon connected to the Discord app like stated in the post?

atrac17

The discord link appears to be broken, or I'm blocked, or something. My browser shows a blank page, 'no text channels for this server'. If it opens in Discord, it says the invite has expired. If I enter it directly in Discord, I'm told it's the wrong sort of link and it should look like https://discord.gg/[servername], where the one used here is https://discord.com/channels/1141467756844294324 It's been like this ever since I started supporting this great effort, Oct '23.

NFGphoto


More Creators