It is currently Mon Aug 21, 2017 1:22 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 23 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Sat Feb 22, 2014 5:24 am 
Offline

Joined: Sun Jun 12, 2011 12:06 pm
Posts: 175
Location: Poland
I would like to present my latest device I made - it's called MyKazzo and it allows dumping cartridges. I called it that because it offers similar functionality to Kazzo but I think it has some advantages over it:
* it uses ONLY one chp - Atmera32 microcontroller,
* it protects cpu & ppu data lines with 1k resistors to avoid short circuits (when you dump it bad way, for example when you forget about bus conflicts or you enable prg & chr roms at the same time).

Image Image Image Image Image

The communication between PC is over USB (the Atmega32 implements V-USB library) and it basically can do 4 kinds of commands, that can be initiated from PC:
* simulate CPU read cycle: read from given PRG address range,
* simulate CPU write cycle: write given bytes at given PRG address,
* simulate PPU read cycle: read from given CHR address range,
* simulate PPU write cycle: write given bytes at given CHR address.

I wrote a piece of software on PC in C# (with GUI) that is a kind of server.
Image Image Image

It allows user clicking what addresses should be read/written at and finally generate & save NES file. Of course dumping more complicated carts like MMC1 needs a lot of clicking, so the app can load a so called dumping script file, which is just a plain text file with command for dumper, for example dumping Flipull game (CNROM)
Code:
#flipull (cnrom - mapper 3)
CPU R 8000 FFFF

CPU W 00 8234
PPU R 0000 1FFF

CPU W 01 8235
PPU R 0000 1FFF

CPU W 02 8236
PPU R 0000 1FFF

CPU W 03 8237
PPU R 0000 1FFF


You might act why CPU is writing to such strange addresses like 8234, 8235. Thats because this CNROM cart has bus conflicts and there is a lookup table in the ROM at 8234-8237 which contains bytes: 0, 1, 2, 3.
If you write a byte at random address, the mapper (latch in CNROM) will see a byte stored at ROM in that address (because latch & ROM is at the same side of resistors), but nothing will be shortcircuited!

I have succesfully dumped lot of my famiclone cartridges. I just failed dumping one - 168 in 1, which is Ines mapper 015 and has 1 MB PRG ROM & CHR-RAM. I think the problem is that this cart has some kind of reset-detection circuit and it needs M2 clock all the time.


Top
 Profile  
 
PostPosted: Sat Feb 22, 2014 5:30 am 
Offline
User avatar

Joined: Mon Apr 04, 2011 11:49 am
Posts: 1860
Location: WhereverIparkIt, USA
Looks great! Nice work.

_________________
If you're gonna play the Game Boy, you gotta learn to play it right. -Kenny Rogers


Top
 Profile  
 
PostPosted: Sat Feb 22, 2014 6:06 am 
Offline
User avatar

Joined: Mon Feb 09, 2009 9:10 am
Posts: 60
Location: リムルダール Rimuldar
すばらしい!

C# で作ると Windows Vista/7/8 でも問題なく動きそうですね。
本日、解析材料を借りれたのに anago が Windows 7 で動かず作者の私が困ってます。
Linux 使おう...


Top
 Profile  
 
PostPosted: Sat Feb 22, 2014 6:16 am 
Offline

Joined: Sun Jun 12, 2011 12:06 pm
Posts: 175
Location: Poland
If you prefer Linux, there is a project called mono that lets linux users execute C# applications.


Top
 Profile  
 
PostPosted: Sat Feb 22, 2014 6:16 am 
Offline
User avatar

Joined: Wed Apr 07, 2010 1:14 am
Posts: 466
Location: Iran
Well Done!
Why people from Poland are so brainy?!
Have you tried to dump any mapper 52 cartridge?


Top
 Profile  
 
PostPosted: Sat Feb 22, 2014 10:09 am 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 18813
Location: NE Indiana, USA (NTSC)
krzysiobal wrote:
If you prefer Linux, there is a project called mono that lets linux users execute C# applications.

Provided that Mono supports the libraries that a particular application uses. I tried to run the .NET version of YY-CHR on Mono, and all I got was error messages. GUI libraries and hardware communication libraries tend to be most affected.


Top
 Profile  
 
PostPosted: Sat Feb 22, 2014 10:17 am 
Offline

Joined: Sun Jun 12, 2011 12:06 pm
Posts: 175
Location: Poland
I know. The best way is to write core app as console version (which mono emulates very well) and the gui should be written independelly for each platform.
I just love C#, it has everything that 99% programmers need, libraries for graphics, PDFs, very easy to use gui components..


Top
 Profile  
 
PostPosted: Sat Feb 22, 2014 10:26 am 
Offline

Joined: Sun Jun 12, 2011 12:06 pm
Posts: 175
Location: Poland
FARID wrote:
Have you tried to dump any mapper 52 cartridge?

I think I dont have any.
But I have such a fancy cartridge:
Image
There is CHR-RAM, PRG-ROM (as EEPROM), some 74xx logic, PAL and this chip in bottom left corner I cannot identify. I will try to work with it, as it contans 2500 games (but about 10-15 unique, including Contra).


Top
 Profile  
 
PostPosted: Sat Feb 22, 2014 7:41 pm 
Offline

Joined: Mon Feb 04, 2013 8:48 am
Posts: 45
Officer job, krzysiobal.

I have a question about that cartridge, however. Is it this one?

http://www.youtube.com/watch?v=BGm4zDNceaQ

The Cotnra Function 16 carts are hard to find for Americans like me. I am especailly trying to find this one:

http://www.youtube.com/watch?v=pnljqjHyqEg


Top
 Profile  
 
PostPosted: Sat Feb 22, 2014 8:41 pm 
Offline

Joined: Sun Jun 12, 2011 12:06 pm
Posts: 175
Location: Poland
Nope, it's not that. Just a simple menu, without music. It contains a lot of simple nrom games & conta, but some of them are that I newer saw before.

The 168 in 1 cart is the one at my first screenshoot, inserted to romduper. It was probably released only for famiclone. Its PCB looks like that.

The `100 in 1` I have never saw before but I think it was released for nes.


Attachments:
168in1_LS.JPG
168in1_LS.JPG [ 72.17 KiB | Viewed 3364 times ]
Top
 Profile  
 
PostPosted: Sun Feb 23, 2014 2:23 am 
Offline
User avatar

Joined: Tue Sep 28, 2010 3:27 am
Posts: 178
Location: Slovakia
krzysiobal wrote:
But I have such a fancy cartridge .....
it contans 2500 games (but about 10-15 unique, including Contra).

I have such a cart too, dumped it by removing roms, pm me if interested.
http://jpx72.detailne.sk/stuff_files/fc ... /front.jpg


Top
 Profile  
 
PostPosted: Sun Feb 23, 2014 6:21 am 
Offline

Joined: Sun Jun 12, 2011 12:06 pm
Posts: 175
Location: Poland
I will try on my own, but what's the CT-119 chip?


Top
 Profile  
 
PostPosted: Sun Feb 23, 2014 7:35 am 
Offline
User avatar

Joined: Wed Apr 07, 2010 1:14 am
Posts: 466
Location: Iran
krzysiobal wrote:
I will try on my own, but what's the CT-119 chip?


It should be as large as the sum of the games
Also you should check the high address lines of the chip
Depending on the total games size, it is one of these chips : 27C080, 27C040, 27C020, 27C010


Last edited by FARID on Sun Feb 23, 2014 1:12 pm, edited 1 time in total.

Top
 Profile  
 
PostPosted: Sun Feb 23, 2014 12:45 pm 
Offline

Joined: Sun Jun 12, 2011 12:06 pm
Posts: 175
Location: Poland
I succesfully dumped 168 in 1. As I thought, it needed to have constant clock signal on M2 line (2 MHz worked). Luckily this line is connected to timer 2 output in Atmega on my device, so I could enable this timeat which generated 2 MHz by hardware.


Top
 Profile  
 
PostPosted: Sun Feb 23, 2014 1:21 pm 
Offline

Joined: Sun Jun 12, 2011 12:06 pm
Posts: 175
Location: Poland
Here's a list of UNIQUE games from the 2500 in 1 cart and how the menu looks like:

Image

It must be complicate, because it contains BNROM games (contra), CNROM (tetris2, road fighter)
1. contra
2. tetris 2
3. tank
4. b-wings
5. super mario 1
6. 1942
7. ninja III
8. dig dug II
9. binary land
10. bomber man
11. ice climber
12. galaxian
13. road fighter
14. hogans alley
15. wild gunman
16. duck shoot
17. antarctic adventure
18. dig dug
19. urban champion
20. baloon fight
21. clu clu clan jss
22. sky destroyer
23. popeye
24. wrecking crew
25. raid on bay her
26. milk nuts
27. devil world
28. chack pop
29. macross
30. mario bros


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 23 posts ]  Go to page 1, 2  Next

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group