Jump to content
IGNORED

Common code base with UnoCart


Al_Nafuur

Common Code base Project Name  

10 members have voted

  1. 1. How shall we name the common code base project on Github

    • United Carts of Atari (UCA)
      5
    • MultiCart10400 (MC10K)
      0
    • Open Atari ARM MultiCarts (OAAM)
      1
    • Pharaoh Cart
      1
    • Trinity Cart
      3

This poll is closed to new votes

  • Please sign in to vote in this poll.
  • Poll closed on 12/19/2022 at 10:26 AM

Recommended Posts

Instead of migrating every new feature (32 char menu, exit function and new bankswitchings) to the UnoCart we should aim for a common code base.

It would be easier if we re-implement the SD card code into the PlusCart code (to the submenu "SD-Card" ?) and use switches to compile for the UnoCart or the PlusCart.

 

we also could use a more generic approach and switch the hardware differences directly, so we could build for:

  • using lower or higher GPIO port for the data bus
  • with or without WiFi module
  • with or without SD-Card

so we also could build for a generic hardware (PCB) like @DablioGames is using for his PlusCart's and UnoCart's.

 

 

@DirtyHairy, @Andrew Davie, @Thomas Jentzsch any ideas or suggestions ?

 

 

Link to comment
Share on other sites

3 minutes ago, Thomas Jentzsch said:

I am all for a common code base.

?

3 minutes ago, Thomas Jentzsch said:

And for games which require a UnoCart, ...

Which games are there that require a UnoCart?

 

4 minutes ago, Thomas Jentzsch said:

.. being able to customize the code to the bare minimum required,

Which code do you mean, ROM or firmware code ?

5 minutes ago, Thomas Jentzsch said:

 would make physical releases much easier too.

Physical release of a game or UnoCarts/PlusCarts ?

 

Link to comment
Share on other sites

17 minutes ago, Al_Nafuur said:

Which games are there that require a UnoCart?

IIRC at least one is in the making. 

 

17 minutes ago, Al_Nafuur said:

Which code do you mean, ROM or firmware code ?

The latter.

 

17 minutes ago, Al_Nafuur said:

Physical release of a game or UnoCarts/PlusCarts ?

A game.

 

For Harmony games there are multiple variations of boards existing. The hardware is optimized to cost, but I suppose the firmware uses the same code base.

  • Like 1
Link to comment
Share on other sites

10 minutes ago, Thomas Jentzsch said:

For Harmony games there are multiple variations of boards existing. The hardware is optimized to cost, but I suppose the firmware uses the same code base.

Yes the PlusCart/UnoCart code could be compiled without WiFi and without SD-Card, so only the flash autostart function (and "Offline ROMs") could be used to support a cheap PlusCart/UnoCart based "melody" board for physical game releases.

 

 

btw. this could be done with the current PlusCart code already.

 

Edited by Al_Nafuur
Link to comment
Share on other sites

47 minutes ago, Al_Nafuur said:

Which games are there that require a UnoCart?

There are two that I know of:

  • Gorilla Force
  • Wushu Masters

Both being developed by Zachary Scolaro (ZackAttack) and Jason Davidson (MayDay). I'm not sure they've been actively developing them in the past year or so as I haven't heard anything from them since I debuted the games on ZPH.

 

- James

 

 

  • Like 2
Link to comment
Share on other sites

Unifying the two codebases would definitely be useful. What we'd need to do is imo

  • Set the code up such that Wifi, SD and GPIO assignment can be selected at build time
  • Port the Makefiles for Linux and MacOS to the new codebase
  • Port the ACE updater and add some sort of identification to make sure that people don't flash the wrong firmware on the wrong device (I am not sure whether this is really necessary though as the Pluscart doesn't have an SD slot for custom updates)
  • ...

However, I have too little spare time and too many projects, and the payoff in terms of less maintenance for the current firmware is much less than what would be needed to create a stable merged firmware, so I won't be starting this myself in the foreseeable future. I'll be happy to assist and contribute though if someone else starts out on this.

 

If we want to do this we should also actively involve @electrotrains, @ZackAttack and @MacRorie in this discussion. In particular, I know that @ZackAttack is working on his own fork of the firmware which contains his version of bus stuffing (among other things). If we want to create a unified firmware we should try to integrate all features that are floating out there, otherwise we are just creating yet another fork.

 

Regarding "standalone" builds for custom carts: I have done this in the past for @MacRorie, and the Unocart repo contains a version of the firmware that compiles into small drivers for the various banking schemes that can be concatenated with a ROM file in order to get a flashable image that runs the ROM directly from flash. There isn't support for many drivers yet, though, as I myself have no need for it and... too little spare time for too many projects :P 

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

17 hours ago, DirtyHairy said:

If we want to do this we should also actively involve @electrotrains, @ZackAttack and @MacRorie in this discussion. In particular, I know that @ZackAttack is working on his own fork of the firmware which contains his version of bus stuffing (among other things).

only @ZackAttack has a PlusCart and is a member of this club. @electrotrains and @MacRorie are not jet members of this club (which I unfortunately set up private), so we have to invite them or move the discussion to a public place.

 

I missed to offer a PlusCart to @electrotrains, so I just sent him a PM and offered him one.

 

Link to comment
Share on other sites

2 hours ago, Al_Nafuur said:

only @ZackAttack has a PlusCart and is a member of this club. @electrotrains and @MacRorie are not jet members of this club (which I unfortunately set up private), so we have to invite them or move the discussion to a public place.

 

I missed to offer a PlusCart to @electrotrains, so I just sent him a PM and offered him one.

 

Maybe if you asked @Albert he could flip the "private" bit in the database and make the club public.

 

  • Like 1
Link to comment
Share on other sites

2 minutes ago, Andrew Davie said:

Maybe if you asked @Albert he could flip the "private" bit in the database and make the club public.

 

I thought about that, but I am not sure if every comment from every member in this club was meant to be public. e.g. the "Brazilian PlusCart" thread. So we first should inform or ask every member of this Club if it is OK to make all comments here public..

Link to comment
Share on other sites

  • 2 weeks later...
On 1/13/2021 at 12:27 PM, ZeroPage Homebrew said:

There are two that I know of:

  • Gorilla Force
  • Wushu Masters

Both being developed by Zachary Scolaro (ZackAttack) and Jason Davidson (MayDay). I'm not sure they've been actively developing them in the past year or so as I haven't heard anything from them since I debuted the games on ZPH.

 

- James

 

 

They are still in active development. James, I plan to reach out to you again once I have something close to the final release. You were already kind enough to show off the early prototypes and I didn't want to take up anymore of your time until we have a cart worthy version to send you.

 

As @DirtyHairy said, I have been working on a fork with support for bus stuffing. I plan to release it and the source as a universal bootloader once it's fully functional. I'm aiming to have it released before July of this year.

 

 

  • Like 3
Link to comment
Share on other sites

I have added a SD-Card breakout board to an PlusCart breakout PCB (with defect WiFi). The UnoCart firmware runs with minor changes to the GPIO Port definitions:

 

 

I added switches for WiFi and SD-Card to an local test branch of the PlusCart firmware:

 

 

This was done within a few hours, but I can not get the (UnoCart) SD-Card lib to work with the PlusCart code. This is mostly because the PlusCart is using the standard HAL libs and the UnoCart is using the Peripherals lib from STM and the TM extensions. As far as I see both can not be used in one Project.

 

 

 

Link to comment
Share on other sites

 

8 minutes ago, Al_Nafuur said:

The UnoCart firmware runs with minor changes to the GPIO Port definitions

I added switches for WiFi and SD-Card to an local test branch of the PlusCart firmware

I have also added switches for the UnoCart GPIO hardware to the code, so the code should be usable on the UnoCart too.

The code can be compiled for PlusCart GPIO or UnoCart GPIO and any combination of "peripherals" (There are still a lot of things missing like the SD logo, and deactivation of the WiFi symbols)

 

The combinations are:

With WiFi -> PlusCart

With SD-Card -> UnoCart

With WiFi and SD-Card -> PlunoCart ?

No peripherals (only "Offline ROMs" in flash) -> xxxCart ?

 

 

9 minutes ago, Al_Nafuur said:

This was done within a few hours, but I can not get the (UnoCart) SD-Card lib to work with the PlusCart code. This is mostly because the PlusCart is using the standard HAL libs and the UnoCart is using the Peripherals lib from STM and the TM extensions. As far as I see both can not be used in one Project.

I am searching for some days now for a good example of using the SD-Card via SPI on a STM32F4xx with the HAL libs. I found some for the STM32F1xx and STM32F7xx but I can not get them to work with my setup.

The TM FatFs implementation includes a search function which we could use for our "Search ROM" on the SD Card. Also "My Recently Played ROMs" could be implemented with the SD-Card if we use a folder on the SD-Card  

  • Like 1
Link to comment
Share on other sites

1 hour ago, ZackAttack said:

They are still in active development. James, I plan to reach out to you again once I have something close to the final release. You were already kind enough to show off the early prototypes and I didn't want to take up anymore of your time until we have a cart worthy version to send you.

That's great to hear! Looking forward to the updates. ?

 

- James

 

Link to comment
Share on other sites

Finally I got the SD-Card FatFs lib to work:

 

 

features still missing:

  • File Search
  • Text file reader
  • SD logo on boot and load screen.
  • "My Recently Played ROMs"
  • SD-Card info (size, disk usage) in "Setup/System Info"
  • Firmware update via SD-Card

 

 

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

On 1/25/2021 at 3:38 AM, Al_Nafuur said:

 

DuoCart ?

?

That is a good name for a cool product. Also I would like to see you personally sell these because you have a clear love of the system. Nothing particularly against third party sellers necessarily but I feel some aren’t really enhancing the hobby so much and are in it more for profit.

  • Like 1
Link to comment
Share on other sites

1 hour ago, batari said:

That is a good name for a cool product. Also I would like to see you personally sell these because you have a clear love of the system. Nothing particularly against third party sellers necessarily but I feel some aren’t really enhancing the hobby so much and are in it more for profit.

Totally agree, but this would be unlikely to stop some.

Link to comment
Share on other sites

On 1/25/2021 at 6:38 AM, Al_Nafuur said:

 

DuoCart ?

?

I suggest "The new Game Modem" or just "Game Modem", AOL isn't going to mind and it best conveys what it does -

 

We can compete for high scores and find new games, so it feels more like the Game Modem and it is connecting via our wireless modems.

 

The Harmony and Uno are awesome with functionality like the SuperCharger flashcart from bitd, but the Game Modem then and now is a cart that is different

 

 BigZenithBestGlow.thumb.jpg.3f8c50ce7a1d96f52e4d4f696d26be4c.jpg

With Game Modem everyone knows who the real players are ?

Link to comment
Share on other sites

  • Recently Browsing   0 members

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