desiv Posted January 18 Share Posted January 18 1 hour ago, chad5200 said: Based on our comparisons of California Games, Keystone Kapers, and Kangaroo, I've come to the conclusion that you have the "slow" 2600+ version and I have the "fast" 2600+ version. I'm sure this isn't it, but just thinking out loud... Is everyone using the the same power adapter to power the unit? I just know that with some of my Raspberry Pis, if my PSU isn't quite up to the task, it can slow down the CPU to cope... 3 Link to comment Share on other sites More sharing options...
AtariYMás009 Posted January 18 Share Posted January 18 12 minutes ago, Thomas Jentzsch said: Phosphor will only reduce the effects of the problem but not fix it. There are frames skipped, this must be fixed. we already saw on this video, that it was so much improved enabling the phosphor, I think the phosphor on retroarch is not the same as in plain stella, I think here is more an emulation thing, because if it were just visual like in stella, we'll see ghosting on the image 2024-01-1709-57-53.mp4.1151a9c875c109421072f8d55a6f86de.mp4 we can test if this works with PAL games on 1125 build untill we have a solution for the frames that are beening ommited Link to comment Share on other sites More sharing options...
+remowilliams Posted January 18 Share Posted January 18 24 minutes ago, desiv said: Is everyone using the the same power adapter to power the unit? I am curious as to power supply/SOC frequency being a factor here. Unfortunately this is going to need to be checked at a terminal level which is going to rule out most people being candidates to take a look. 1 Link to comment Share on other sites More sharing options...
KainXavier Posted January 18 Share Posted January 18 Does Stella automatically enable the phosphor effect for specific titles like the way it does with the Joystick for Indy 500? I'm wondering if the people running into audio issues and/or missing sprites have an unrecognized cartridge variant. (I kind of doubt it though given how those affected are experiencing issues with multiple titles. It does sound like a hardware or power issue.) Link to comment Share on other sites More sharing options...
MrChickenz Posted January 18 Share Posted January 18 (edited) On 12/29/2023 at 3:55 PM, captcapcom said: Bummed that Popeye wasn’t working. It’s pretty amazing, I’m guessing it’s some kind of super wonder chip set that just can’t be emulated? Popeye 2600 (NTSC) 1.1 beta works on mine. Try cleaning it a few times. Some carts that wouldn’t load for me I thought were clean after cleaning they worked. Edited January 18 by MrChickenz Link to comment Share on other sites More sharing options...
AtariYMás009 Posted January 18 Share Posted January 18 21 minutes ago, KainXavier said: Does Stella automatically enable the phosphor effect for specific titles like the way it does with the Joystick for Indy 500? I'm wondering if the people running into audio issues and/or missing sprites have an unrecognized cartridge variant. (I kind of doubt it though given how those affected are experiencing issues with multiple titles. It does sound like a hardware or power issue.) In any case, if phosphor is enabled, the flickering will be mitigated in all games equally, and I also believe that the autodetect function is exclusive for Stella and is not present in Retroarch Link to comment Share on other sites More sharing options...
Ben from Plaion Posted January 18 Author Share Posted January 18 43 minutes ago, KainXavier said: Does Stella automatically enable the phosphor effect for specific titles like the way it does with the Joystick for Indy 500? I'm wondering if the people running into audio issues and/or missing sprites have an unrecognized cartridge variant. (I kind of doubt it though given how those affected are experiencing issues with multiple titles. It does sound like a hardware or power issue.) No it hasn't been enabled. We are trying it though. 1 Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted January 18 Share Posted January 18 7 minutes ago, Ben from Plaion said: No it hasn't been enabled. We are trying it though. Even if you get it enabled, it will only work for non-bankswitched ROMs. 2 Link to comment Share on other sites More sharing options...
MrChickenz Posted January 18 Share Posted January 18 1 hour ago, MrChickenz said: Popeye 2600 (NTSC) 1.1 beta works on mine. Try cleaning it a few times. Some carts that wouldn’t load for me I thought were clean after cleaning they worked. You ment 7800? Link to comment Share on other sites More sharing options...
DirtyHairy Posted January 18 Share Posted January 18 (edited) OK, I have spent a bit of my time with my 2600+ opened up and have a few things the share. The CPU clocks between 216MHz and 1.2GHz and is driven by the "interactive" governor, so it may not be running at 1.2GHz all of the time. It should scale up during emulation, though. The GPU clocks between 200MHz and 480MHz and is driven by the "simple_ondemand" governor. On my device it usually sits around 200MHz and reports 30% utilisation max. It uses the proprietary ARM Mali driver, just like the R77. Unfortunately, I could not find the DRAM clock, neither in Linux, nor in uboot. I copied over several ROMs over the serial line and ran them while observing CPU usage with top. There are multiple threads, one of which is obviously running the emulation. CPU usage of the emulation thread is high for most games (all percentages refer to a single core): Demon Attack (NTSC) uses about 69% Cosmic Ark (NTSC) is 95% (!) --- the starfield effect is expensive California Games (NTSC) uses 96% on the title screen Kylearan's Ascend demo (PAL) uses between 75% and 90% H.E.R.O. (NTSC) is about 93% Stay Frosty 2 (NTSC, DPC+ with ARM code) uses 97% CPU, but still seems smooth Mappy (NTSC, CDF with ARM) blows the core with 99%, stutters and skips frames (just like Kangaroo and other games in the videos shared by others on this thread) Scramble (NTSC with ARM) blows the core with 99%, stutters and skips RoboMechanik (NTSC) runs around 93% - 95% and does not maintain a stable display --- there is occasional frame skip, and sometime only every other frame is displayed for a second or so All of these games use significantly more CPU as plain Stella 6 on the R77. We didn't recheck the exact numbers in top, but @Thomas Jentzsch and I did a few estimates based on Stella's speed display, and we're talking about a factor of about two. The CPUs of both devices are very similar, but Stella 6 on the R77 is highly optimised --- it is compiled with PGO (profile guided optimisation), and it uses a few unsafe shortcuts in ARM mode. Iirc PGO gave some 30% for demanding ARM games, so the difference is probably a combination of missing optimisation and differences in the way RetroArch handles the main loop. To wrap up, from what I have seen I am now pretty sure that 1. this is a CPU issue and 2. some 2600+ run slower than others. I have seen the same frame skipping issues others have reported when CPU utilisation is close to 100% (or the core is maxed out). Many games use >90% of one core, and if some devices are slower than others that would explain the issues. I don't know what the difference is between the consoles though (they all run the same software), but my best guess is DRAM. Unfortunately I have no good idea how to find out the DRAM clock. I think it would be worthwhile to open a few affected consoles and compare the DRAM chips (it's the smaller chip next to the Rockchip CPU). Mine is a Hynix H5TQ2G63GFR-RDC. And now for a few pictures: 😏 Edited January 18 by DirtyHairy 11 2 Link to comment Share on other sites More sharing options...
Ben from Plaion Posted January 18 Author Share Posted January 18 1 hour ago, Thomas Jentzsch said: Even if you get it enabled, it will only work for non-bankswitched ROMs. Would phosphor enabled result in a trail on the ball in Breakout? Link to comment Share on other sites More sharing options...
chad5200 Posted January 18 Share Posted January 18 11 minutes ago, DirtyHairy said: OK, I have spent a bit of my time with my 2600+ opened up and have a few things the share. Wow. That's a gold mine of information! BRAVO! 2 Link to comment Share on other sites More sharing options...
DirtyHairy Posted January 18 Share Posted January 18 If anyone cares to look, you can find the CPU and GPU clock values used by the scaling governors by doing "cat /sys/devices/system/cpu/cpufreq/policy0/scaling_available_frequencies" and "cat /sys/devices/platform/10091000.gpu/devfreq/10091000.gpu/available_frequencies" (after opening a terminal over the serial connection). I doubt that this differs between devices, though. If you want to copy run your own ROMs over the serial line you first have to stop the dumper service ("killall S50Launcher") and any running instance of RA ("killall retroarch") and dmenu ("killall -9 dmenu.bin"). You will be transferring the ROM files over the serial line with the terminal attached, so you have to base64 encode them ("cat myrom.bin | gzip | base64 -b 64 > myrom.gz.b64") before sending. The "-b 64" is important as too long lines will mess up the transfer, and gzipping speeds things up. There are many ways to transfer the encoded file, but this one uses picocom as a terminal and is mine 😏: Make sure that "ascii-xfr" is installed (i.e. as part of minicom) and specify it as the program for sending data when launching picocom by adding "--send-cmd 'ascii-xfr -snv'" to the command line On the serial terminal, do "dd if=/dev/stdin of=/tmp/myrom.gz.b64 bs=1" to start receiving data Press ctrl-a-s and give picocom the path to the encoded file Wait for the transfer to complete. It is complete when picocom stops echoing the base64 encoded data. Press ctrl-c to stop dd Extract the transferred file by doing something like "base64 -d /tmp/myrom.gz.b64 | gunzip > /tmp/myrom.bin" You can now run retroarch with "/oem/vendor/bin/retroarch -c /tmp/retroarch.cfg -L /oem/retroarch/cores/stella_libretro.so /tmp/myrom.bin &". In order to see CPU utilization run "top", press "H" to show threads and press "R" twice to sort by CPU usage. 2 1 Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted January 18 Share Posted January 18 BTW: @Blinky, @DirtyHairy and I have the same RAM chips (Hynix H5TQ2G63GFR-RDC) in our consoles. Link to comment Share on other sites More sharing options...
Ben from Plaion Posted January 18 Author Share Posted January 18 17 minutes ago, DirtyHairy said: OK, I have spent a bit of my time with my 2600+ opened up and have a few things the share. The CPU clocks between 216MHz and 1.2GHz and is driven by the "interactive" governor, so it may not be running at 1.2GHz all of the time. It should scale up during emulation, though. The GPU clocks between 200MHz and 80MHz and is driven by the "simple_ondemand" governor. On my device it usually sits around 200MHz and reports 30% utilisation max. It uses the proprietary ARM Mali driver, just like the R77. Unfortunately, I could not find the DRAM clock, neither in Linux, nor in uboot. I copied over several ROMs over the serial line and ran them while observing CPU usage with top. There are two threads, one of which is obviously running the emulation. CPU usage of the emulation thread is high for most games (all percentages refer to a single core): Demon Attack (NTSC) uses about 69% Cosmic Ark (NTSC) is 95% (!) --- the starfield effect is expensive California Games (NTSC) uses 96% on the title screen Kylearan's Ascend demo (PAL) uses between 75% and 90% H.E.R.O. (NTSC) is about 93% Stay Frosty 2 (NTSC, DPC+ with ARM code) uses 97% CPU, but still seems smooth Mappy (NTSC, CDF with ARM) blows the core with 99%,and stutters and skips frames (just like Kangaroo and other games in the videos shared by others on this thread) Scramble (NTSC with ARM) blows the core with 99%, stutters and skips RoboMechanik (NTSC) runs around 93% - 95% and does not maintain a stable display --- there is occasional frame skip, and sometime only every frame is displayed for a second or so All of these games use significantly more CPU as plain Stella 6 on the R77. We didn't recheck the exact numbers in top, but @Thomas Jentzsch and I did a few estimates based on Stella's speed display, and we're talking about a factor of about two. The CPUs of both devices are very similar, but Stella 6 on the R77 is highly optimised --- it is compiled with PGO (profile guided optimisation), and it uses a few unsafe shortcuts in ARM mode. Iirc PGO gave some 30% for demanding ARM games, so the difference is probably a combination of missing optimisation and differences in the way RetroArch handles the main loop. To wrap up, from what I have seen I am now pretty sure that 1. this is a CPU issue and 2. some 2600+ run slower than others. I have seen the same frame skipping issues others have reported when CPU utilisation is close to 100% (or the core is maxed out). Many games use >90% of one core, and if some devices are slower than others that would explain the issues. I don't know what the difference is between the consoles though (they all run the same software), but my best guess is DRAM. Unfortunately I have no good idea how to find out the DRAM clock. I think it would be worthwhile to open a few affected consoles and compare the DRAM chips (it's the smaller chip next to the Rockchip CPU). Mine is a Hynix H5TQ2G63GFR-RDC. And now for a few pictures: 😏 I have a load of 2600+ machines at the office and I can open them up an check which ram chips were used, perhaps from there I can test a few games and see if I can replicate. 4 Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted January 18 Share Posted January 18 (edited) 8 minutes ago, Ben from Plaion said: Would phosphor enabled result in a trail on the ball in Breakout? With default setting (50%) it will look like this: But Breakout does not need phosphor. Edited January 18 by Thomas Jentzsch Link to comment Share on other sites More sharing options...
Ben from Plaion Posted January 18 Author Share Posted January 18 2 minutes ago, Thomas Jentzsch said: With default setting (50%) it will look like this: Yes, mine similar I think set at 60%. Link to comment Share on other sites More sharing options...
DirtyHairy Posted January 18 Share Posted January 18 (edited) 5 minutes ago, Ben from Plaion said: I have a load of 2600+ machines at the office and I can open them up an check which ram chips were used, perhaps from there I can test a few games and see if I can replicate. Judging from the CPU usage and from a video posted earlier on this thread (I think on the previous page) California Games might be a good candidate for testing --- the video has it stuttering audibly, and it uses 96% CPU on my device, so not far from the magical 100% margin 😏 Edited January 18 by DirtyHairy 1 Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted January 18 Share Posted January 18 (edited) 4 minutes ago, DirtyHairy said: Judging from the CPU usage and from a video posted earlier on this thread (I think on the previous page) California Games might be a good candidate for testing --- the video has it stuttering audibly, and it uses 96% CPU on my device, so not far from the magical 100% margin 😏 96% means that the average over multiple frames is 96%, right? So some frames might require over 100%, which then causes skipping. Edited January 18 by Thomas Jentzsch Link to comment Share on other sites More sharing options...
Ben from Plaion Posted January 18 Author Share Posted January 18 4 minutes ago, DirtyHairy said: Judging from the CPU usage and from a video posted earlier on this thread (I think on the previous page) California Games might be a good candidate for testing --- the video has it stuttering audibly, and it uses 96% CPU on my device, so not far from the magical 100% margin 😏 Ok purchased 1 Link to comment Share on other sites More sharing options...
DirtyHairy Posted January 18 Share Posted January 18 1 minute ago, Thomas Jentzsch said: 96% means that the average over multiple frames is 96%, right? So some frames might require over 100%, which then causes skipping. Yeah, that number is an average. Link to comment Share on other sites More sharing options...
+remowilliams Posted January 18 Share Posted January 18 21 minutes ago, DirtyHairy said: There are many ways to transfer the encoded file, but this one uses picocom as a terminal and is mine 😏: Thanks for all the awesome info : ) Since I have USB visible in the RGUI, I should be able to just copy roms to the USB stick. I'll need to add some lines for the serial debug port. 1 Link to comment Share on other sites More sharing options...
Ben from Plaion Posted January 18 Author Share Posted January 18 18 minutes ago, Thomas Jentzsch said: With default setting (50%) it will look like this: But Breakout does not need phosphor. I was just confirming to myself that it was enabled on this build and noted the effect after you mentioned the non bank switched point. Link to comment Share on other sites More sharing options...
DirtyHairy Posted January 18 Share Posted January 18 (edited) 13 minutes ago, Ben from Plaion said: Ok purchased For reference, here's how speed and audio should be for NTSC version: california_games.mp4 Compared to the video posted by @MrChickenz Edited January 18 by DirtyHairy 1 Link to comment Share on other sites More sharing options...
MrChickenz Posted January 18 Share Posted January 18 44 minutes ago, Thomas Jentzsch said: BTW: @Blinky, @DirtyHairy and I have the same RAM chips (Hynix H5TQ2G63GFR-RDC) in our consoles. I was just going to unplug the LED to see if I could get more speed Lol! Link to comment Share on other sites More sharing options...
Recommended Posts