visrealm Posted September 20 Author Share Posted September 20 (edited) 20 hours ago, visrealm said: Also, be aware this firmware will clock your PICO9918's RP2040 at a speedy 315MHz. I would love to have it running at the default 252MHz, but that's not going to happen. To clarify, F18A mode will run at the default PICO9918 speed, however some of the more intensive (multiple layers + multicolor sprites) demos don't run well. Another F18A mode update: Another update for you to try if you're keen. This one fixes a lot of small bugs: The mega demo runs properly this time. Fixes Alex Kidd startup screen. Improves glitch behavior when renderer can't keep up. Fixes F18A karts sprites. Many other minor things. Zaxxon is totally playable now. Some artifacts are still visible, but they have much less impact. Attached the binaries for both board types (v1.0 people use the pcb_v0_4 version. going forward, perhaps I'll name it pcb_v1_0 and the v0_4 people will know its for them too). Also, here's the one paragraph guide to updating your PICO9918 firmware. Have at it! pico9918_pcb_v0_3_f18a_pre_alpha_2.uf2pico9918_pcb_v0_4_f18a_pre_alpha_2.uf2 Edited September 20 by visrealm 7 Quote Link to comment Share on other sites More sharing options...
visrealm Posted September 22 Author Share Posted September 22 (edited) Another pre-alpha F18A compatibility mode firmware update for the keen. 80 column text mode is back (and better than before). Added support GPU-powered DMA requests. Huge thanks to @JasonACT for this one. He has come up with a zero-cost solution to monitor the DMA trigger address using the RP2040's MPU (memory protection unit). Incredible! Also thanks to @Asmusr for providing the source code to his F18A Copper 2 demo and the tip that it was likely DMA. More performance improvements (basically won back what we would have lost by re-enabling 80-column mode). Thanks again to Jason for improving the VDP -> VGA palette conversion routine. More minor bits and bobs. All of Rasmus' F18A demos work now (Copper 2 was the last one which didn't work on previous firmware). There are still combinations of F18A features that haven't been implemented - mainly in non-Graphics I modes. Once this is released, please be aware it won't be able to do everything an F18A can do. The F18A is a remarkable bit of kit and full credit to @matthew180 for developing and improving it for the retro computing community over the last 11+ years. The PICO9918's F18A mode will provide a best-effort reproduction of the F18A which will work well enough in most situations but will never promise 100% compatibility. Given that, software developers should completely disregard any issues found while testing their F18A enhanced software on the PICO9918 (though, I'd love to hear about any issues). Once again, I'd like to thank Jason. I absolutely could not have done this without his remarkable contributions to the project. Thanks, mate! With that said, have at it! pico9918_pcb_v0_3_f18a_pre_alpha_3.uf2 pico9918_pcb_v0_4_f18a_pre_alpha_3.uf2 Edited September 22 by visrealm 9 2 Quote Link to comment Share on other sites More sharing options...
visrealm Posted September 23 Author Share Posted September 23 Prototype for experimenting with my Pimoroni PGA2350 board. Is there an ugly PCB competition? I think I might be in with a chance 5 Quote Link to comment Share on other sites More sharing options...
Gary from OPA Posted September 23 Share Posted September 23 19 minutes ago, visrealm said: Prototype for experimenting with my Pimoroni PGA2350 board. Is there an ugly PCB competition? I think I might be in with a chance Looks nice. Still waiting for someday to see a pico 2, the first one never arrived and the free replacement at least it has tracking but it's just floating out there around Iceland at the moment, hopefully the waves in the Atlantic will someday wash it a shore on Canadian soil. I would order a pga2350 as well as it looks like a better way to work on one as prototype board, I have seen a number of MSX projects already being designed around it, but that model is heavily backordered now due to high demand. 1 Quote Link to comment Share on other sites More sharing options...
+acadiel Posted September 23 Share Posted September 23 11 hours ago, visrealm said: Prototype for experimenting with my Pimoroni PGA2350 board. Is there an ugly PCB competition? I think I might be in with a chance Heh. I need to figure out a way to get one to fit into here. Not much clearance, and right under a keyboard. So, ugly might actually be a key. (The F18A didn't fit - someone got creative though.) 2 1 Quote Link to comment Share on other sites More sharing options...
visrealm Posted September 23 Author Share Posted September 23 6 minutes ago, acadiel said: Heh. I need to figure out a way to get one to fit into here. Not much clearance, and right under a keyboard. So, ugly might actually be a key. (The F18A didn't fit - someone got creative though.) Tight tight. A PICO9918 v1.0 should fit in there (with a socket) 2 Quote Link to comment Share on other sites More sharing options...
visrealm Posted September 24 Author Share Posted September 24 Yet another uncut demo video. This time using a VGA capture device (actually a cheap VGA -> HDMI connected to a cheaper HDMI -> USB recorded using OBS). Since the last video, I have managed to reduce the RP2040 clock some which is great! 4 2 Quote Link to comment Share on other sites More sharing options...
Asmusr Posted September 24 Share Posted September 24 49 minutes ago, visrealm said: Yet another uncut demo video. This time using a VGA capture device (actually a cheap VGA -> HDMI connected to a cheaper HDMI -> USB recorded using OBS). Nice work - I didn't see anything wrong except for the speed in some places. Reminds me, I should fix the flappy bird sprite in the 2-plane scrolling demo. It was using the sprite linking feature, which was removed from the F18A in one of the latest firmware updates. 3 1 Quote Link to comment Share on other sites More sharing options...
visrealm Posted September 25 Author Share Posted September 25 8 hours ago, Asmusr said: Nice work - I didn't see anything wrong except for the speed in some places. Reminds me, I should fix the flappy bird sprite in the 2-plane scrolling demo. It was using the sprite linking feature, which was removed from the F18A in one of the latest firmware updates. Thanks. I assumed that was the case. I did read about that in the PDF, but saw it was no longer a thing. 1 Quote Link to comment Share on other sites More sharing options...
visrealm Posted October 4 Author Share Posted October 4 (edited) Good news! The next batch of shiny new PICO9918's has arrived. I've made an initial 35 available on Tindie and Arcade Shopper will have another batch in a week or so too. I do have more than that, so if you miss out it won't be too long before I make more available. I don't like to make them all available, sell them all in a few days and have long delays in shipping while I process orders. Edit: My initial batch sold out pretty quick. I'll make more available once I get through these orders. Probably in a week or so. Also keep an eye out for @arcadeshopper to have some available in a week or two. Edited October 4 by visrealm 10 Quote Link to comment Share on other sites More sharing options...
visrealm Posted October 5 Author Share Posted October 5 (edited) @dhe my power testing PCBs arrived this week. Just in time because it's also come in handy for quick-swap testing my latest batch. I just place a jumper on the test points when I'm not testing power draw. I'll run some detailed tests at some point, but initially, I was seeing around 95mA with this setup. It didn't seem to matter what it was doing at the time. I haven't tested the F18A build on it yet, but I will at some point and of course I'll post tabulated data. I also have an F18A coming soon, so I can test it and also original TMS9918s. As @JasonACT said, the VDP itself is only part of the story since the VRAM is idle too. Edited October 5 by visrealm 5 Quote Link to comment Share on other sites More sharing options...
visrealm Posted Tuesday at 04:47 AM Author Share Posted Tuesday at 04:47 AM (edited) Received my F18A today. More power testing results. PICO9918 v1.0 Firmware v0.4.1: 90-110mA PICO9918 v1.0 Firmware F18ADev: 95-115mA F18A MkI: 145-155mA TMS9929A: 185-195mA For both the PICO9918A and the F18A, display modes and GPU usage don't make much difference to the power consumption, colors do. If an RGB channel is all high or all low, power consumption is lower. 50% grey for example will yield a higher power draw. This makes sense due to the resistor ladders. Edited Tuesday at 05:30 AM by visrealm 6 Quote Link to comment Share on other sites More sharing options...
unhuman Posted Thursday at 05:27 PM Share Posted Thursday at 05:27 PM There are some available on the Tindie store. 1 Quote Link to comment Share on other sites More sharing options...
MMarcoux66 Posted Thursday at 07:09 PM Share Posted Thursday at 07:09 PM (edited) 6 hours ago, unhuman said: There are some available on the Tindie store. Just no 12" VGA connectors which you would need for a ColecoVision. Hoping that the ArcadeShopper gets his shipment in to save some postage here in the US. Wonder if he will have the 12" cables. You might be able to get the 8" to work on the CV, but I was told that the 12" is a much better fit. Edited Thursday at 11:57 PM by MMarcoux66 Quote Link to comment Share on other sites More sharing options...
unhuman Posted Thursday at 09:19 PM Share Posted Thursday at 09:19 PM 2 hours ago, MMarcoux66 said: Just no 12" VGA connectors which you would need for a ColecoVision. Hoping that the ArcadeShopper gets his shipment in to save some postage here in the US. Wonder if he will have the 12" cables. Oh well. I got 1 for my TI and 1 for my CV, but didn't know about that. I'll figure something out. Quote Link to comment Share on other sites More sharing options...
visrealm Posted Thursday at 10:24 PM Author Share Posted Thursday at 10:24 PM (edited) 3 hours ago, MMarcoux66 said: Just no 12" VGA connectors which you would need for a ColecoVision. Hoping that the ArcadeShopper gets his shipment in to save some postage here in the US. Wonder if he will have the 12" cables. ArcadeShopper will have them soon. Likely next week. He has some 12" cables, but not many. You'll need to ask. Edited Thursday at 10:52 PM by visrealm 1 Quote Link to comment Share on other sites More sharing options...
visrealm Posted Thursday at 10:25 PM Author Share Posted Thursday at 10:25 PM (edited) 1 hour ago, unhuman said: Oh well. I got 1 for my TI and 1 for my CV, but didn't know about that. I'll figure something out. If you're willing to wait, I can hold yours until I get more cables in. Let me know. I've sent you a private message. Edited Thursday at 10:38 PM by visrealm 2 Quote Link to comment Share on other sites More sharing options...
MMarcoux66 Posted Thursday at 11:37 PM Share Posted Thursday at 11:37 PM (edited) 1 hour ago, visrealm said: ArcadeShopper will have them soon. Likely next week. He has some 12" cables, but not many. You'll need to ask. Awesome. Thanks for the additional information. Can't wait to get some of these. I want one for my TI-99 4/a and for my CV. Edited Thursday at 11:42 PM by MMarcoux66 1 Quote Link to comment Share on other sites More sharing options...
JasonACT Posted Saturday at 09:31 AM Share Posted Saturday at 09:31 AM Source code changes to the latest PICO9918-F18A firmware version to allow for firmware updates while the PICO9918 is in an assembled console, so no more USB connection needed. There's a new program included that will build an *8.bin cartridge file using the first .UF2 file it sees, to "verify" or "program" a specific firmware version. It will tell you if it's successful, I like to wait a few seconds and <FCTN>QUIT and then run the verify again to make sure - then power cycle the TI. If it fails, just <FCTN>QUIT and retry to program it. It has failed for me one time, but it works the 2nd time. Don't switch the TI off if it fails, or you will have to open up the console and program via USB (as per usual). The non-F18A firmware version will need a couple of the F18A features implemented to support in-console updates (just minimal unlock & the new flash method added). I'm not interested in that version though, so nothing more from me on that. Check for today's date on files in the archive for what's been updated. Enjoy. Pico9918_Flash.zip 3 2 Quote Link to comment Share on other sites More sharing options...
visrealm Posted Saturday at 10:21 AM Author Share Posted Saturday at 10:21 AM (edited) 57 minutes ago, JasonACT said: Source code changes to the latest PICO9918-F18A firmware version to allow for firmware updates while the PICO9918 is in an assembled console, so no more USB connection needed. There's a new program included that will build an *8.bin cartridge file using the first .UF2 file it sees, to "verify" or "program" a specific firmware version. It will tell you if it's successful, I like to wait a few seconds and <FCTN>QUIT and then run the verify again to make sure - then power cycle the TI. If it fails, just <FCTN>QUIT and retry to program it. It has failed for me one time, but it works the 2nd time. Don't switch the TI off if it fails, or you will have to open up the console and program via USB (as per usual) Ok, Jason... this is... AWESOME! For everyone else, this is also a surprise to me. Jason and I discussed it at a high level as a possibility, but I had no idea he was actually working on it. I tried it just now and it works exactly as advertised. So good! Edit: I've also pushed Jason's changes to the gpu-dev branch of the pico9918 repo. Edited Saturday at 10:29 AM by visrealm 1 Quote Link to comment Share on other sites More sharing options...
TheMole Posted Saturday at 11:43 AM Share Posted Saturday at 11:43 AM (edited) Cool to see that Alex Kidd seems to work well! I'm slowly working on the game a bit more and added a new background effect for the water levels (I mentioned this before when the question about F18A GPU usage was asked a while ago). I'd love to see how well it fares on the pico9918, so if anyone with one installed could run the attached cartridge and report back (if possible with a short video of the result), that would be awesome! *edit* The effect itself is nothing fancy, it uses the scanline interrupt to modify the horizontal scroll offset to create a sine-wave like water ripple effect on the second background layer. akidd.rpk Edited Saturday at 11:46 AM by TheMole 2 Quote Link to comment Share on other sites More sharing options...
PeteE Posted Saturday at 09:58 PM Share Posted Saturday at 09:58 PM 10 hours ago, TheMole said: Cool to see that Alex Kidd seems to work well! I'm slowly working on the game a bit more and added a new background effect for the water levels (I mentioned this before when the question about F18A GPU usage was asked a while ago). I'd love to see how well it fares on the pico9918, so if anyone with one installed could run the attached cartridge and report back (if possible with a short video of the result), that would be awesome! *edit* The effect itself is nothing fancy, it uses the scanline interrupt to modify the horizontal scroll offset to create a sine-wave like water ripple effect on the second background layer. akidd.rpk 128.76 kB · 2 downloads The ripple effect didn't work for me with the 0.4.1 gpu dev firmware. The background layer appears interlaced but it had no motion. I tried capturing with my phone but it had a distracting moire effect, so if someone has a vga capture card that might be better. (There appears to be no menu entry for the .bin files. I had to make a subfolder in my finalgrom99 and descend and select the blank entry to run it.) Quote Link to comment Share on other sites More sharing options...
JasonACT Posted yesterday at 12:24 AM Share Posted yesterday at 12:24 AM 12 hours ago, TheMole said: if anyone with one installed could run the attached cartridge and report back Menu works well on my PicoPEB. The custom font is probably causing the FinalGROM99 issues. Like @PeteE the background image is static for me (so no point in a video). Quote Link to comment Share on other sites More sharing options...
JasonACT Posted 23 hours ago Share Posted 23 hours ago @visrealm This appears to be my fault. The GPU code is waiting for scanline 192 before progressing the wave, but one of my changes to the F18A codebase made it go directly from scanline 191 to 255. When I change the GPU code here to detect 191, it works fine. We're going to have to work out what scanline values a real F18A progresses through to fix this. 1 Quote Link to comment Share on other sites More sharing options...
visrealm Posted 22 hours ago Author Share Posted 22 hours ago (edited) 51 minutes ago, JasonACT said: @visrealm This appears to be my fault. The GPU code is waiting for scanline 192 before progressing the wave, but one of my changes to the F18A codebase made it go directly from scanline 191 to 255. When I change the GPU code here to detect 191, it works fine. We're going to have to work out what scanline values a real F18A progresses through to fix this. I believe it continues to increment until it reaches 255, then stays at 255 until new frame. I haven't tested it myself though. Edited 22 hours ago by visrealm 2 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.