[HN Gopher] pico9918: A replacement TMS9918A/TMS9929A VDP using ...
       ___________________________________________________________________
        
       pico9918: A replacement TMS9918A/TMS9929A VDP using a Raspberry Pi
       Pico
        
       Author : classichasclass
       Score  : 46 points
       Date   : 2024-06-10 17:09 UTC (5 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | ComputerGuru wrote:
       | VDP: video display controller/processor
        
       | mturk wrote:
       | The TI-99/4A community is really (and somewhat surprisingly)
       | still very active. Among other things, the monthly stream from
       | the CTIUG on YouTube ( https://www.youtube.com/@chicagotiug5404 )
       | of their monthly meetings at the Evanston Library is actually
       | quite fun, and the js99er.net (somewhat recently rewritten in
       | Angular) emulator is just amazing.
        
       | renewedrebecca wrote:
       | It's really cool that the Pico has the horsepower to do this sort
       | of thing instead of having to reach for a FPGA.
        
         | jsheard wrote:
         | The PIOs really are a superpower for this kind of thing.
         | Interestingly the RP2040 documentation mentions that each PIO
         | uses roughly the same silicon area as a dedicated peripheral
         | for something like SPI or I2C, so now that the concept has been
         | proven to work in practice it would be amazing if the successor
         | chip ditched most of the single-purpose I/O peripherals and
         | replaced them with a huge battery of PIO channels which can
         | each be programmed to do SPI, I2C, or whatever else as needed.
        
           | _Microft wrote:
           | Here's a quote from Eben Upton (CEO of Raspberry Pi Trading,
           | 2023):
           | 
           |  _"We know what people don't like about [RP]2040," Upton
           | admitted at the event, "the [Arm Cortex-]M0+ [architecture],
           | could have more RAM, could have more GPIO [General-Purpose
           | Input /Output], and we know what people do like -- the PIO
           | [Programmable Input/Output blocks]... and we have a chip
           | team."_, [0][1]
           | 
           | That doesn't sound too bad, hmm?
           | 
           | [0] https://blog.adafruit.com/2023/12/04/raspberry-pi-hints-
           | at-n...
           | 
           | [1] https://www.hackster.io/news/eben-upton-hints-at-an-
           | rp2040-s...
        
             | jsheard wrote:
             | Sounds good to me. The decision to go for two tiny cores
             | rather than one beefier core with an FPU was strange, and
             | it would be nice to have a PSRAM interface like the ESP32s
             | do. They seem to want to have one chip SKU which does
             | everything rather than a million variants, hence why they
             | made the flash external on the RP2040, so if they can
             | extend that to one chip which can be configured with
             | variable flash size, memory size, and has tons of PIOs...
        
         | jdswain wrote:
         | The main constraint appears to be the number of available
         | GPIO's. For 8-bit projects the bus can take a large number of
         | pins, not leaving a lot for the other functions.
        
           | jsheard wrote:
           | Annoyingly the RP2040 has 30 GPIOs but the official Pico
           | boards only break 26 of them out, which seems like an
           | unforced error given the layout would have enough pins for
           | all of them if it had less than 8 redundant GND pins. Those
           | spare GPIOs are used to connect the WiFi coprocessor on the
           | Pico W, but on the regular Pico one of them is just used for
           | the onboard LED and the other 3 aren't connected to anything.
        
             | fleventynine wrote:
             | The redundant GND pins are necessary for signal integrity
             | and low EMI when running at higher speeds; the high speed
             | signals need a return current path with as little loop area
             | as possible, so you want those signal pins close to GND on
             | the connector.
        
         | nsxwolf wrote:
         | This is exciting because the current defacto standard for
         | upgrading the graphics in a TI-99/4A is the F18A project, which
         | is an FPGA based solution. It's really cool, but it's expensive
         | and frequently unavailable.
         | 
         | I am interested to see if this project evolves in the direction
         | of F18A compatibility. It will need to support 80 column mode
         | at a minimum before I switch.
        
       | chasil wrote:
       | The 9918 was used in much more hardware than the TI-99/4(a), and
       | Yamaha produced a more capable version:
       | 
       | "The TMS9918 and its variants were used in the ColecoVision,
       | CreatiVision, Memotech MTX, MSX, NABU Personal Computer,
       | SG-1000/SC-3000, Spectravideo SV-318, SV-328, Sord M5, Tatung
       | Einstein, TI-99/4, Casio PV-2000, Coleco Adam, Hanimex Pencil II,
       | and Tomy Tutor...
       | 
       | "Texas Instruments' TMS9918A was succeeded by Yamaha's V9938,
       | which added additional bitmap modes, more colorful sprites, a
       | vertical full-screen scroll register, vertical and horizontal
       | offset registers, a hardware blitter and a customizable palette."
       | 
       | https://en.wikipedia.org/wiki/TMS9918
       | 
       | MAME also implements the 9918 in software, as many of its
       | emulation targets bundled it as a component (mostly video arcade
       | games).
       | 
       | https://www.reddit.com/r/MAME/comments/pw8285/is_it_possible...
        
       ___________________________________________________________________
       (page generated 2024-06-10 23:00 UTC)