Mr SQL Posted May 16, 2022 Share Posted May 16, 2022 Commodore Business Machines released a PET that could increase the screen refresh rate via an undocumented register address. On later hardware models this undocumented feature was revised and changing the address with the same software could damage the PET and cause a chip to overheat. In this demo video of the Game Loader with the debugger attached (an Atari 2600 emulator for the Commodore 64) there are sparkles on the real hardware like were seen on the CBM PET where the refresh rate could be increased: Technical Details on the debugger and the freezing bug: The debugger is attached and throwing SYMBOLS from a shell in the upper left and there is an extra 2% time loop reserved if things get tight. I don't think the overhead from the debugger is causing the pause, because it's intermittent. Corruption in the Zero Page The Commodore has a lot of activity marshalling the Kernel and there is corruption of data on the zero page. I keep chasing these programs to either remove their access to the zero page or coordinate which programs should participating. Kernel sub programs with a legitimate purpose, get to keep their registers in low RAM and I have moved several Shadow registers and fast RAM variables around in the zero page to accommodate those. Some are very tricky and corrupt a value temporarily and then pull it back out of the stack and put it back; I think that's what's causing the freeze when it happens, it's not always the same spot very difficult to track down. I added a debugger to the emu to assist in finding them and reviewing the maps which are very helpful. Here's the Atari 2600 program code the Game Loader emulator is running, you can see the Shadow registers are already implemented, some partially. Soft collision detection with the sprites and the tile playfield is working in the vid, but not the hardware collision because I have not wrapped the bare metal API for those yet though there is a stub for it already present in the sub Framework so that no errors on compile will happen. Mapping the switches on the console The Joysticks are already mapped and SWCHB is getting mapped to the function keys on the right side of the Commodore with perhaps shift-lock for the BW/color toggle. Thoughts and ideas welcome on this interesting emu! More details on the architecture are here I plan to release the Game Loader emu/game transformer after more thorough testing to ensure there is no chance of damaging a C64 by frying a chip like with the PET by pushing the VIC-II to emulate a 1 Mhz system on 1 Mhz platforms. 1 Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted May 27, 2022 Author Share Posted May 27, 2022 Game Loader Atari 2600 emulation now includes hardware sprite reflection on the Commodore 64! starblitz_v5c.txt Color support is partially implemented as a nybble and Game Loader is running ARKANOID AIRHEAD in Marine! ? 1 Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted May 31, 2022 Author Share Posted May 31, 2022 Berzerk 2000 Friendly Fire sim is running on the Commodore with no changes to the BASIC or Assembly program code: 1 Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted June 2, 2022 Author Share Posted June 2, 2022 BREAKOUT 2002 PAL R3 from the SillyVenture Atari Art Festival in Gdansk running cycle exact on the C64! ? BREAKOUT2002 LASERBEAMS PAL by Relational Framework :: pouët.net (pouet.net) 2 Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted June 5, 2022 Author Share Posted June 5, 2022 SuperCharger_SpaceInvaders_breaking_on_Supercharger.bin Here is an interesting scenario where the Commodore 64 Atari 2600 emulator is actually running an Atari SuperCharger game which the real SuperCharger cannot run without crashing because it runs out of space. The Atari Flashback Portable also runs this Atari SuperCharger game by transformation it into a CBS RAM game, again with no changes to the source. Download the Atari Flashback binary and the source code here. Quote Link to comment Share on other sites More sharing options...
polyex Posted June 5, 2022 Share Posted June 5, 2022 Can you run something like Adventure? Quote Link to comment Share on other sites More sharing options...
Mr SQL Posted June 6, 2022 Author Share Posted June 6, 2022 10 hours ago, polyex said: Can you run something like Adventure? Yes! Adventure can run with a custom VIC-II core for the "graphics card", the game loop is already supported in the emu. I was thinking of adding cores for a few classics and a core for classic bB up to 32K, possibly even 64k if I can figure out how to stop jumping around the memory map. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.