It is currently Sun Sep 15, 2019 4:59 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 4 posts ] 
Author Message
PostPosted: Tue Apr 30, 2019 3:12 am 
Offline
User avatar

Joined: Tue Apr 30, 2019 3:01 am
Posts: 2
Hi All,

I've been tinkering on a project for a while and learning to code for the NES while porting a classic DOS game.
I've since received an INL Retro Programmer/Dumper (the new version, not Kazzo) and I am trying to flash my NROM game onto one of the INL NROM carts. Problem is the data that ends up on the flash cart won't work in my NES.

I've had a dig through the data I can dump off the cart after I've flashed it and then used the dump and verify methods. The data dumped from the cart seems mostly fine, it at least ends up on there. A curious difference though is the data for the reset vectors, which is in my master ROM (and prg/chr files) but doesn't end up in the data I dump from the cart after the flash.
I feel like it needs to be in there because if I manually add the missing reset vector data to the dumped file and then just add the iNES header the resulting file will work fine in an emulator as expected.

Are there any issues with the new flashing software for NROM carts using the new INL programmer or is it just me and my linker memory map? Does the linker memory map for ld65 even affect this or am I looking in the wrong place?


Top
 Profile  
 
PostPosted: Thu May 02, 2019 10:16 pm 
Offline
User avatar

Joined: Tue Apr 30, 2019 3:01 am
Posts: 2
So I think it is my memory map for ca65/ld65.

I'm using this one based off tepples example. I'm trying to use the full 32k (256) NROM space for my PRG. I don't think I've mapped it right, what am I doing wrong?

Code:
# CA65 configuration script for NROM

MEMORY {
  ZP:       start = $00, size = $100, type = rw;
  # use first $10 zeropage locations as locals
  HEADER:   start = $0000, size = $0010, type = ro, file = %O, fill=yes, fillval=$00;
  STACK:    start = $0100, size = $100, file=%O;
  OAM:      start = $0200, size = $100, file=%O;
  RAM:      start = $0300, size = $0500, type = rw;
  ROM7:     start = $8000, size = $8000, type = ro, file = %O, fill=yes, fillval=$FF;
  CHRROM:   start = $0000, size = $2000, type = ro, file = %O, fill=yes, fillval=$FF;
}

SEGMENTS {
  HEADER:  load = HEADER, type = ro, align = $10;
  ZEROPAGE: load = ZP, type = zp;
  RAM:      load = RAM, type = bss, define = yes, align = $100;
  DMC:      load = ROM7, type = ro, align = 64, optional = yes;
  CODE:     load = ROM7, type = ro, align = $100;
  RODATA:   load = ROM7, type = ro, align = $100;
  VECTORS:  load = ROM7, type = ro, start = $FFFA;
  CHR:      load = CHRROM, type = ro, align = 16, optional = yes;
}

FILES {
  %O: format = bin;
}


Top
 Profile  
 
PostPosted: Thu May 02, 2019 10:29 pm 
Online

Joined: Sun Apr 13, 2008 11:12 am
Posts: 8557
Location: Seattle
If your game works correctly in multiple different emulators (e.g. Nestopia, puNES, Mesen, Nintendulator) it's most likely a problem with the programmer and/or cart instead of the data you tried to put in it.


Top
 Profile  
 
PostPosted: Fri May 03, 2019 8:49 am 
Offline
User avatar

Joined: Sat Jan 09, 2016 9:21 pm
Posts: 624
Location: Central Illinois, USA
Just to verify -- are you stripping off the 16-byte nes header from the rom before flashing it to the cart?

_________________
My games: http://www.bitethechili.com


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 4 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