NeoGeoX Hacking and Mods

Joined
Nov 10, 2012
Posts
30
Nice NeoTurfMasta. That would be handy.. my ngx is just siting in pieces beside me because I don't feel like putting it back together then taking it apart every time I want to test something.

Also, there were some issues with some dd dumps earlier so those have been fixed.
 

mr_e

Tarma's Gun Polisher
Joined
Sep 24, 2012
Posts
108
Was bored and decided to relocate the internal SD to the External SD slot. This will work great for testing new image files and not force me to constantly open the system. Basically you remove 7 smd jumpers and solder the pads directly to the SD slot. Works great. I lose the ability to play Ninja Masters from the SD slot, but its easily removed if I care to.

UErb7.jpg

Awesome!
 

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
if someone has a good close up pic of the SD pins, I can do a quick how if anyone else wants to tackle this. I refuse to open mine again... Pain in the ass, and I lost a damn screw.
 

FA-MAS

Kula's Candy
Joined
Oct 3, 2009
Posts
299
Curious, I plugged Ninja Masters into my Mac. The only machine I have with an SD card and it doesn't mount the partition nor show the device in Disk Utility. A Normal SD, even if unformatted shows up in Disk Utility.

I look in my Console Log and I see this:
Code:
12/25/12 10:01:43.000 PM kernel[0]: AppleSDXCSlot::setPowerState(0xffffff8051e1dc00, 1 -> 2) timed out after 30258 ms

Think it's possible the card's different somehow?
 
Last edited:
Joined
Nov 10, 2012
Posts
30
if someone has a good close up pic of the SD pins, I can do a quick how if anyone else wants to tackle this. I refuse to open mine again... Pain in the ass, and I lost a damn screw.

IMG_1115_zpsfa4635f3.jpg


if anyone else wants close up pic of anything let me know.I don't plan on putting this thing back together anytime soon.
 

mr_e

Tarma's Gun Polisher
Joined
Sep 24, 2012
Posts
108
So I took the image that I received last night, then dd dumped it back down to a 2g USB thumb drive. The transfer worked, I see the partitions and the filesystem layout and it looks like it successfully did a block level copy. Burningtoys, you willing to do the same thing and see if you can boot the handheld off of it? Thinking take the internal SD out, plug the handset into the dock, plug the USB stick you imaged into the dock and power it up?

The command I used to put the image back down on a USB was

dd if=/path/to/internalsdproper.img of=/dev/sde

I was hoping to find some other magic that I wasnt privvy to before on the other disk partitions, but it appears I had everything already. Nothing new and exciting as of this morning.

Another thing worth trying is putting the handset in the dock, plugging in a USB keyboard and firing it up. The generic "break to shell" unix tricks might work. ctrl-alt-f1 through f12, ctrl-c, ctrl-x, etc.
 

mr_e

Tarma's Gun Polisher
Joined
Sep 24, 2012
Posts
108
It would be worth testing dumping the "proper" dd image back to another SD card now and seeing if it can boot too...
 
Joined
Nov 10, 2012
Posts
30
mr_e I have somethings to take care of today so I'll try all that stuff later (if no one beats me to it.)
 

nerdstick

Crossed Swords Squire
Joined
Oct 1, 2012
Posts
183
It would be worth testing dumping the "proper" dd image back to another SD card now and seeing if it can boot too...

Tried burning the dd to my 1gig card, didn't work either.

I also tried re-writing a working dump to my Ninja Masters card I messed up, and for some reason kept getting write errors at around 30MB in. Did an fdisk -l a few tries in, to see that it was then recognized as an 8MB drive all of a sudden. Then I gave up! I tried formatting it in Ubuntu and couldn't. Not sure what the deal is with it.
 

mr_e

Tarma's Gun Polisher
Joined
Sep 24, 2012
Posts
108
gotta have at least 2 gigs for the sys image. The game SD has to be 64m. I haven't made it too far with the game disk yet.
 

nerdstick

Crossed Swords Squire
Joined
Oct 1, 2012
Posts
183
gotta have at least 2 gigs for the sys image. The game SD has to be 64m. I haven't made it too far with the game disk yet.

The game disk to be specific! I was hoping a reburn would let me play it again :) Seems my Ninja card's gone completely wacky, however.
 

NeoTurfMasta

DANCE DANCE KARNOV!,
20 Year Member
Joined
Jan 18, 2001
Posts
4,229
Anyone have a pic of the onboard memory chip from the newer model?
 

douglie007

n00b
Joined
May 5, 2012
Posts
27
So I took the image that I received last night, then dd dumped it back down to a 2g USB thumb drive. The transfer worked, I see the partitions and the filesystem layout and it looks like it successfully did a block level copy. Burningtoys, you willing to do the same thing and see if you can boot the handheld off of it? Thinking take the internal SD out, plug the handset into the dock, plug the USB stick you imaged into the dock and power it up?

The command I used to put the image back down on a USB was

dd if=/path/to/internalsdproper.img of=/dev/sde

I was hoping to find some other magic that I wasnt privvy to before on the other disk partitions, but it appears I had everything already. Nothing new and exciting as of this morning.

Another thing worth trying is putting the handset in the dock, plugging in a USB keyboard and firing it up. The generic "break to shell" unix tricks might work. ctrl-alt-f1 through f12, ctrl-c, ctrl-x, etc.

have you tried this with Ninja Master game on a larger card... and has anyone found the file structure on the ninja Master card. I have had no luck yet seeing anything on my card or even the image of the card... I dont know if I am just using DD incorrectly or not.
 
Last edited:
Joined
Nov 10, 2012
Posts
30
So I took the image that I received last night, then dd dumped it back down to a 2g USB thumb drive. The transfer worked, I see the partitions and the filesystem layout and it looks like it successfully did a block level copy. Burningtoys, you willing to do the same thing and see if you can boot the handheld off of it? Thinking take the internal SD out, plug the handset into the dock, plug the USB stick you imaged into the dock and power it up?

The command I used to put the image back down on a USB was

dd if=/path/to/internalsdproper.img of=/dev/sde

I was hoping to find some other magic that I wasnt privvy to before on the other disk partitions, but it appears I had everything already. Nothing new and exciting as of this morning.

Another thing worth trying is putting the handset in the dock, plugging in a USB keyboard and firing it up. The generic "break to shell" unix tricks might work. ctrl-alt-f1 through f12, ctrl-c, ctrl-x, etc.

ok tried the internal sd card in a usb card reader and booted the system.. nothing.. tried both usb ports. card read lighter does go on.
tired the ninja masters card in the usb reader and booted the system.. nothing.
i booted the system normally but with the ninjamasters card in the sd card reader. it looks like the system tries to access it because the sd card reader flashes a few times and then stays solid once its fully booted..
tried all the unix break shell commands listed.. when hitting crtl-c repentantly you can pause the system boot up. the gold neo geo x logo stays on the handhelds screen until you stop hitting ctrl c then it continues the boot up.

i'm going to try to recreate the system .dd image on another card hopefully tonight.

someone wanted the ic info for the usb port on the dock.. i'm going to take a pic of that next.
 

ack

Ninja Combat Warrior
15 Year Member
Joined
Apr 9, 2009
Posts
538
Hi

I did some poking of the sys_update_file and made a little util to extract the contents.

http://www.gotwalls.com/neogeox/sys_update_file_extract.c

Code:
# ls -l
total 159908
-rwxr-xr-x 1 root root 163738914 Dec 26 16:16 sys_update_file
-rw-r--r-- 1 root root      3920 Dec 26 16:17 sys_update_file_extract.c
# gcc -o sys_update_file_extract sys_update_file_extract.c
# ./sys_update_file_extract 
sys_update_file version: 339
uboot:
  sys offset: 260
  length: 1035504
  sd offset: 0
kernel1:
  sys offset: 1035764
  length: 1818209
  sd offset: 4194304
kernel2:
  sys offset: 2853973
  length: 3598537
  sd offset: 8388608
root fs:
  sys offset: 6452510
  length: 0
  sd offset: 12582912
app fs:
  sys offset: 6452510
  length: 136314880
  sd offset: 515899392
cfg fs:
  sys offset: 142767390
  length: 20971520
  sd offset: 652214272
# ls -l
total 319832
-rw-r--r-- 1 root root 136314880 Dec 26 16:30 appfs.bin
-rw-r--r-- 1 root root  20971520 Dec 26 16:30 cfgfs.bin
-rw-r--r-- 1 root root   1818209 Dec 26 16:30 kernel1.bin
-rw-r--r-- 1 root root   3598537 Dec 26 16:30 kernel2.bin
-rw-r--r-- 1 root root         0 Dec 26 16:30 rootfs.bin
-rwxr-xr-x 1 root root 163738914 Dec 26 16:16 sys_update_file
-rwxr-xr-x 1 root root     13036 Dec 26 16:17 sys_update_file_extract
-rw-r--r-- 1 root root      4215 Dec 26 16:26 sys_update_file_extract.c
-rw-r--r-- 1 root root   1035504 Dec 26 16:30 uboot.bin
# file *.bin
appfs.bin:   Linux rev 1.0 ext3 filesystem data, UUID=f9807242-e205-49d7-a491-6f49116e2156
cfgfs.bin:   Linux rev 1.0 ext3 filesystem data, UUID=7337b556-d6e6-4eea-9adb-e08e3b9a0804
kernel1.bin: u-boot legacy uImage, Linux-2.6.31.3-g0ddfdb5-dirty, Linux/MIPS, OS Kernel Image (gzip), 1818145 bytes, Sun Nov 18 17:51:30 2012, Load Address: 0x80010000, Entry Point: 0x800155E0, Header CRC: 0xF7FECB1A, Data CRC: 0xEC839D02
kernel2.bin: u-boot legacy uImage, Linux-2.6.31.3-g9ab1374-dirty, Linux/MIPS, OS Kernel Image (gzip), 3598473 bytes, Sun Nov 18 17:54:47 2012, Load Address: 0x80010000, Entry Point: 0x80015860, Header CRC: 0xDFE1F97B, Data CRC: 0x2478BB0D
rootfs.bin:  empty
uboot.bin:   x86 boot sector; partition 1: ID=0x83, starthead 0, startsector 24576, 983040 sectors; partition 2: ID=0x83, starthead 0, startsector 1007616, 266240 sectors; partition 3: ID=0x83, starthead 0, startsector 1273856, 40960 sectors; partition 4: ID=0xb, starthead 0, startsector 1314816, 2097152 sectors, code offset 0x0

-ack
 
Joined
Nov 10, 2012
Posts
30
It would be worth testing dumping the "proper" dd image back to another SD card now and seeing if it can boot too...

i did this with 2 different cards a 4 gig and an 8 gig and the system didn't boot. i can browse the files fine on my pc but no go on the ngx. Maybe its because they are hc cards? the only none hc cards i have are only 1 gig.
 

Tehcno

Bao's Babysitter
20 Year Member
Joined
Jan 19, 2002
Posts
2,813
I don't know if this will help much but while messing around I noticed that the memory is formated in FAT16 which the highest amount of memory that you can format to FAT16 is 2GB. I don't know if the NGX will be able to recognize any other format.
 

cabear

n00b
Joined
Oct 26, 2009
Posts
37
just picked up one at gamespot, the guy thought i was weird for getting it. i have firmware 370. im happy with it.
 

mr_e

Tarma's Gun Polisher
Joined
Sep 24, 2012
Posts
108
Hi

I did some poking of the sys_update_file and made a little util to extract the contents.

http://www.gotwalls.com/neogeox/sys_update_file_extract.c

Code:
# ls -l
total 159908
-rwxr-xr-x 1 root root 163738914 Dec 26 16:16 sys_update_file
-rw-r--r-- 1 root root      3920 Dec 26 16:17 sys_update_file_extract.c
# gcc -o sys_update_file_extract sys_update_file_extract.c
# ./sys_update_file_extract 
sys_update_file version: 339
uboot:
  sys offset: 260
  length: 1035504
  sd offset: 0
kernel1:
  sys offset: 1035764
  length: 1818209
  sd offset: 4194304
kernel2:
  sys offset: 2853973
  length: 3598537
  sd offset: 8388608
root fs:
  sys offset: 6452510
  length: 0
  sd offset: 12582912
app fs:
  sys offset: 6452510
  length: 136314880
  sd offset: 515899392
cfg fs:
  sys offset: 142767390
  length: 20971520
  sd offset: 652214272
# ls -l
total 319832
-rw-r--r-- 1 root root 136314880 Dec 26 16:30 appfs.bin
-rw-r--r-- 1 root root  20971520 Dec 26 16:30 cfgfs.bin
-rw-r--r-- 1 root root   1818209 Dec 26 16:30 kernel1.bin
-rw-r--r-- 1 root root   3598537 Dec 26 16:30 kernel2.bin
-rw-r--r-- 1 root root         0 Dec 26 16:30 rootfs.bin
-rwxr-xr-x 1 root root 163738914 Dec 26 16:16 sys_update_file
-rwxr-xr-x 1 root root     13036 Dec 26 16:17 sys_update_file_extract
-rw-r--r-- 1 root root      4215 Dec 26 16:26 sys_update_file_extract.c
-rw-r--r-- 1 root root   1035504 Dec 26 16:30 uboot.bin
# file *.bin
appfs.bin:   Linux rev 1.0 ext3 filesystem data, UUID=f9807242-e205-49d7-a491-6f49116e2156
cfgfs.bin:   Linux rev 1.0 ext3 filesystem data, UUID=7337b556-d6e6-4eea-9adb-e08e3b9a0804
kernel1.bin: u-boot legacy uImage, Linux-2.6.31.3-g0ddfdb5-dirty, Linux/MIPS, OS Kernel Image (gzip), 1818145 bytes, Sun Nov 18 17:51:30 2012, Load Address: 0x80010000, Entry Point: 0x800155E0, Header CRC: 0xF7FECB1A, Data CRC: 0xEC839D02
kernel2.bin: u-boot legacy uImage, Linux-2.6.31.3-g9ab1374-dirty, Linux/MIPS, OS Kernel Image (gzip), 3598473 bytes, Sun Nov 18 17:54:47 2012, Load Address: 0x80010000, Entry Point: 0x80015860, Header CRC: 0xDFE1F97B, Data CRC: 0x2478BB0D
rootfs.bin:  empty
uboot.bin:   x86 boot sector; partition 1: ID=0x83, starthead 0, startsector 24576, 983040 sectors; partition 2: ID=0x83, starthead 0, startsector 1007616, 266240 sectors; partition 3: ID=0x83, starthead 0, startsector 1273856, 40960 sectors; partition 4: ID=0xb, starthead 0, startsector 1314816, 2097152 sectors, code offset 0x0

-ack

This is great! Can you repackage the file as well?
 
Top