-
Posts
2,262 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Gallery
Events
Store
Community Map
Everything posted by Al_Nafuur
-
@DirtyHairy has made a similar proposal, but using a cpu cycle counter instead of a nop loop. Both approaches are dependent on the CPU clock, but the cycle counter would be better, because we can compute the amount of cycles to wait if we have the clock speed of the current cpu. For the NOPs this is not that easy and we would have to test for different CPU/Pi versions.
-
It has to use peek from the driver, otherwise he would have only the data from the bin file. you can check it by starting the emulation directly to the debug window by adding the "-debug" switch to the command line. Even though Stella hasn't even emulated anything you can see the whole data in the debugger.
-
Dumping the PlusCart means dumping half the internet 🤣 But currently the debugger is doing a scan of what he thinks is the "first bank" anyway. So maybe the md5sum of this scan is enough to distinguish the cartridges? The 7800 is doing a "checksum" read of the cartridge at startup to determine if it is a legit 7800 cartridge. Most 2600 cartridges should be OK with this startup, so maybe we could do the same and use the generated checksum?
-
Yes with multiple CartridgePort.bin files you can easily switch your console between all TV formats. I think the last state is stored for the bin file, so if you switch to PAL50 during the emulation of a "CartridgPort.bin" file without a TV format in the name it is PAL50 at the next startup. I think this is only run once per bin file (the real bin file, not the ROM data).
-
If we want to offer the user to also run "normal" bin files from an external storage like a SD-Card or USB storage, then we need the file selection anyway. I thought of using the file as a configuration for the hardware (CPU, GPIOs etc. 🤷♂️). However, I have not yet thought of anything we really should configure there. For the setting of the TV format for example, one must insert only in the file name "NTSC" or "PAL50". On the other hand we could also remove all other bankings and the file selector from Stella and only start/stop the emulation of the cartridge port via a switch. What are your suggestions on this?
-
I don't think we should pursue the NOP delay solution any further! A reliable internal or external timer will be a game changer for the write cycles (this includes all RIOT/TIA peeks!) Not me Yes, especially the standard ROM emulation is full of switches for bankings, SC-RAM and other hotspots (PlusROM, exit function..). But I don't think we should aim for a cycle length that is much shorter than the 6502 cycle. Other cartridges and bankings might be affected too. (Harmony, melody, DPC+, CDFJ, CDFJ+, and future bankings that rely on the cycle length of the 6502) I suspect the startup memory errors are because the dummy bin file is much smaller than 4K and maybe the debugger tries to access some of it..
