Jump to content
IGNORED

"Bad Apple" on cartridge


OLD CS1

Recommended Posts

I want to put @Tursi's "Bad Apple" demo on a cartridge for next year's VCF-SE.  It is 15MB.  Too big for the FG99.  Too big for the carts and EPROMs I have.  Too big for SAMS and a nanoPEB.  How to do it?!  Our TI needs to represent against all the other systems which have it.

  • Like 3
Link to comment
Share on other sites

Well, the largest normal bank switched cart is 2MB and uses eight latches with a LS377.  We could need three more latches to do 16MB.  The Dragon’s Lair cart is an option, but we need to adapt the cart maker programs to use extra lines (data and address I believe) on this type of cart past the eight normal address ones to properly build the bank switching.  
 

I don’t remember who did the cart building program offhand but they can extend it up to probably 128MB easily.  The second challenge is programming the eprom in the DL cart from what I remember Tursi saying. 

  • Like 4
Link to comment
Share on other sites

hmmmm what I have is not the actual cartridge.  I guess @Tursi never released that, just the packed video data, or I missed it somewhere.  Might have to knock on his PMs to see if he has the time or interest in this.  Or just wait for him to respond to being @ed. :D

  • Like 1
Link to comment
Share on other sites

Clever mis-use of a GROM might work.

 

That is to say, just have a "pretty much useless" GROM, (or electronically equivalent circuit) that just counts from 0 to 255.  Based on the value stored/retrieved from this GROM, you could latch a 'page'.

This, combined with a normal bankswitch, could give you a cartridge that holds a lot more. (you would page out whole banks of pages, using the the latched GROM value)

 

 

Link to comment
Share on other sites

5 hours ago, SkyPilot said:

Cartridge demos are to showcase what is possible with a system, but if it can't be made on the demo system, isn't that cheating?

You mean, like Dragon's Lair?  It is possible, but only with the right tools.

  • Like 1
Link to comment
Share on other sites

The reloading feature of the FG99 could be used (https://endlos99.github.io/finalgrom99/#reloading). The 15MB image would have to divided into 1MB chunks. There would be some delay (1-2 seconds?) between each part, and it would require some changes to the original code. 

Quote

To initiate the reload of a new program, the sequence >99, "OKFG99", >99 followed by the file data must be sent. Since the new image will overwrite the running image, the reload code must be relocated to RAM before it can be run. To check if the new image has been loaded, the program must watch addresses >6000->6200 for a non-zero word to appear. (For a reloaded ROM program, watching >6000 suffices.)

 

  • Like 2
Link to comment
Share on other sites

I'm currently finalizing my own version of the Bad Apple demo. It's 4.4 MB, stored in bank-switched module ROMs. It runs in Mame ("ti99_4ae", European console at 50 Hz), with the "gromemu" type that @mizapf extended recently. I'm not familiar with recent hardware, but I can adapt the code if that helps.

Edited by Eric Lafortune
  • Like 2
Link to comment
Share on other sites

9 minutes ago, Eric Lafortune said:

I'm currently finalizing my own version of the Bad Apple demo. It's 4.4 MB, stored in bank-switched module ROMs. It runs in Mame, with the "gromemu" type that @mizapf extended recently. I'm not familiar with recent hardware, but I can adapt the code if that helps.

I would love to run "Bad Apple".  Do not care whose it is, I just cannot stand to have to hang my head when a Commodore 64, an Apple //c, and a ZX Spectrum can run it right there in front of me.  Oh, the shame!

 

I believe 4.4MB is just larger than our largest cartridge (I think 4MB is the max we have right now, but @Ksarul or @acadiel can correct me on that.)

 

We have utilities at our disposal for this: UberGROM, FinalGROM99, 32k expansion and 1MB SAMS.  The C64 "Bad Apple" demo runs off a single 170k floppy (okay, a little larger since it uses 40 tracks versus the standard 35,) I would hope we could do it on a 360k floppy.

  • Like 1
Link to comment
Share on other sites

Well, Eric's work notwithstanding, I could probably repurpose a DL cart board. I dunno what to do with them anyway, and I've offered in the past. People tend to ignore what I say. ;)

 

Unfortunately, I don't have anything unpacked at the moment. 

 

As for it the player needing to be changed for the hardware - nope. 32MB of the cartridge works just like any other 32MB cart (assuming you always write the same data for the bank switch, anyway). It's only when you need to differentiate more than that that it becomes an issue.

 

However, the standard conversion/player toolchain runs at 8fps due to being in color - Bad Apple runs at 16fps since it's monochrome. So it has a hacked player. ;) I never converted it to a cartridge since there was no 16MB cartridge at the time.

 

Every other approach works on making it fit into memory using compression techniques and lossy data. I didn't bother, I just wanted to exercise the playback toolchain and see how it looked with a higher framerate. ;) The audio is terrible though. If I was going to do it all again, is there a video with very clean audio I could start with? Back then, the only one I found was really clippy.

 

I was tempted to do the metal one instead... 

 

 

 

  • Like 5
Link to comment
Share on other sites

16 minutes ago, Tursi said:

Well, Eric's work notwithstanding, I could probably repurpose a DL cart board. I dunno what to do with them anyway, and I've offered in the past. People tend to ignore what I say.

We never ignore, we just over-look stuff.  So, yeah, I would be very grateful for a re-purposed DL cart running "Bad Apple" for next year's VCF-SE.

 

17 minutes ago, Tursi said:

I was tempted to do the metal one instead... 

¿Por qué no los dos?  How does the metal rendition match up to the video?

  • Like 1
Link to comment
Share on other sites

It probably doesn't match up. ;)

 

Anyway, I did the work to revise the toolchain for generating mono video. Everything was still pretty theoretical when I did the Bad Apple conversion, so probably worth updating it anyway.

 

You can find a cartridge image here now: http://harmlesslion.com/temp/TI_vids/

 

Might be small enough to attach, too. It's still a 16MB cartridge, of course.

 

When do you need it in hardware?

 

 

misc_BadApple8.zip

Edited by Tursi
  • Like 4
Link to comment
Share on other sites

6 hours ago, Tursi said:

Every other approach works on making it fit into memory using compression techniques and lossy data. I didn't bother, I just wanted to exercise the playback toolchain and see how it looked with a higher framerate. ;) The audio is terrible though. If I was going to do it all again, is there a video with very clean audio I could start with? Back then, the only one I found was really clippy.

I started from what I presume is the standard Bad Apple video. The audio seems ok to me, although I'm using a chiptune instead (and lossless video compression).

  • Like 1
Link to comment
Share on other sites

19 hours ago, HOME AUTOMATION said:

1MB=20sec. approx.

Oh dear, that's a lot slower than I expected.

 

The C64 compression looks somewhat similar to the one used in the megademo for the spinning cube: 

 

 

It's a while since I did this, but I think the algorithm was drawing the whole screen using 256 characters, only updated the parts of the name table that had changed, and set a maximum on the number of updated characters between each frame.

 

  • Like 3
Link to comment
Share on other sites

1 hour ago, mizapf said:

Everybody seems to be pretty familiar with "Bad Apple" ...

 

This is the first time I ever heard about it, including the video. But I'm not really a measure here, I guess.

Ugh.  Boomers.

  • Haha 1
Link to comment
Share on other sites

As much as I loved giving him crap at VCF-SE for the lame excuse of a 15MB file not being able to be put in a TI cart (since that is exceedingly lame), I'm happy to design a quick cart if needed with 8 or 16MB of flash ROM for this effort. 

 

But, it has to be doable and without a ton of work effort. THe TI is sometimes challenged in specs, but this cannot possibly be the showstopper.

 

Jim

  • Haha 1
Link to comment
Share on other sites

1 minute ago, brain said:

As much as I loved giving him crap at VCF-SE for the lame excuse

I mean, it did sound like a lot of "Wah wah wah! I don't have a large enough cartridge!"  Watching the demo in Classic99 made me wish the debugger could show bank switches.  ::demanding user intensifies::

Link to comment
Share on other sites

9 minutes ago, OLD CS1 said:

I mean, it did sound like a lot of "Wah wah wah! I don't have a large enough cartridge!"  Watching the demo in Classic99 made me wish the debugger could show bank switches.  ::demanding user intensifies::

Truly, it did.  It was like a jet engine's worth of "LAME" coming from across the room.

 

It was all I could do to not leverage it in some sick TI-platform burn from the Commodore table.

 

Jim

  • Haha 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...