It is currently Fri Dec 15, 2017 11:02 am

All times are UTC - 7 hours





Post new topic Reply to topic  [ 9 posts ] 
Author Message
 Post subject: Tools required
PostPosted: Sat Jul 23, 2016 1:03 pm 
Offline

Joined: Sat Jun 25, 2016 5:33 am
Posts: 66
Hello NES dev :)

I have partially implemented the PPU and tested it on a very simple tiles

now I want a real games tiles

what I want exactly :

name table memory ,the tiles pointed to by name table , the corresponding attribute tables and for sure the palette memory

I have found some tools but unfortunately , the either do not give me what I want ( I don't want a bitmap , I want memory) or I couldn't use it.

any help ?


Top
 Profile  
 
 Post subject: Re: Tools required
PostPosted: Sat Jul 23, 2016 2:54 pm 
Offline
User avatar

Joined: Fri May 08, 2015 7:17 pm
Posts: 1868
Location: DIGDUG
Quote:
tested it on a very simple tiles


What's the difference between a simple tile and a complex one? The PPU handle them identically.

Quote:
what I want exactly :

name table memory ,the tiles pointed to by name table , the corresponding attribute tables and for sure the palette memory


How about this approach...
Play a game in FCEUX, pause execution. Copy the contents of the PPU in the hex editor tool.

_________________
nesdoug.com -- blog/tutorial on programming for the NES


Top
 Profile  
 
 Post subject: Re: Tools required
PostPosted: Sat Jul 23, 2016 3:36 pm 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19347
Location: NE Indiana, USA (NTSC)
Muhammad_R4 wrote:
what I want exactly :

name table memory ,the tiles pointed to by name table , the corresponding attribute tables and for sure the palette memory

These can be pulled from any of several sources:
  • FCEUX (Windows) can dump all PPU memory: Debug > Hex Editor then File > Dump > PPU Memory. Tiles are at $0000 (usually) or $1000 (sometimes), nametables are at $2000 or $2C00, and palette is at $3F00.
  • Create something with my graphics editor, either directly or by using savtool to convert a bitmap image. Then open the .sav file. Tiles are at $0000, nametable at $1800, and palette at $1F00.
  • A save state of a game with CHR RAM will have the entire PPU memory. Save state formats are emulator-specific, but an open-source emulator should document its format.
  • A save state of a game with CHR ROM will have the nametables and palette, and the tile data will be in CHR ROM.

If you want me to export any of the above from my own projects, let me know.

I assume "complex one" is a full-size scene that can be shown to those evaluating progress in your project, as opposed to just a couple hand-pixeled tiles with no artistic merit.


Top
 Profile  
 
 Post subject: Re: Tools required
PostPosted: Sat Jul 23, 2016 3:43 pm 
Offline

Joined: Sat Jun 25, 2016 5:33 am
Posts: 66
Quote:
I assume "complex one" is a full-size scene that can be shown to those evaluating progress in your project, as opposed to just a couple hand-pixeled tiles with no artistic merit.


exactly what I meant by complex , I want to see a complex scene


Top
 Profile  
 
 Post subject: Re: Tools required
PostPosted: Sat Jul 23, 2016 4:02 pm 
Offline

Joined: Sat Jun 25, 2016 5:33 am
Posts: 66
Quote:
These can be pulled from any of several sources:
FCEUX (Windows) can dump all PPU memory: Debug > Hex Editor then File > Dump > PPU Memory. Tiles are at $0000 (usually) or $1000 (sometimes), nametables are at $2000 or $2C00, and palette is at $3F00.



I have done this , when i dumbed the memory and opened it to read , there where somethings ( strange chars , etc ) ,then what?


Top
 Profile  
 
 Post subject: Re: Tools required
PostPosted: Sat Jul 23, 2016 5:09 pm 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19347
Location: NE Indiana, USA (NTSC)
What did you use to open the file? Open it in a hex editor, not a text editor.


Top
 Profile  
 
 Post subject: Re: Tools required
PostPosted: Sat Jul 23, 2016 5:50 pm 
Offline

Joined: Sat Jun 25, 2016 5:33 am
Posts: 66
I have another question

what about the OAM memory ? how can I see it ?


Top
 Profile  
 
 Post subject: Re: Tools required
PostPosted: Sat Jul 23, 2016 6:31 pm 
Offline

Joined: Sun Sep 19, 2004 11:12 pm
Posts: 19347
Location: NE Indiana, USA (NTSC)
Some builds of FCEUX (Windows) supported exporting the 256-byte display list from emulated OAM. I requested it when I was originally developing that graphics editor four years ago. Somehow it got lost in the shuffle, possibly around the big reorganization of FCEUX 2.2.1. (I remember the reorganization because the Action 53 mapper, #28, also got lost but was reinstated in FCEUX 2.2.2.) You can file a request in FCEUX's issue tracker at SourceForge to have it reinstated. Until then, you can open the debugger and set a breakpoint on writes to CPU $4014 to catch the display list just before the CPU sends it to PPU OAM. For example, if the value written to $4014 is $02, then OAM will be a copy of the data that was in CPU $0200-$02FF at the time of the write to $4014. Or if the value written to $4014 is $07, then OAM will be a copy of the data that was in CPU $0700-$07FF at the time of the write to $4014. Then you can export CPU memory and extract the appropriate 256-byte page.


Top
 Profile  
 
 Post subject: Re: Tools required
PostPosted: Sat Jul 23, 2016 7:48 pm 
Offline
User avatar

Joined: Fri May 08, 2015 7:17 pm
Posts: 1868
Location: DIGDUG
I believe Nintendulator can see the Sprite RAM in its debugger.

_________________
nesdoug.com -- blog/tutorial on programming for the NES


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 1 guest


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