Author Topic: Creating own NES multicarts? and Family BASIC  (Read 1458 times)

Tygerbug

  • Newbie
  • *
  • Posts: 22
    • View Profile
Creating own NES multicarts? and Family BASIC
« on: August 13, 2022, 06:28:11 AM »
This is, admittedly, getting into dicey territory, but I'm wondering if there is any kind of ASM (or other) framework out there for assembling NES/Famicom multicarts as ROMs.

As in: a script or application or framework which could assemble many 40k NROM NES ROMs into a single ROM. Or alternately could assemble NES ROMs of varying sizes into a single ROM. Or alternately could assemble 2k or 4k Family BASIC minigame NES ROMs (which all use the same graphics) into a single ROM.

We all know those pirate multicarts which turn up as ROMs or as their own systems. Here's an example ...

https://bootleggames.fandom.com/wiki/Famicom_Yarou

Famicom Yarou 54 contains 54 games, mostly hacked versions (by Inventor) of early 40kb NES NROM games, and a few bootleg originals by Nice Code, which seem to be 64kb in their original form but also run off of two CHR graphics banks like a 40kb game. There is a bunch of empty CHR space in the ROM code.

The menu seems to just set which PRG and CHR banks are being used.

It is possible (and straightforward) to copy/paste the original ROM data, minus the header, into this multicart ROM, replacing their weird hacked versions of the games. The original games' PRG data appears in the first half of the ROM in various banks, and the CHR data appears toward the end somewhere in various banks.

Twinbee appears to be cut down to NROM size here.

Other multicarts use games of varying size, and even this one seems to do that to an extent.

Here's a "1280-in-1" multicart whose "524-in-1" section seems to include the elusive, undumped original Pikachu5 version of "Wonder Rabbit/Monster Brother."

https://www.youtube.com/watch?v=0QWX8AZDc8s

If I were making ROMhacks and original NES games, it would be at least interesting to combine several of them into one Multicart ROM. This could also be useful for combining several related minigames, which might not be as interesting on their own, into one coherent idea.

Such as, let's say, original minigames made in NESMaker.

Alternately: Recently, ozidual of Gaming Alexandria and others have been preserving games made in Famicom Family Basic back in the 80s and 90s. This was a keyboard/ programming add-on for the Famicom which allowed for 2k of programming RAM, or 4k in the 1985 V3 update. Programs for Family Basic were published in magazines at the time and on audiocassettes. These can, through a convoluted process (STTONES), be typed up and converted into standalone NES ROMs as minigames, in a standardized format.

These games all use the same graphics banks (unless hacked). The amount of code is only about 2k or 4k plus a background nametable. (Possibly two, although I've yet to see an example of that.) This is compiled from about 100 lines of code or less.

(Family Basic V2 was copied as GBASIC and FBASIC on the knockoff Subor and Dendy Famiclone computers, and most "educational" unlicensed multicarts included Family Basic in some form as the main attraction, such as Bravesoft Windows 2000.)

These games are not all that interesting as standalone releases but would work well as a multicart combining many examples of what Family Basic can do. In this case every game would use the same graphics, and much of what's in the ROM wouldn't be needed (theoretically) as it's the same each time.

I see this user has made his own multicart of various ROMhacks.
http://bootleg.games/BGC_Forum/index.php?topic=3046.msg21960#msg21960

There's also this whole situation ....
https://clusterrr.com/coolgirl/
https://github.com/ClusterM/coolboy-multirom-builder
https://github.com/coolgirl-multicart/coolgirl-multirom-builder
https://coolgirl.clusterrr.com/constructor/
I'll have to look into that.

Basically I'm looking for a framework which would make it easy to compile minigames or NES ROMs into a multicart, with a multi-page menu and title screen artwork.
« Last Edit: August 13, 2022, 07:17:14 AM by Tygerbug »

Ninjinister

  • Jr. Member
  • **
  • Posts: 81
    • View Profile
Re: Creating own NES multicarts? and Family BASIC
« Reply #1 on: August 14, 2022, 11:56:26 AM »
I was thinking if I could ever finish any games in NESMaker, I'd make my own compilation cart eventually too, without having to piece all of them together into one game. Alternatively I'd make a compilation outright but it'd be made up of individual games so they could be pieced out like if they ever made it on an Evercade cart or something.

All pipe dream stuff since I couldn't even get one game finished, but it was something I've given thought.

There was a program I came across that was supposed to let you put together a multicart but it didn't allow menu customization, you had to pick from a few popular/recurring menu types from other multicarts. I can't remember what it was though.

Tygerbug

  • Newbie
  • *
  • Posts: 22
    • View Profile
Re: Creating own NES multicarts? and Family BASIC
« Reply #2 on: August 14, 2022, 07:22:16 PM »
Possibly mulitcart NES Maker 1.8 (not to be confused with the current game creation software) ...
https://drive.google.com/file/d/17zpooTqVEDf_KD00443woAkGa89JI9ws/view?usp=sharing

.... which was VTXX based. I am not aware of any emulator which can even run these, although Nintendulator would have been my guess.

"forgotusername" made a very interesting multicart which was a hack of an existing VT02 cart. That's not quite what I'm looking for, especially with Family Basic which are mapper 0 and reuse the same graphics each time (so could theoretically use a common mapper). But obviously a multicart has unusual Mapper needs so maybe a hack of existing multicarts is the easiest way to go.

I was hoping someone had made an ASM framework, and there is one for CoolBoy/CoolGirl which can even be run for common games online, but it uses an unusual Mapper, which requires the CoolBoy/CoolGirl hardware or a modded version of FCEUX.

I got this message:

"The only other thing I can think of is if you used the source code from the Supervision 52-in-1 (seen at https://github.com/chimaera66/Supervision-52-in-1-Menu-Disassemble). However, I've never analyzed that, and don't know how much can be done with it. As for something on a common mapper, there's the 11-in-1 by "MottZilla" which runs on MMC1 (https://thegaminguniverse.org/ninjagaiden4/mottzilla/homebrew.html); but there's not really any ways to customize it, it's just a plain selection menu.
"

https://www.romhacking.net/games/4217/



EDIT:
  Here are some notes on how to load a full CHR for menu graphics in Mottzilla's 11 in 1 Multicart, based on his instructions.

load: 3C818 start (D0?), 3C838 end (E0?), 3C820 0 instead of 2

  Some other hackery can be done to draw a full screen of graphics but I don't have the notes on that here.

  Also, annoyingly, the bit of the screen which includes Mottzilla's credit was obfuscated to make that credit hard to remove ... Reversing the tile assignments and capping them at 8 rows, so that 00 becomes 7F. That's hard to work around. Not impossible, but hard.


EDIT: Turns out this was handled fairly easily last time using a reversed TBL file, and copy/pasting the result as ASCII.
« Last Edit: October 18, 2022, 05:25:30 AM by Tygerbug »