Neo TeAm Forum

The 9th. NEO Project for SNES => The 9th. NEO Project for SNES Dev kit. => SNES development section => Topic started by: Dr.neo on October 09, 2010, 06:33:34 PM

Title: NEW SNES 2.3 core release, support Real Time Save
Post by: Dr.neo on October 09, 2010, 06:33:34 PM
NEW SNES 2.3 core SPEC:

Added the MODE 4 << COPY MODE
$400000~$4FFFFF = $C00000~$CFFFFF < map to GBA card flash/psram memory
$500000~$5FFFFF = $D00000~$DFFFFF < map to SNES card PSRAM


$00C042 SET 0X01 enable the real time save function (by default is disable,you must set it before enter the game)

in the game if $00FFFE SET 0X01

will remap the PSRAM last 8Mbit to 65816 CPU $F00000~$FFFFFF (read/write able)

in the game if $000FFFE SET 0X00

will back to game
=====================================================================================
the MENU RAM expense function

$00C030 set 0X00 >>> disable (default seting)
$00C030 set 0X01 >>> remap the last SNES 8Mbit PSRAM TO $000000~$0FFFFF
$00C030 set 0X03 >>> remap the last SNES 8Mbit PSRAM TO $600000~$6FFFFF                 
$00C030 set 0X02 >>> remap the last SNES 8Mbit PSRAM TO $F00000~$FFFFFF

=====================================================================================
$00C050 SET 0X00 >>> don't back to MENU
            0X01 >>> hold the RESET button over 3 seconds will back to MENU 
            0X02 >>> press the RESET button then back to MENU 
            0X03 >>> use software back to MENU 


about the working ram in the game (for soft-reset / real time save and cheat code)
$00C012 SET  0X01  $003800~$003FFF RAM READ  ON  <CPLD RAM (by default is set to 0X00 when hard power on)
$00C015 SET  0X01  $003800~$003FFF RAM WRITE ON  <CPLD RAM (will set to 0X00 if back to menu)


1.GAME $00FFEA:XX YY move to 0X3FF0 << after NMI INT modified , then excute the below code , and need copy the INT value to 0X3FF0
format:  3FF0:XX YY
 
in menu change the game rom $00FFEA:00 3E
 
   
$3E00  PHP
       PHA
       LDA  $004219
       CMP  #$30     ( SEL+START )
       BEQ  SRET
       CMP  #$10     (START )
       BEQ  NMIX 
       PLA
       PLP
       JMP ($3FF0)   << JUMP NMI 

SRET: 
       STA $00FFFF   << RESET CPLD IO
       NOP
       JMP ($FFFC)   << JUMP MENU           


NMIX:
       
       JMP ($3FF0)   << JUMP NMI


Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: mic_ on October 09, 2010, 06:56:30 PM
Sounds interesting. I'll look into this stuff when I'm done with the SD code.


Quote
in the game if $00FFFE SET 0X01

Wouldn't FFF6 or FFE6 be better, since FFFE is used as the IRQ vector in emulation mode?


Quote
LDA  $004219

This will only work if the game uses the new SNES-style way of reading the joypad, since $4218-4219 only are updated if $4200.1 is set. $4219 will not contain any meaningful data if the game uses the old NES-style way of reading the joypad bit-by-bit from $4016 (I don't know if any SNES games do that).
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: ronaldo_76 on October 09, 2010, 07:30:47 PM
mic, have your new menu the reset function insert? when not, i'm waiting when this feature is done. everytime i switch the console on/off on/off thats not good.  ~sm-66.gif~.gif

thanks
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: mic_ on October 09, 2010, 08:02:33 PM
Quote
mic, have your new menu the reset function insert?

No, it doesn't use any of this new stuff yet. I found out about these changes at the same time as everyone else (i.e. yesterday).
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: Dr.neo on October 10, 2010, 01:09:53 AM
Quote
Wouldn't FFF6 or FFE6 be better, since FFFE is used as the IRQ vector in emulation mode?

ok, will check the FFF6 address ...

and about the "LDA  $004219", myth hardware without any limit with it, it just one demo clip for show you the working flow, you can use any address like  $4016 , just you want  ~sm-57.gif~.gif
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: mic_ on October 10, 2010, 04:21:03 AM
Quote
and about the "LDA  $004219", myth hardware without any limit with it, it just one demo clip for show you the working flow, you can use any address like  $4016 , just you want

Yes, but my point is that if you want to read the joypad within an NMI hook that runs from CPLD RAM while a game is running, then you need to know what method the game is using for reading the joypad. I don't know if there's any way of detecting that (as far as I know, SNES register $4200 - which contains the flag - is write-only).

Always using the NES-style method in the NMI hook (strobe $4016, then read it N times to get the status of all the buttons you want) might be a solution. The only downside is that if the game also uses that method of reading the joypad - and if it was reading the joypad right when the NMI occurred - then you'll ruin the joypad data it's getting for that frame, which could have strange results. But maybe that's an acceptable trade-off.

The SNES can be a bit "special" sometimes..   ~sm-51.gif~.gif
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: Dr.neo on October 12, 2010, 06:17:22 PM
hi mic_

here is the new firmware, have change the $00FFFE to $00FFF6, that's all.

about the $42xx question, it's  a PURE software issue, our hardware don't handle it at all  ~sm-75.gif~.gif
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: Dr.neo on October 26, 2010, 10:50:29 PM
hi mic_ , some news about your SNES menu? something need us to improve or change?  ~sm-41.gif~
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: mic_ on October 27, 2010, 03:14:10 AM
No, not that I know of. But I haven't tried the core updates yet, since it wouldn't make sense for me to start working on any new features until the SD code is in place.
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: ~tak on December 01, 2010, 03:27:22 AM
aight, I've done finally the upgrade to 2.3 with the nero dual programmer. I'm using mic's menu and do not see any change of the usage. do I have to use the original neoflash menu or how can I now access the new functions?

btw, what purpose has the switch on the neoflash cart?

thanks,
~tak
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: Aleomark on December 01, 2010, 03:41:45 AM
there's nothing new now for us, we had to wait new menu version and core upgrade, the core upgrade is already done, so we only have to wait for new menu version
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: ChillyWilly on December 01, 2010, 05:35:11 AM
This is a busy time of year for most people, so neither mic or I have had much time to work on the Neo Myth stuff lately. Accessing the SD card is working, but it's not yet added into the menu - code needs to be added for keeping info on directory entries, navigating the SD, and loading games.
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: mic_ on December 01, 2010, 04:39:24 PM
I have actually begun working on the menu again recently after having coded nothing at all for about a month (outside of my job anyway). But these new core features are not a priority for me at the moment. I'm working only on the SD file browsing/loading. Initially I'll limit it so that all ROMs must be in one directory (probably /SNES/ROMS), and it won't have SaveRAM support to begin with. The menu will most likely start in GBA Card mode, and then you'll switch to SD mode by pressing a button on the controller (otherwise people without an SD card attached would get an error message every time they started the menu, which would be annoying).
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: Dr.neo on December 02, 2010, 03:17:37 PM
any way is a start at least  ~sm-69.gif~.gif
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: stefan_iro on December 02, 2010, 10:29:24 PM
I think these are very good news!
Maybe we have SD support for SNES Myth Menu by Christmas time?  ~sm-56.gif~.gif
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: mic_ on December 03, 2010, 05:29:06 PM
Hopefully.
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: Sektor on December 19, 2010, 07:04:23 AM
How many screws are in the SNES Myth? I removed the two at the bottom but the top is still being held together. Are there screws behind the label?
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: ChillyWilly on December 19, 2010, 09:15:19 AM
How many screws are in the SNES Myth? I removed the two at the bottom but the top is still being held together. Are there screws behind the lablel?

Yes. There are two along the top under the label, and two along the bottom in the back.
Title: Re: NEW SNES 2.3 core release, support Real Time Save
Post by: Sektor on December 19, 2010, 09:59:53 AM
Thanks. Shame you have to damage the label to update the firmware, the N64 and MD Myth cases were better designed.

It's better to just push a screw driver though the label into the screws instead of trying to peel back the label.

Another updating tip: Use the 17 pin cable for the SNES Myth instead of the 8 pin cable :)