Making a new game console (yes really)

greedostick

Bullets QB
20 Year Member
Joined
Aug 11, 2003
Posts
4,712
This looks interesting. Have you considered down the road giving developers a way to order labels, cases, and inserts to distribute games?
 

SpamYouToDeath

I asked for a, Custom Rank and, Learned My Lesson.
15 Year Member
Joined
Oct 3, 2005
Posts
6,087
This looks interesting. Have you considered down the road giving developers a way to order labels, cases, and inserts to distribute games?
Yeah, I'm checking out the options now. I'm imagining something the size of a CD case, but with a foam cut-out for the SD card inside. That should be simple enough to get done cheap. Printed SD card labels are already a cheap item you can buy from AliExpress.

The cards themselves could just be off-the-shelf SD cards at first - it's a standard feature of an SD card, that you can switch it permanently read-only. (Making a card partially-read-only is a huge pain in the ass and companies charge a $30-$40 premium per card for it. That's why the Neki32 console has separate savegame memory instead.)

Fancy copy-protected cards are going to take some work. I'm confident that I can write the firmware for it, but getting it physically into a card could be difficult. The first model might look like a Turbo EverDrive, all piled on a circuit board. (I did consider making a separate cartridge form-factor, to make this part easier. But then I'd need to develop the physical cases for the carts, as well as the slot and connector on the console, and would lose the economy-of-scale of SD cards.)
 

SpamYouToDeath

I asked for a, Custom Rank and, Learned My Lesson.
15 Year Member
Joined
Oct 3, 2005
Posts
6,087
Got the first batch of devkits all put together and tested.

Upcoming work will probably focus on supporting Microsoft Visual Studio (as lots of game devs use it) and Python/PyGame.


1734536602815.jpeg
 

tcdev

NEST Puppet
Joined
Aug 22, 2002
Posts
171
Ultimately I think the copy protection needs to be done per-game. I'm planning that the game cards themselves will contain features to prevent duplicating them. The console itself won't enforce anything. Yes, that's giving up some of the benefit of a game console, from a developer's point of view. But...

Honestly, I think the audience for this console is going to be the sort of user that appreciates and respects this for what it is, and is generally unlikely to engage in any large-scale pirating. And at the end of the day, one or two people working on protection will never out-smart a potentially large team of experienced hackers. Even the big players can't get it right...
 

SpamYouToDeath

I asked for a, Custom Rank and, Learned My Lesson.
15 Year Member
Joined
Oct 3, 2005
Posts
6,087
Chatted with my friends at fullset.io and picking one of these up to tinker with…
Honestly, I think the audience for this console is going to be the sort of user that appreciates and respects this for what it is, and is generally unlikely to engage in any large-scale pirating. And at the end of the day, one or two people working on protection will never out-smart a potentially large team of experienced hackers. Even the big players can't get it right...
Thanks for the orders! I'm probably the first company exporting with this tariff-code from Australia. I wonder if I'll show up on the government stats.

Yeah, anti-piracy isn't high on my list right now. I've set things up so a game could implement it: the game can read exactly the sectors it wants from the SD card, in exactly the order it wants. The OS doesn't cache or reorder the reads - that happens in libc inside the game process. So, in theory, there could be anything going on inside that game card, interacting with the program on the console. It can happen later without breaking compatibility.

I've been working on a port of SDL3 at the moment (and, indirectly, SDL2 and SDL1.2). Its software-rendering code runs reasonably fast.
 

SpamYouToDeath

I asked for a, Custom Rank and, Learned My Lesson.
15 Year Member
Joined
Oct 3, 2005
Posts
6,087
I have some other commitments recently that need my time, but I'm still at this occasionally.

Hitting the SDK soon - an instruction-level simulator that can run a Neki32 game and connect to a debugger, all in software. It's crazy slow but accurate so far; I've been comparing traces of the real ARM CPU with my implementation and making sure things are exact every cycle.

Screenshot at 2025-05-14 13-53-23.pngScreenshot at 2025-05-14 13-46-57.pngScreenshot at 2025-05-14 13-44-45.png

The "consumer version" console is going to be quite similar to the devkit, but with a faster CPU - I found an Allwinner chip with an ARM926 that fits the bill. It can be clocked up to 700MHz according to some reports, and should do 576MHz reliably. The hardware is a bit on hold, as I don't have time to run around and talk to plastics companies. I do want a "real" case for it...
 
Top