Jump to content
IGNORED

Startup Values of the 2600


Omegamatrix

Recommended Posts

Here is a test rom I made that shows the value of RIOT ram, SP, A, X, Y, etc... all at power-on. This rom could be useful for future emulator development. In this rom I didn't attempt to check the value of the timer (or TIMINT) as that would best be done with a rom strictly devoted to that one task.

 

 

If you are wondering, the ram is laid out exactly like how it is Stella. I feel most programmers will intuitively understand this format, and know what they are seeing without explanation. If you don't, then just start-up Stella and take a look inside the debugger to get a better idea. Here you go! :)

 

 

post-7074-0-18024400-1411867774_thumb.png

 

 

StartupValues.zip

 

 

 

  • Like 14
Link to comment
Share on other sites

  • 3 years later...

A Harmony with the ROM directly flashed onto it. Does that still affect the initial state?

 

 

I don't think so, but I don't know for sure. The only way to find out would be to dirty the RAM and then to reset the console by a quick power cycle: if memory is all zeroes again, then the harmony runs init code even if the ROM is flashed directly.

Edited by DirtyHairy
Link to comment
Share on other sites

A Harmony with the ROM directly flashed onto it. Does that still affect the initial state?

It shouldn't. I also flashed directly to my Harmony for development testing. I found my consoles were not all zero values for the riot ram, however my colecovision with a 2600 adapter always had all zero values at startup.

  • Like 2
Link to comment
Share on other sites

  • 3 months later...

It shouldn't. I also flashed directly to my Harmony for development testing. I found my consoles were not all zero values for the riot ram, however my colecovision with a 2600 adapter always had all zero values at startup.

Interesting thread Omegamatrix! Wondering if this analyzer could be easily adapted to dump SARA and analyze her startup values instead of the RIOT RAM?

 

No one is making CBS RAM carts but Superchip carts are still being manufactured so it should be possible to see SARA's initial state to gauge a similar comparison as per this thread:

 

http://atariage.com/forums/topic/276328-gates

 

I expect SARA to be zeroed but your cross console results are intriguing, maybe not all SARA chips act the same either.

 

Which consoles RIOT were not zeroed if you happen to remember?

Link to comment
Share on other sites

Interesting thread Omegamatrix! Wondering if this analyzer could be easily adapted to dump SARA and analyze her startup values instead of the RIOT RAM?

 

No one is making CBS RAM carts but Superchip carts are still being manufactured so it should be possible to see SARA's initial state to gauge a similar comparison as per this thread:

 

http://atariage.com/forums/topic/276328-gates

 

I expect SARA to be zeroed but your cross console results are intriguing, maybe not all SARA chips act the same either.

 

Which consoles RIOT were not zeroed if you happen to remember?

It can't easily be adapted as the Super Chip ram is on the cartridge, not on the console.

 

Also all the consoles I tried had non-zerod ram (4 switch, 6 switch, Atari Jr.). The exception was a Colecovision with a 2600 adapter.

Link to comment
Share on other sites

It can't easily be adapted as the Super Chip ram is on the cartridge, not on the console.

 

Also all the consoles I tried had non-zerod ram (4 switch, 6 switch, Atari Jr.). The exception was a Colecovision with a 2600 adapter.

Why couldn't you just set it to read high RAM instead of page 0 - if someone were to burn a superchip cart with your program adjusted like that couldn't it show the state of SC RAM on power-up?

 

My Vader appears to consistently retain the state of whatever was last in the RIOT using your program.

 

Possibly another piece of the puzzle, your colecovision adapter might have RAM characteristics more like the superchip and CBS RAM, for being more contemporary with them.

Link to comment
Share on other sites

I thought that it's been verified that the stack pointer is $FD on cold start?

 

It has, and Stella (at least) defaults to this value for SP. But if you enable randomization of SP, then of course it will be randomized.

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...