Proposal for a Propeller based Retro computer
Bean
Posts: 8,129
I was wondering if there is any interest in making a propeller based "retro" computer ?
Here are my ideas:
Instead of adding external memory, use two propeller chips. One to handle VGA and SD card FAT32, keyboard. One to handle BASIC interpreter.
VGA (320x240) 4-color unique palette for each 8x8 block of pixels. Sprites ???
SD card FAT32 for program and data storage
PS/2 keyboard
PS/2 Mouse ???
BASIC Interpreter (written in LMM) - Floating point, structured no line #s.
I/O ports ???
Any other ideas ?
Here are my ideas:
Instead of adding external memory, use two propeller chips. One to handle VGA and SD card FAT32, keyboard. One to handle BASIC interpreter.
VGA (320x240) 4-color unique palette for each 8x8 block of pixels. Sprites ???
SD card FAT32 for program and data storage
PS/2 keyboard
PS/2 Mouse ???
BASIC Interpreter (written in LMM) - Floating point, structured no line #s.
I/O ports ???
Any other ideas ?
Comments
On a more serious note I think you have a good idea going. You could use a mouse and have a windows style form system going. One form were you enter the code and the other form displays the output so you can see both at the same time.
I have something like that now with MicroProp-PC in a $5 off the shelf case.
Propeller 1: Serial Port, EEPROM, RTC, Status LED, SD Card, +32MB SDRAM.
Propeller 2: Serial Port, EEPROM, VGA, USB/PS2 Keybd, USB/PS2 Mouse, Stereo Audio.
The propellers are connected by an 8 bit I2C+8 bus. Propeller Serial Port on USB is switch selectable.
I stopped working on MicroProp-PC because the Inter-Propeller data Channel "IPC" got the best of me. The IPC works fine at 2.5MB/s (80MHz) on separate oscillators. The VGA is working in text mode.
I'll bring 2 of these to UPEW: 1 for potatohead, and 1 for whoever wants it most.
I think at one point they were going to make a dual prop board similar to what you are thinking of, but due to increased work load for them it never happened.
Personally, I think its Prop2, with 128k of hub, and enough pins for fast SDRAM, that will make video / retro on the prop really take off.
On a different note, I'd love see your embedded basic target running out of any memory supported by jazzed's caching memory driver or my VMCOG.
Not to steal Bean's thread, but there are a number of multi-prop pcb's out there that can were designed for this purpose.
All are documented, however all but possibly the Hive are commercial pcb's, ie not open source hardware.
TriBlade - I think Cluso99 was the first with one to make a multi-prop, or at least the first to show one; one of the three Prop's could theoretically use its SRAM as a frame buffer, no one has written a driver for it
http://forums.parallax.com/showthread.php?111093-Single-Board-Computer-RUNNING-Propeller-ICs-and-TriBladeProp-PCB&p=790917
Hive - also has three props (thanks Martinh - Hive is open-source hardware and software)
https://sites.google.com/site/robothomeschool/home/hive-project
Morpheus - my dual prop commercial design (please take discussions of Morpheus to the thread below, I do NOT want to hijack Bean's thread)
http://forums.parallax.com/showthread.php?113929-Morpheus-256-colors-high-rez-bitmap-VGA-0.5-7.5MB-XMM-**NEW**-VGA-320x240-sprites-UPEW-see-p11
Jazzed's upcoming MicroProp-PC (I added it after I saw his post here, sorry steve, I initially forgot about it)
Now as for single Prop retro platforms:
The original Parallax Demo Board - can emulate many old systems all by itself
http://www.parallax.com/Store/Microcontrollers/PropellerDevelopmentBoards/tabid/514/CategoryID/73/List/0/SortField/0/Level/a/ProductID/340/Default.aspx
The original Prop gaming board - the Hydra
http://www.parallax.com/StoreSearchResults/tabid/768/txtSearch/hydra/List/0/SortField/4/ProductID/467/Default.aspx
The C3 ... tiny descendant of Hydra
http://www.parallax.com/Store/Microcontrollers/PropellerDevelopmentBoards/tabid/514/CategoryID/73/List/0/SortField/0/Level/a/ProductID/721/Default.aspx
Dr_Acula's DracBlade, with some retro Z80 emulators already available for it
http://www.smarthome.jigsy.com/propeller
PropCade - my commercial design for retro action and terminal emulation (please take discussions of PropCade to the thread below, I do NOT want to hijack Bean's thread)
http://forums.parallax.com/showthread.php?121315-PropCade-Propeller-computer-for-emulation-gaming-RS485-networking-more-%28Joysticks-IR-see-p5%29
Not to mention the MANY different prototyping platforms, add on memory, etc out there...
But another Prop project never hurts... it spreads the WORD OF THE PROPELLER, and helps us increase the following.... (tongue firmly in cheek while I typed that)
The Hive is a completely open source and (as open as possible by using standard components) open hardware project.
Ahhhhh.....those were the days!
So ... don't hold your breath.
Sounds like an interesting project. What sort of problems did you run into that made you put it aside?
Video on propeller is fine for low res graphics or hires text, but even with all HUB dedicated to video buffers, it still lacks "umph" more easily available other ways ....
... That's why I'm working on the Propeller Platform Handheld - its LCD is 320x480 with 262K colors, offers up to 2MB of fast byte-wide Flash for code, video doesn't need any Propeller HUB memory, and a keyboard/mouse is not required for the touch screen.
Now if PropBasic was open to external memory implementations, that would be a blast. Alas, I can't find the keys.
10mbps is a lot more immune to noise.
For "production" code... 115kbps full duplex serial is your friend
Actually Morpheus is set up to have a 4 bit bus between the processors, I just have not taken advantage of it yet because I could not see how to get a significant improvement over the 20mbps code without using two cogs, and even then, it was difficult to do better.
I will still attempt to build 10mbps and 20mbps production quality IPC channels, but as Beau's driver notes, once hub access is accounted for, you can at best only get about 14mbps from a "20mbit" links.
Have a look here:
http://forums.parallax.com/showthread.php?101495-PropAltair-CP-M-operating-system-for-Propeller-anyone
All the old BASICs have been run on the Prop.
This is my concept...
Prop 1: Standard prop with VGA/TV, Keyboard, Stereo, I2C (for Wii compatible controllers), USB option
Prop 2: Overclocked prop with 512KB SRAM, uSD. Comms via 2 pin high speed serial to prop 1
I don't wish to hijack the thread, but here is where I am at...
I discontinued the TriBlade pcb because the pcb cost was too expensive. If there was enough demand I would relay the pcb to a smaller size to reduce the pcb cost to a reasonable cost. The RamBlade was (still available) designed to fill that hole as it plugged into almost any other prop. A few already know I have a RamBlade II coming. I have been designing a set of pcbs for a long time (not enough hours in the day) to do the retro thing better, plus the normal things too. They are close and I have most parts in stock for the project. I will be announcing shortly.
prop pin to prop in
See http://forums.parallax.com/showthread.php?99222-Propeller-DEMO-%2814.5-Meg-Baud%29-High-Speed-Prop-to-Prop-Serial-Communication&highlight=beau+14+32+bit+serial
I have also been badgering Baggers for the last couple of months to release PropGFX Lite as open source.
The problem is motivation, we both honestly feel that there is no market for this bar a few hardened users on this forum so maybe all we need is a bit of encouragement.
I am visiting Baggers next week so maybe all he needs is a gentle shove from you guys and he can get it released
@Bean, you need to check out what Baggers did with PropGFX and FemtoBASIC
HybridX3
Regards,
Coley
PS Coley,
24 cores for retro ! WOW
They are very neat.
What is that upper mini keyboard?
The KBD was an early "mini" KBD from CPC about 6 years ago. Originally it was on the sloping bit of a case made from old PC cases, that could suffer a 12" x 8" PCB which was to be the Nascom rebuild. It looked like a till, so it was to be "Tilley". When the Dracblade came along and your Z80 stuff, later finished off by Pullmoll, I evicted the ChipBasic2 (AVR) board out of it and cut it doun on size. It has the advantage over the "Compaq" KBD in that it has about 8 hours of batteries in it. After the 'phone batteries failed in the "Compaq" Vesion1, I used that space to add the third memory latch and gave it a real serial port, so now it has all of the 512KB of SRAM.
Keeps me off of the streets ....(along with all those injunctions).
I find the injections help:)
I'm typing this on an old clunky Keytronic keyboard. It's been asking me to open it up for weeks now and see what we can fit inside. It would still have to function as a normal keyboard though as I hate all these silent a squidgy keyboards around now a days. Not to mention half the machines I have to work on (embedded boxes) won't let you into the BIOS with a USB keyboard.
The HybridX3 looks like an ideal platform. Not sure we would NEED 3 propellers, but it couldn't hurt.
My next step is to modify embedded Basic (now called PE-Basic for Propeller Embedded BASIC) to use floating point variables.
Bean