Jump to content

electrotrains

Members
  • Posts

    376
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by electrotrains

  1. I will release the source code, PCB design files and 3d print designs for making a case, but I want to make sure it's had a proper test and any issues ironed out first. I have only just finished designing and printing a case, which is really required for anyone that wants to use one of these in an XL. Robin
  2. Yes - the use of a schottky diode for this is described in the Pico datasheet, and allows the pico to be powered by both USB or VSYS, and prevents back powering. I left it out to make the project simple to build and opted for a warning on the PCB instead. At the moment, when the pico boots, it looks to see whether it is being powered by VBUS or VSYS, and that determines whether it goes into mass storage mode or 2600 cartridge mode, so there would be no benefit to allowing it to be plugged into USB when acting as a cartridge. Robin
  3. Hi all, I was just pondering a possible future 2600 pico project... There is already open-source code (Adafruit DVI/HDMI) for driving a HDMI display using 8 pins on the pico. That leaves enough pins (just) on a RP2040 (i.e. custom PCB - not a standard pico) to monitor the 2600 address and data bus. Could you make a cartridge that monitored the 6502 memory access (particularly writes to the various graphics registers) and essentially build a frame on the pico for output via HDMI? I'm thinking of a pass-thru, or maybe mulitcart, that also has a DVI socket for a perfect picture output to modern TVs. Looks like audio could be done too: https://github.com/mlorenzati/PicoDVI This is the DVI breakout: https://www.adafruit.com/product/4984 Thoughts? Robin
  4. Hi, I'm not sure I've seen such a board - but on the other hand, I haven't been looking! If you do find such a board, it looks like a couple of the GPIO are required for the Wifi chip, though I think there would (only just) be enough left for the Atari cartridge port. Depending what pins had been used for the Wifi, you'd probably need to use a level shifter, since you'd need to use some of the ADC (definately not 5V tolerant) pins for the atari. I used IDT quickswitches to level shift the entire atari bus for the Ultimate Cart - these are easy and bidirectional and don't require extra logic. Just a diode (from memory). But surface mount only, and relatively expensive. You could have a look at the BOM and schematic on my github. Robin
  5. I started the project after reading that the Pico was probably 5v tolerant. If I hadn't read that, I wouldn't have bothered doing the project. Leaving them out means you can have a multicart with just a PCB and a £2 pico clone - and just about anyone can manage to obtain and solder that. If I was making a commerical project, I'd probably have used level shifters. But this was intended as a quick and easy DIY hobby project for people to build themselves. Using level shifters clouds that aim. That's my point of view - I understand why people feel differently, and they are free to design their own PCBs and update the UnoCart source code themselves 🙂 Robin
  6. Hi all, I think I've got enough offers to help test now - thanks to everyone that got in touch. Robin
  7. Finished more cart emulation this afternoon (Pitfall II DPC), so that's it level with the original version of the UnoCart. The ARM M0+ in the pico doesn't have a hardware divide (unlike the M4 in the UnoCart) so I had to revise things a little bit - it wasn't until I looked at the dissassembly that I realised why the 2600 kept crashing. Anyway, with the revised code the music sounds just as good (or bad?) as it does on the UnoCart so that's a success 🙂
  8. Hi Forrest, I had pretty much everything running at the default clock speed of 125Mhz. However, I couldn't get XEGS cartridges to work at that speed, so I've upped it to 250Mhz. All reports are that the RP2040 works reliably at this speed, and the standard flash memory is also happy to run at double speed. However, the second couple of purple pico clones arrived with a different brand of 16Meg flash memory on them - zbit rather than winbond and I couldn't get the A8 firmware to work at all at first on these boards. Eventually I found the datasheet for these zbit flash chips and discovered they were rated slightly slower than the winbond chips - they work fine at the default clockspeed, but are (just) above spec when the pico is overclocked. So I've increased the flash divisor for this reason and now the firmware works fine on purple pico clones with both types of flash. This seems to make precious little difference to the speed when acting as a USB mass storage device - I guess the main cost is in the flash sector erase, not the data copy. Robin
  9. I had intially intended to (and was looking forward to having something new to learn about), but then I read this article which compared a PIO approach with the kind of polling I did in the UnoCart: https://github.com/rhulme/picoROM_pio/blob/master/doc/README.md So - no, not using PIO. No need and it would probably be slower.
  10. The ROM emulation on the 2600PicoCart does not use PIO, it uses the same polling techinque used it the original UnoCart2600. This article (not by me) is worth reading if you want to learn more: https://github.com/rhulme/picoROM_pio/blob/master/doc/README.md
  11. Sounds like a nice hardware design, but I guess the lack of GPIO23 on the pico board rules out a common pin scheme. It might be possible to pick it up somewhere, but the pico board itself is on a tiny scale so not very friendly to a normal soldering iron.
  12. Batari, It might be worth agreeing to use a certain set of IOs for the address bus and data bus for future compatibility? I'm using GPIO0 (A0) to GPIO12 (A12) for the address bus, then GPIO13 (D0) to GPIO20 (D7) for the databus. Does that match what you've used? GPIO21/22 used for PAL60/PAL/NTSC selection for the menu. ADC pins not used at all. Regarding 5V tolerance, there was a comment from the CEO of Raspberry Pi foundation on Hackaday: Assuming this was him (there has been no official statement to the contrary, despite publicity in the relevant forums) then it looks ok. I'll do more soak testing before sending any out though. Robin
  13. Its the one described here - https://forums.raspberrypi.com/viewtopic.php?t=337976
  14. The 2600PicoCart is acting as a USB mass storage device, not a USB host - so that wouldn't work. Edit - having said that, there is a USB host library available for the pico, so you could rework the firmware to make something like that work. But I prefered no other components, and to make maximum use of the hardware on the pico board itself, hence the use of the on-board flash.
  15. Hi Batari, Agreed - the pico is a really nice dev platform. I hadn't heard of the picollo - do you have link to your announcement? Regarding the 5v tolerance, I'd read this article and concluded it was worth a go without level shifters - though I should probably have one on the data bus. But the main aim was to make something fun and cheap that people could build themselves even without much soldering experience. Extra components get in the way of that goal. And if they don't last forever, it doesn't matter so much when the parts cost less than five pounds. Robin
  16. It had crossed my mind, but I don't think there are enough GPIO pins left to add an SD card (on either version of the cart) - I'm not sure if there is much benefit anyway - in USB mass storage mode, the files on the cart are both readable and writeable by your desktop operating system. So you can copy files back from the cart to your PC, and onto any other media you want. This is only really useful for the Atari 8-bit cart at present, since it can emulate a disk drive (using ATR files) which you can write to from the Atari. So you can write a program in BASIC, save to an ATR file on the cart, then copy the ATR back to your PC for e.g. use on an emulator. Robin
  17. Yes, you can use female headers in between the Pico and the PCB, if you want to avoid losing the pico forever 🙂 I did that when the PCBs arrived, just in case they didn't work! Robin
  18. Hi All, I got a Raspberry pi pico a few weeks ago to have a play with and forgot about it. Then, after noticing a post here, I realised I couldn't resist having a go at using it to make a multicart for the Atari 8-bit. A couple of PCB revisions later, I'm pretty much done, and proud to announce the A8PicoCart! Unfortunately the official Pico board hasn't got quite enough pins to make a proper multicart - you can emulate 8k and 16k carts, but that's about it. However I discovered that you can buy £3 purple Pico clones from China with 16Megs of flash, USB C and, more importantly, all the GPIO pins broken out, which is just enough to hook up the whole cartridge port. So I've made an Atari 2600 multicart with the official Pico, and an A8 multicart with the purple Pico clone 🙂 (If you are interested in the 2600 version - I posted earlier today about it here). Neither cart has any other components other than a Pico board and the PCB - so this will be a very easy DIY build. Although the RP2040 used in the Pico is not formally 5V tolerant, it is rumoured that the non-ADC pins are, so I've used these, and hoped for the best. No problems so far after many hours of testing firmware versions! I wanted to go for an easy build, so wanted to avoid extra components. The firmware is a purple themed tweaked version of the original UnoCart firmware, though I've added the 4 extra cartridge types recently added to the Ultimate Cart firmware. As there is no SD card, I've also written support to make the cartridge a USB mass storage device, so you can simply plug the cartridge into a PC with a USB cable and copy files over. This provides 15Megs of flash storage onboard for ROMs and ATRs. Oh, and its also very easy to update the firmware on a Pico - just plug into USB with the BOOTSEL button pressed and drag a file onto the device. There are 2 versions of the PCB at present - one with the Pico facing forwards so the status LED can be seen, intended for uncased use on an XE. The other has the Pico facing away so it will fit in a case and there are mounting holes to assist. At some point I will design a 3D printed case for it. As usual I've got a load of spare PCBs, so if anybody wants an assembled board to help me test, get in touch? Robin Pico and even cheaper purple clone PCBs New Firmware USB Mass storage mode With its 2600 brother
  19. Hi All, I thought it was time to post about my latest mini-project - I've ported my original UnoCart 2600 code to run on a Raspberry Pi Pico which is a very low cost (£2-£4) ARM based microcontroller board from the Raspberry Pi Foundation in the UK. The idea is to make a very low cost (<£5) DIY multicart project, which really just involves soldering a pico to a PCB - there are no other components. In theory the pico requires voltage level shifters to connect to the 5V atari bus, but there are rumours to the effect that most of the GPIO pins are 5V tolerant (and in practice others have not encountered problems to date), so I've skipped them on the basis that this is supposed to be cheap and cheerful. I've been running it for many hours so far without problems, but your mileage may vary. There is no SD card slot - the Pico has a 2Megs of flash, so I've written code to expose it as a mass-storage device when plugged into USB. In practice that means you can plug it into your PC with a USB cable and drag and drop files directly onto the cart from Windows. The 1meg of flash allocated to ROMs is in practice enough to fit all my favourite stuff and more. The PCB supports both the cheaper castellated edge pico version which can be soldered directly to the board surface mount style, or the Pico H with headers. The firmware is basically the UnoCart 2600 firmware, and I haven't finished porting all the cartridge emulation code yet, but it basically seems to work great, though I do get a noticeable amount of RF interference on the TV compared to the original unocart - I'm waiting for some new PCBs to arrive from China that will hopefully improve matters there. The new PCBs will also have mounting holes, and a PAL/NTSC solder bridge for selecting the firmware. When I've finished the firmware, if anybody wants a finished cart to help me do a bit of testing? Initial Prototype Version 1 PCB Pico-themed green firmware (Pal) Atari XL/XE Version I've also made an Atari 8-bit version using a purple 16Meg Pico clone that has more GPIO pins than the original Pico (the Atari 8-bit cartridge port has slightly too many signal lines to interface to the original pico). I'll post about that in the 8-bit section seperately.
  20. Hi ascrnet, Thanks for the well structured and documented patch. I haven't had much time for Atari or projects for the last few years - moving house, work, my kids, etc, etc - and I had really wanted to test your changes before accepting them to the main branch. That's my excuse anyway. Robin
  21. Hi wildstar, I've just tried the v3 eagle .brd file from the github repository and it uploaded and previewed fine with OSH park. Did you download a zip of the whole repository (there is a green clone or download button at the top right of the page)? Robin P.S. I've probably got a few spare PCBs that I never used - PM me if you want me to post you one - it will be cheaper than getting 3 from OSH park if you only wanted one.
  22. Hi Vigo, I wasn't aware of this - thanks for your analysis and suggested fix. Can anyone else confirm instability with 8k ROMs on an 800? I hadn't had any reports of this prior to now which is slightly surprising. Maybe not that many people use the Ultimate Cart on these older machines...? I only have XL and XE machines to test with. Anyway, I'll see if I can find some time soon to test your fix and get the patch committed to the official firmware. Robin
  23. My atari has been away in a box for a bit while I've been playing with other projects, but from memory, it should be sorting A-Z (ignoring case). The only exception to that is that directories will be sorted above files (and again, sorted A-Z). Glad you are enjoying your cart! Robin
  24. Ah, I think I understand... Yes, github doesn't make it that easy to simply download individual files - it kind of expects you to download the whole repository (the green "clone or download" button at the top right when you are on the main page). You could just do that. Or, to download the individual files, you can right-click the "raw" button and then choose "save link as..." (that's in firefox anyway). Robin
×
×
  • Create New...