Flash cart(ridge)

bad
Yeah. I did it.

I’ll read the code and make some original program.
Thank you.

5 Likes

Yay! feel free to ask questions.

The cart code is still very primitive.

You’ve got a point there. I had trouble in the beginning but then I started using the ArduBoy name as a reminder. A is left of B :smiley: and never had a problem again.
I’ll update the image so it’s more intuitive

1 Like

I was wondering how hard would it be to have the flashcart also able to backup independent saves to the serial flash and restore them to eeprom? For instance if a game uses eeprom it could set a flag and whenever the game is loaded, the prior game’s save (if applicable) is backed up to the serial flash and the new game’s save is written from serial flash to eeprom.

Not a huge deal breaker, but it would be a nice feature to have. Haven’t looked at how the games are all stored in the serial flash, but should be easy to allocate some kind of look up table like a vector table at the head or end of the map that would tell which games have eeprom saves and where in the flash memory those saves are allocated.

4 Likes

I had an idea for that but I stoped persuing it when I reached the 3K bootloader size ( I just like the 1K extra space too much :grin: ) and a sketch will get access to exclusive save data in flash too.

What I had in mind is that each game header has a page address pointing to a 4K block
where the EEPROM data is backuped to/ restored from (4K because of minimum erase size)
That same page address is also stored in one of the reserved interrupt vectors of the flashed sketch (this is done by the flash builder tool) just like it’s done to access the sketch data file in flash now.

Prior to flashing a new sketch the EEPROM page is read from the vector, the 4K block at that address is erased and EEPROM is backed up to it. Then the new sketch is burned, the EEPROM page address is read from the vector and the EEPROM backup is written to EEPROM.

The 16 byte system EEPROM area wouldn’t be backed up for convenience and sanity :slight_smile:

3 Likes

Lol whaaaaaaaaat is this? @n602 did you take down one of the kickstarter update videos and transcode it to run on an Arduboy? Please tell me there is a video of this?

I know I’m late to the party as always on this but wooooow!!

Oh, it was not me that converted it for Arduboy :sweat_smile:
Mr. Blinky taught me where to find it as a video to check the operation of Flash-Cart.
Somewhere in Mr. Blinky 's website, I guess that it still exists, but I am confused as to whether I can make it public.
Please ask Mr.Blinky about it.:wink:

It was me :slight_smile: I downloaded the YouTube video extracted the frames and converted them to monochrome bitmaps using IrfanView then used a python script to put the bitmaps into a binary

6 Likes

@chame your paddle is cool. I want to make one too. Where can I found the analog version of the breakout game ?

Sorry I didn’t upoaded it yet.
Please wait for a few days.
I will explain it as a new topic.

2 Likes

One-step closer to the original PONG game.
Great idea of using the arduboy cartridge connector.

What’s the name for this connector interface?
Ardulink?
ABlink?
??? ???

Man I need to stop chatting and get back to work!!!

Just Expansion connector :slight_smile: But may dub it link connector.

Just a heads up. I’m making an important pin change to the connector: The signals on pin 11 and 9 will be swapped. So pin 11 will become SDA and pin9 will become RX

I thought about this a long time. With this change a proper serial connection is possible and I2C should still be usable too (as long as there is no SPI transfers simultaniously)

I’ll add this ‘link wiring’ scheme to the homemade package when I’ve updated the bootloader and libraries.

3 Likes




Now I put the rotery encoder in a Frisk(breath mint candies) case,

5 Likes

Having the extended rear case somehow reminds me of the design of the old ipod classics.

1 Like

GREAT JOB on the extended rear case.
Never thought that anyone could’ve done it this well.

@chame

How about using two rotary encoders for two player pong? :smiley:

Just a rude mockup:

4 Likes

It listens to ska? :P

2 Likes

Very nice photo! :slight_smile:
Pong is a basic of two-player game, but nornal pong is a little borling.
How can it be expanded like arcanoid?

P.S. I’m busy in December, please wait for my exlanation about paddle controller.

Just like Arkanoid 2

3 Likes

I didn’t know this! :):sweat_smile:

1 Like

In case anyone was wondering… Yes, you can (just barely) fit a flash IC inside an Arduboy without changing out the back case.

To make a bit more room, I moved the battery cell up slightly the buzzer over slightly. The case still bulges out a tiny bit, but not enough for me to worry about. If I moved the one wire that is on top of the IC it would probably fit better. Don’t forget to wrap it in kapton tape for isolation.

I did not include any voltage conversion in mine. While reading the datasheet I noticed that the absolute maximum voltage is all the way up to 4.6V (higher than the 4.2V of a fully charged Li-ion cell). Running it higher than the normal range of 2.7V - 3.6V might reduce the lifetime of the flash IC a bit, but these flash ICs are cheap enough that it was worth the gamble for me.

4 Likes