Star Keeper - analyzing weird homebrew PCB

Discuss hardware-related topics, such as development cartridges, CopyNES, PowerPak, EPROMs, or whatever.

Moderator: Moderators

User avatar
krzysiobal
Posts: 1037
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland
Contact:

Star Keeper - analyzing weird homebrew PCB

Post by krzysiobal »

There is an interesting homebrew game (Star Keeper) that were released in limited quantity (100 pieces).
https://www.videogamesage.com/forums/to ... n/page/12/
https://www.videogamesage.com/forums/to ... n/page/13/

This game looks quite simple
Image
https://www.youtube.com/watch?v=j1EArie7hYo

and I believe it could be just pure NROM game, though the PCB is as usual quite overcomplicated
* There is 32KB EEPROM, no banking. CPU A and D do not go anywhere except EEPROM. Even CPU R/W is not routed anywhere.

* There is no CHR-RAM nor ROM, instead - this huge PLCC68 has all PPU A driven inside. I don't know what drives PPU D because it is hidden under other chip. I was guessing if this is some kind of memory (dual port maybe?) or CPLD, but haven't found anything with at least 8kB RAM that would match the way it is connected:
* GND - pins 35, 52
* +5V - pin 68
* PPU-A0..A12: pins 55..67
* PPU A13 - pin 1
* PPU /WE: pin 5
* PPU /RD: pin 6

* There is LQFP64 that has some common pins shared with the above PLCC68, it also drives CPU /IRQ. I think it's microcontroller.
* GND - pins 18, 25
* 3.3V - pin 64
* /IRQ pin 41

* There is also 6 pin edge connector on the right side of PCB. Maybe this is some kind of programming interface (JTAG? ISP?) for the LQFP64, and the LQFP64 can also program the PLCC68?

* There is small SO14 chip. I can't read its marking, looks like 74HC??D ?
Image

* On the back side is SO20 chip, marking undreadable.
Image

The cartridge has CIRAM /CE permanently disabled.

Completely no idea what is goin on, graphic in this game does not look like there is need for mysterious custom video mode being used.

Does not also look like there is some copy protection as no cpu signals go there (though CPU might still read data through $2007 from PPU bus, maybe here is the trick).

(I don't have PCB in my hands, rom is undumped and the coin on the top is not a battery - author of this photo just wanted to hide his number, as every PCB was personalised with unique product number 1..100)
Attachments
pcb_image_2.jpg
pcb_image_0.jpg
Image My website: http://krzysiobal.com | Image My NES/FC flashcart: http://krzysiocart.com
NewRisingSun
Posts: 1510
Joined: Thu May 19, 2005 11:30 am

Re: Star Keeper - analyzing weird homebrew PCB

Post by NewRisingSun »

The NROM dump I had seemed to pass on controller input to some external device and not do much else. I took this as a sign that the 6502 program is only a pass-through and that the actual game logic lies in some other chip, much like that DOOM cartridge.
User avatar
Individualised
Posts: 310
Joined: Mon Sep 05, 2022 6:46 am

Re: Star Keeper - analyzing weird homebrew PCB

Post by Individualised »

Strange thing to do for a game that looks like it could be easily be run on the stock NES... If it was mentioned anywhere then I would see it as being a cool little thing but it's not so it just seems deceptive...
NewRisingSun
Posts: 1510
Joined: Thu May 19, 2005 11:30 am

Re: Star Keeper - analyzing weird homebrew PCB

Post by NewRisingSun »

I noticed a certain competitive mindset among hardware-design-inclined homebrew game authors that they want to ensure that their game "will never be emulated". In most cases, that just results in a pitiful custom mapper that is really just an MMC3 with the registers mixed up a bit (I am not naming names here ;) ). But in this case, it may have been a successful proof-of-concept, and maybe also serve as a prototype for more grandiose game ideas.

Of course, it could also be that the NROM dump that I analyzed just wasn't the whole game, though I never saw any suspicious bank register writes or branches/jumps that would seem to transfer control to another code bank.
Joe
Posts: 650
Joined: Mon Apr 01, 2013 11:17 pm

Re: Star Keeper - analyzing weird homebrew PCB

Post by Joe »

krzysiobal wrote: Fri Mar 17, 2023 2:03 pm* There is small SO14 chip. I can't read its marking, looks like 74HC??D ?
74HC08D
krzysiobal wrote: Fri Mar 17, 2023 2:03 pm* On the back side is SO20 chip, marking undreadable.
74HCT573D

No-Intro has some nicer PCB photos.


Edit:
krzysiobal wrote: Fri Mar 17, 2023 2:03 pmI was guessing if this is some kind of memory (dual port maybe?) or CPLD, but haven't found anything with at least 8kB RAM that would match the way it is connected:
IDT7007 maybe?
Markfrizb
Posts: 607
Joined: Sun Dec 02, 2012 8:17 am
Location: East Texas

Re: Star Keeper - analyzing weird homebrew PCB

Post by Markfrizb »

I have this game. I’ve been meaning to post about it. Each pcb is serialized but I believe it’s an on screen serial #.
I can help if needed.
Attachments
FBF9B754-47D6-45E8-B4EF-532BF917A9D3.jpeg
A7C8EBE1-1F9D-432D-8EA7-8CB237B39785.jpeg
6220EB98-5F35-4E95-B26A-7731F05BF869.jpeg
calima
Posts: 1745
Joined: Tue Oct 06, 2015 10:16 am

Re: Star Keeper - analyzing weird homebrew PCB

Post by calima »

The author is on record for all this being an anti-piracy measure. Seems successful so far.
User avatar
krzysiobal
Posts: 1037
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland
Contact:

Re: Star Keeper - analyzing weird homebrew PCB

Post by krzysiobal »

Joe wrote: Fri Mar 17, 2023 5:01 pm IDT7007 maybe?
Oh thank you, thats exatly that.
Other LQFP64 looks like some STM32F405XX microcontroller.

6 pin header on the right is for programming it (UART RX AND TX)
I wonder what is the role of 74573 as I don't see any traces connecting to it. And the only certain address lines going from STM32 to this dual port ram is A5,A6,A7. Maybe 74573 latches the data bits as address bits, just like 74373 for PPU in NES.

Exactly, two grounded inputs of 74573 suggests for sure that 6 high address bits that goes to that RAM are latched. For now, most of the schematic should be accurate.
Image
Image My website: http://krzysiobal.com | Image My NES/FC flashcart: http://krzysiocart.com
User avatar
krzysiobal
Posts: 1037
Joined: Sun Jun 12, 2011 12:06 pm
Location: Poland
Contact:

Re: Star Keeper - analyzing weird homebrew PCB

Post by krzysiobal »

Markfrizb wrote: Fri Mar 17, 2023 7:36 pm I have this game. I’ve been meaning to post about it. Each pcb is serialized but I believe it’s an on screen serial #.
I can help if needed.
Thank you for the photos, that helped to finish the schematic a lot!
Are you maybe able to read back the EPROM content?

It is still unclear for me how for example the audio (music and sound effects) are generated, if there is no logic in the EPROM. Theoretically, STM32 can write anything to the dual port ram, and then its content can be read back by PPU and passed to CPU (via $2007). That way, music data could be stored inside NES ram and played back from there, but still for sound effects there need to be any logic involved.

Or how the controller data is passed? Is again, any signle memory cell in that dual port ram used as a buffer between CPU and STM32?
Image My website: http://krzysiobal.com | Image My NES/FC flashcart: http://krzysiocart.com
Markfrizb
Posts: 607
Joined: Sun Dec 02, 2012 8:17 am
Location: East Texas

Re: Star Keeper - analyzing weird homebrew PCB

Post by Markfrizb »

Are you maybe able to read back the EPROM content?
Yes, I can. Will do it this week. Since it’s a homebrew, is there any restriction on posting it here?
Fiskbit
Posts: 891
Joined: Sat Nov 18, 2017 9:15 pm

Re: Star Keeper - analyzing weird homebrew PCB

Post by Fiskbit »

We want to support developers and this is a new, homebrew game that may be monetized further, so please don't post it publicly. I suggest keeping the ROM private among researchers. Documenting the hardware, though, is of great interest.
User avatar
Individualised
Posts: 310
Joined: Mon Sep 05, 2022 6:46 am

Re: Star Keeper - analyzing weird homebrew PCB

Post by Individualised »

Fiskbit wrote: Sun Mar 19, 2023 10:01 pm We want to support developers and this is a new, homebrew game that may be monetized further, so please don't post it publicly. I suggest keeping the ROM private among researchers. Documenting the hardware, though, is of great interest.
Especially considering the developer was so concerned about copy protection that they decided to make their NES game not an NES game.
Markfrizb
Posts: 607
Joined: Sun Dec 02, 2012 8:17 am
Location: East Texas

Re: Star Keeper - analyzing weird homebrew PCB

Post by Markfrizb »

Fiskbit wrote: Sun Mar 19, 2023 10:01 pm We want to support developers and this is a new, homebrew game that may be monetized further, so please don't post it publicly. I suggest keeping the ROM private among researchers. Documenting the hardware, though, is of great interest.
ok
User avatar
aquasnake
Posts: 515
Joined: Fri Sep 13, 2019 11:22 pm

Re: Star Keeper - analyzing weird homebrew PCB

Post by aquasnake »

oops, for the reason of nonsense, this post has been removed, sorry 4 that
Last edited by aquasnake on Sun Jan 28, 2024 6:52 am, edited 1 time in total.
User avatar
aquasnake
Posts: 515
Joined: Fri Sep 13, 2019 11:22 pm

Re: Star Keeper - analyzing weird homebrew PCB

Post by aquasnake »

oops, for the reason of nonsense, this post has been removed, sorry 4 that
Last edited by aquasnake on Sun Jan 28, 2024 6:53 am, edited 1 time in total.
Post Reply