Action 53 multicart engine

A place where you can keep others updated about your NES-related projects through screenshots, videos or information in general.

Moderator: Moderators

tepples
Posts: 22819
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Post by tepples »

Action 53 0.03 is out

0.03 (2012-06-21)
  • FFD: pads to power of 2 banks early instead of adding banks on demand during CHR and screenshot insertion
  • Can insert CHR and screenshot data into the last bank if needed
  • New values for number of players: 2-4 alt and 2-6 alt
  • "Make your selection now!"
  • Collection: properly clear top score in Munchie Attack
  • Collection: added NES15 and Pogo Cats
  • Collection: removed LJ65 due to scenes a faire failure
  • Collection is 12 games and 2 toys in 512 KiB
Collection | Menu source code
User avatar
rainwarrior
Posts: 8758
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Post by rainwarrior »

I like the whoo-yeah intro music.
slobu
Posts: 276
Joined: Tue Jul 12, 2011 10:58 am

Post by slobu »

rainwarrior wrote:I like the whoo-yeah intro music.
It takes tepples to make a ROM go write..
tepples
Posts: 22819
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: New multicart engine: Action 53

Post by tepples »

I'm backing up the source code for the version of the menu used in Double Action 53: Volume 2.

0.04 (2014-11-06)
  • Menu: Fixed certain combinations of tab lengths causing blank block in 11th line of tab display
  • Menu: Bank arrow sprite positioned correctly even if tab width differs from first tab's width
  • Menu: Fixed uncleared line caused by rapidly switching from a long to medium to short page
  • Menu: Performs a write sequence to fully initialize mapper 28 without losing support for mapper 34
  • Menu: Can customize the title screen using a .png file and a palette specified in the makefile
  • a53build: startbank= option to leave several 32K banks blank at the start of the ROM, for adding mapper 28 UNROM games
  • a53build: blank banks inserted as power-of-two padding are no longer mistakenly included in the ROM directory
  • innie: Supports [section title] syntax
  • a53extract: support ROMs created with startbank=
  • Collection: moved NES15 into unused space in Concentration Room
  • Collection: added Russian Roulette to unused space in Concentration Room
  • Collection: abandoned author-based groups
  • Collection is 12 games and 3 toys in 256 KiB
Attachments
a53menu-0.04.zip
Make your selection... yet again.
(161.77 KiB) Downloaded 910 times
tepples
Posts: 22819
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Action 53 multicart engine

Post by tepples »

Again (ab)using the forum as backup, this time for my progress toward volume 3.
  • Menu: Update music engine from Pently 3 to Pently current
  • Menu: Update VWF engine to unrolled shift version
  • Menu: Update source code file naming conventions
  • Menu: Remove antialiasing from start button notice
  • tools/*: Convert to Python 3
  • makefile: Work around quirks in Python for Windows
  • a53build: Specify unused ranges for multiple PRG banks in one activity
  • a53build: ROMs using Action 53 mapper (28) boot as if they're UNROM (2)
  • a53build: If prgbank not given, guesses last ROM bank for UNROM (2) and Action 53 or first for others
  • a53build: Refactored title validation and ROM patching into separate subroutine
  • a53build: Sorts ROMs by descending PRG size before inserting them, fixing arbitrary mixes of C?NROM and [ABU]NROM
  • autosubmulti: Doesn't limit input or output to one directory
Attachments
a53menu-0.05wip1.zip
(163.6 KiB) Downloaded 776 times
tepples
Posts: 22819
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Action 53 multicart engine

Post by tepples »

More progress (call this 0.05 alpha 2):
  • Menu: Include title screen in data part of last bank (near ROM directory) instead of menu executable
  • a53build: Set filename and palette of title screen with config file keywords titlescreen= and titlepalette=
  • a53build: Handles grayscale mode screenshots and indexed screenshots with black not first
  • a53build: Correctly exit-patches larger ROMs (breaks a53extract though)
Attachments
a53menu-0.05wip2.zip
(169.05 KiB) Downloaded 774 times
User avatar
mikejmoffitt
Posts: 1353
Joined: Sun May 27, 2012 8:43 pm

Re: Action 53 multicart engine

Post by mikejmoffitt »

Hey, is that bit-banged 7-bit PCM playback?

I was kind of hoping the "Make your selection now" speech would be rhythmically integrated and transition back to the music, though.
tepples
Posts: 22819
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Action 53 multicart engine

Post by tepples »

More changes to the menu in preparation for volume 3
  • Menu: Integrate JRoatch's coredump tool
  • Menu: Up at title screen no longer corrupts the background; it was a debugging tool anyway (reported by Greg Caldwell)
  • exitpatch: Exit patches do not set stack pointer, so that coredump (A+B+Reset) can see the stack pointer
  • exitpatch: Fixed marking exitmethod=none banks as already patched
  • a53build: 32K mappers (BNROM, AOROM) default to last PRG bank instead of first, working around an exit patch problem
  • a53build: Load ROMs on a blank-named page but don't list them as titles, to allow including unreachable TCRF-bait content (requested by [redacted])
  • Added tools/prgunused.py to find runs of 32 or more bytes of value $00 or $FF in the PRG ROM of an iNES image
Attachments
a53menu-0.05wip3.zip
(177.85 KiB) Downloaded 774 times
User avatar
dustmop
Posts: 136
Joined: Wed Oct 16, 2013 7:55 am

Re: Action 53 multicart engine

Post by dustmop »

None of these work for me. wip1 hard-crashes after pressing start at the title screen, wip2 and wip3 don't even render the title screen, they just show solid grey. Running fceux 2.2.3 and Nestopia 1.4.1. Do I need a specific build?
tepples
Posts: 22819
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Action 53 multicart engine

Post by tepples »

Are you trying to run a53menu.nes by itself, without using a53build.py to add games? Do I need to add code to the menu to detect that no games have been added?
User avatar
rainwarrior
Posts: 8758
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: Action 53 multicart engine

Post by rainwarrior »

tepples wrote:Are you trying to run a53menu.nes by itself, without using a53build.py to add games? Do I need to add code to the menu to detect that no games have been added?
I think the simplest way to keep people from running a53menu.nes and being disappointed is to rename it to a53menu.bin so we don't mistake it for something that we could run.

I, like dustmop, had made this same mistaken assumption but didn't mention it. Of course I could have read 10 pages of README.txt to discover that it's not supposed to work as-is, but I'd already assumed it was some other problem long before then.
User avatar
dustmop
Posts: 136
Joined: Wed Oct 16, 2013 7:55 am

Re: Action 53 multicart engine

Post by dustmop »

Agree with rainwarrior here. I think POLA applies. Either the ROM shouldn't be runnable (.bin extension works), or it should fail fast, with a more obvious indication that things are broken.
tepples
Posts: 22819
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Action 53 multicart engine

Post by tepples »

Turns out README.txt already mentioned that problem:
Q. Why does a53menu.nes just hang?

This file contains the code for the menu. It contains no activities
and thus will not work unless activities are added using a53build.py.
But the fact that this wasn't very discoverable is itself a bug. So I want to make several layers of fixes:
  1. Build a53menu.prg without a header instead of a53menu.nes with a header: Done in my tree
  2. Display an error message if the key block is still FF-filled: Done in my tree
  3. Describe the expanded capabilities of Action 53 when running with mapper 28: Begun in my tree; detailed documentation will have to wait until step 4 is done
  4. Reorganize the documentation to make it less tl;dr: I'll need help with finding a good approach.
JRoatch
Formerly 43110
Posts: 428
Joined: Wed Feb 05, 2014 7:01 am
Contact:

Re: Action 53 multicart engine

Post by JRoatch »

I initially had trouble compiling Action 53 because I didn't see where the config file was in the makefile, but then I found it in the tools directory. While editing the config, I had thought you had placed all the stuff outside the a53menu directory because of all the ../. I eventually figure out that the working directory for that script seems to be the tools directory instead of where the makefile was.
tepples
Posts: 22819
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Action 53 multicart engine

Post by tepples »

JRoatch wrote:While editing the config, I had thought you had placed all the stuff outside the a53menu directory because of all the ../. I eventually figure out that the working directory for that script seems to be the tools directory instead of where the makefile was.
I have changed the builder to drop the implicit rule "paths are relative to the working directory, and the working directory happens to be tools". Instead, paths in a config file will have the same semantics as paths in C #include, ca65 2.14+ .include, and HTML href and src attributes: paths are relative to the directory containing the config. I did this for two reasons: to make volume 3's workaround for the PowerPak's PRG size limit easier to automate in the makefile, and to make the rule easier to explain in the docs to avoid confusion like yours.
Post Reply