|Here's how it began in the past...|
Back when we began the Propeller Elf project, a tiny computer using one Parallax Propeller chip, we never expected the overwhelming response it would generate. Herein lies the twist. Readers wanted to bring back the days of yesteryear when the 1802 Elf was introduced in a Popular Electronics article that led to many spinoff computers. Many people built the Elf and some moved on to other machines like the COSMAC Elf II variations by Netronics. Other companies had their versions - the RCA CDP1802MPU was very popular, having commanded the NASA Galileo Spacecraft to other worlds and beyond. The Propeller ELF II project is a natural progression from other Big Brain projects like the Propeller ELF PE, Propeller Minimal Computer MC, and the Propeller Shrunken Computer SC.
"The Galileo spacecraft used multiple 1802 microprocessors. The 1802 has often been incorrectly claimed to have been used in the earlier Viking and Voyager spacecraft, but it was not available at the time those spacecraft were being designed, and primary sources describe the Viking and Voyager computers as having architectures very dissimilar to the 1802, and not being microprocessor-based. The 1802 has been widely used in Earth-orbiting satellites mainly for their primary computer but since the 1990s its use as a low complexity flight control and telecom systems computer has dominated." Wiki
I'm working on an 1802 core that uses the concept of a "bus" using hub ram where soft peripherals run in other cogs and communicate of that bus. I'm still not sure if I'm going to be able to squeeze it into the available cog memory and available cycles to get the timing right to support color burst /2 timing. I'll keep you updated on progress. C.W.
Article 1978 Electronic Experimenters Handbook
Old Issues of Ipso Facto
COSMAC ELF on Youtube
COSMAC ELF EMULATOR SECTION
cosmacelf.com) Dave Ruske
What can the Tiny Elf emulator do?
Emulates both basic ELF and ELF II panel layouts.
Automatically switches to accommodate video when the virtual 1861 Pixie graphics chip is activated.
Selectable memory: 256 bytes, 4K or 16K.
Save, load and delete 1802 programs.
Comes with several test programs in an optionally installed database:
Starship Classic video display program as shown above, center.
Starship Animation program from Popular Electronics.
Seconds Clock video program by Tom Pittman (slightly modified to run faster on the emulator).
Output Test increments the hexadecimal display and flashes the Q LED.
V. G. Cayer's kaleidoscope program from the pages of Ipso Facto.
Tom Pittman's Tiny BASIC (runs extremely slow, but it does run!).
The TinyELF Palm Utility for Mac OS X is now available for easily importing and exporting programs.
Freeware! Enjoy the program and feel free to share it with other classic computer enthusiasts!
Work through Tom Pittman's "A Short Course in Programming" (available here) to learn microprocessor principles and 1802 machine language.
This is interesting. It includes an 1802 component. (or something) The Computer Emulation Framework (CEF) is an application framework
specification for the purposes of emulating various computer hardware
configurations in software. CEF uses independant components, each of which emulates some hardware, such as a CPU or memory. These components can be connected together to form complete computer emulators. The components can be mixed or matched as desired. Uses for CEF include low-level debugging, simulation of unavailable hardware, cross-assembly, and emulation of one computer on another.
Windows: TedsElf.zip Version 0.19 (9-8-2009)
Ted writes: "This program emulates my first computer... Get ROM Code and Tubes for a cheap thrill. The 8 LEDs above the keypad are the PORT 4 display that I use. The lit LED above that is the Q LED. The [Y[[[KK display at the top left is my 7 digit ASCII display. See Clock... for a program to make it wiggle.
The S and H keys on the keypad do nothing. The L key is the Input key (Load button). I assert EF3 on any hex key down and EF4 on the input key down.
The Auto Load switch will pulse the input button every other hex key press. To load a simple program using the Hex key pad. Click Reset, then Load, then key in 7 B 3 0 0 0. Then click Reset then Run after making sure the run addresss is set to zero. The Q LED should light. For more fun, repeat the procedure but use:
E2 F8 01 B2 13 93 52 64 22 30 04Windows Timer Function
The Debug Control window shown above can be opened up by selecting the View menu then selecting Debug Window. A single break point can be set and then the processor can be single stepped. The display shows the processor stopped in the video interrupt routine (P=1) with the 1861 Pixie chip currently set to DMA the line starting at address 0x01b0 (R0). It is not real pretty, but if you have the assembler listing up next to this debugger window it makes it pretty easy to debug programs.
The file load function accepts hex files produced with my Assembler which will include a run address and and optional description. Intel hex file format is also supported but there is no way to embed the start address or description."
And DO NOT MISS Ted's ELF CLONE Project - it's a keeper!
Ted describes this project. "This is a bus accurate full speed Elf created without an 1802 or 1861. This project is able to load a programs via dip switches and execute it. The image on the left is the final hardware soldered onto a proto board. The image in the center shows the solderless breadboard prototype with video output from the 1861 emulator while running my grfont3 program from "ROM". The image on the right is the SourceBoost (www.sourceboost.com/home.html) development environment simulating the code that emulates the PIC running the grfont3 program produced by my 1802 C compiler. I wrote plugins for source boost to emulate the hardware as well as dump a VCD trace of the simulation."
Lee Hart's 1802 Hardware Emulator - Introducing the "Membership Card"
We just started reviewing Lee Hart's incredible 1802 Membership Card kits, based on the RCA COSMAC 1802 processor and the early ELF microcomputer design with that CPU. There's no doubt Lee could have designed the original COSMAC ELF and it would be a lot smaller! Current status and prices. The Membership Card Product Page is linked here and the kit support page is at this link which includes the construction manual and schematic. http://www.retrotechnology.com/memship/memship.html
This project may have several variations but some preliminary specs are already under consideration.
12) Power Supply
13) Similar footprint
14) Video Modulator Equivalent
15) List of original software
16) Core commands
This section will report progress in constructing the Propeller COSMAC ELF series.
Thursday March 15th, 2012
* famous thick HYDRA book
* power supply
* AV cables
* PS2 ASCII keyboard
* FC Super Loader Game Controller (with directional pad, slow, aa turbo, bb turbo, a button, b button, start, select)
* HYDRA CD with software, demos, games, tools, documentation & Propeller IDE.
COSMAC ELF TINY BASIC SECTION
TOP Photo Source: http://www.retrothing.com/2008/05/the-original-co.html
Tom Pittman's Tiny BASIC
Tom Pittman's Short Course in Programming
Here's a gem. The original Introduction to Programming in Tiny Basic by Tom Pittman for the Netronics ELF II
Tiny Basic User Manual original by Tom Pittman
Tiny Basic Experimenters Kit by Tom Pittman
Itty Bitty Computer & Tiny Basic more from the master
Itty Bitty Computers the main web page
The Return of Tiny BASIC by Tom Pittman
Tiny Basic on WIKI about origins
Take a look at MINOL which is a Tiny BASIC by Erik Mueller written for the 8080 as there's a Propeller version found via the links in the Ultimate List of Big Brain Languages.
HOT NEWS! PROPELLER TINY BASIC This is the latest news about a programming language similar to Tiny BASIC named FB that was developed on the Propeller chip and led to the development of a full featured FemtoBASIC. FB is very similar to the original Tiny Basic ELF version by Tom Pittman. Femtobasic was developed from FB basic for the Parallax Propeller chip. The discovery thread is here:
Download fb here:
* 128K EEPROM located on above
* User manual drivers demos on CD for above
* Paper printed quickstart guide with schematic for above
Note the HYDRA Xtreme Card has a CPLD programming port, current operation LEDs, a power LED and a plug in edge card interface that fits the HYDRA Motherboard.
For building ELF circuits and to fit the motherboard, a HYDRA Blank plug in Experimenter Card #21714 is available for use.
Fitting the HYDRA Motherboard are two #32361 128K Memory Expansion Cards. This is designed as a game card with a lot of very nice features. These can hold various programs and act the same as the retro Kansas City Cassette Standard that was originally used to load and save programs to and from the the COSMAC ELF II.
Included is the #27978 1GB Micro SD card but I don't see a board to go with it so this could be useless.
The real prize in this ELF / HYDRA package is a plug in 1GB SD Card and the SD Max Storage Board to go with it. This board is really phenomenal as it contains an on board 128K EEPROM, Write Protect, and the edge connector to fit the HYDRA Card BUS. Also included is a CD with software, drivers, tests, demos and a printed Quickstart Guide with schematic. The board uses a push type SD slot, has the on board 128K EEPROM, a power LED, Card Inserted LED, a Write Protect LED and a Header Interface for experiments. The drivers for this require a PC computer and CD reader for setup.
The actual HYDRA board is a marvel of electronic and computer engineering and we'll go over this in the near future. One can also use any number of other Propeller boards to adapt to this project.
The HYDRA Board First Glance
POWER SUPPLY WARNING! The 9-volt DC 300ma power supply is designed for 120VAC source only and will work in Taiwan and the USA but not Mainland China.
GAMES & PROGRAMS
This version contains the USR functions which access specific points in memory and may not be ideal for running via an emulated chip. Another version may translate more readily. For example, check out my version adapted for the Penguin robot. (see below)
HTML copy of "A Short Course in Programming" by Tom Pittman for the 1802 microprocessor. It's not TinyBasic, but it's basic and tiny. Chapter II is specifically for the ELF II.
GOLD MINE ALERT! This is the original build it article for the Netronics ELF II as published in the 1978 Edition of Electronic Experimenter's Handbook. http://www.sbrune.com/COSMAC/Personal_Microcomputer_for_100.pdf
netronics-elf.jpg The original "COSMAC ELF" was a construction project printed in the August 1976 issue of Popular Electronics. In 1977, RCA released the RCA COSMAC VIP, their own $275 commercial version based on the 1802 "COSMAC" CPU, which they produced. In 1978, the Netronics ELF II was released - a cheaper and improved version - with all the parts required to build your own "world's most practical computer" for just $99.95.
Read all about the Netronics ELF II here. http://www.cosmacelf.com/history2.htm
A company named Netronics Research and Development in New Milford, Connecticut was producing a computer christened the ELF II. The ELF II featured a hexidecimal keypad, 1861 graphics and 256 bytes of RAM, and also added an 86-pin expansion bus. A "Giant" board provided cassette I/O, serial and parallel I/O and a small monitor ROM, and 4K RAM expansion boards were also available at about $90 a pop. Netronics also sold ASCII keyboards and a version of Tom Pittman's Tiny Basic.
Some may remember Tom Pittman from the Steven Levy book Hackers. Pittman, a freelance engineer, was a member of the Homebrew Computer Club who Levy characterized as a "software wizard." Tiny Basic and its manual weren't the only Netronics offerings written by Pittman: they also sold a $5 booklet titled A Short Course in Programming that taught 1802 machine language, step-by-step, from blinking an LED to the obscure programming required for the 1861. As short as his course was, Pittman introduced the reader to the full host of 1802 microprocessor features without dependence on a technical vocabulary. Pittman also contributed to periodic newsletters for Netronics customers.
Netronics ELF II at a Glance
Keyboard : 74C923, 20 Key Encoder (for hexadecimal keypad)
WOW, THIS IS VERY ACTIVE, CHECK IT OUT *************
Getting TV Up and Running
The original COSMAC ELF II by Netronics used a TV to display Tiny BASIC. I originally used a 5-inch diagonal SONY TV because it had a superior carrier wave tuner and produced the clearest picture. This required the use of a video modulator to convert the composite video into RF and feed it into a TV channel. The Prop ELF will use NTSC video directly and feed it to a TV. The small Parallax TV is idea for this purpose. TVs specifically with AV inputs will work. Currently the TV is mounted into the belly of the Big Brain and we many need to look for another alternate NTSC A/V TV.
OMG!!! Finally we found the original NETRONICS ELF II TINY BASIC MANUAL. Download here (REMEMBER TO FIRST LOG IN TO THE YAHOO COSMAC GROUP) NTBManual.zip THE tiny basic CODE IS HERE NetronicsTinybasic.zip
ANOTHER BEST FIND!!!
is this original assembly manual from NETRONICS FOR THE ELF II.
LIGHT PEN My original ELF II had a blue plastic light pen from Netronics. The Propeller chip can simulate this light pen using a photo cell and RC circuit across a pin with added software. Let's consider adding a light pen in the future..
"The Netronics ELF II comes with very simple operating instructions that soon make you an expert, even if you've never had your hands on a computer before, whether for complex business, industrial, scientific, or hobby applications. Once you've mastered each of the commands an RCA 1802 will execute, these expansion boards let you run circles around "big name" personal computers that sell for a lot more money:
giant board $59.95/$39.95 kit, cassette I/O, serial port, parallel port, monitor ROM
4K static RAM board ($114.95/$89.95 kit)
16K static RAM boards ($229/95/$199.95 kit)
color video board
Matt Sarnoff built this fantastic complete 8-bit retro computer, reminiscent of the Prop COSMAC ELF Project under development.
"I've designed my own 8-bit computer, using the somewhat obscure Motorola 6809 processor, wired it all up by hand, and wrote the operating system, drivers, and the rest of the software, all in assembly language. It runs at a blazing 2 MHz, has a spacious 512KB of RAM, and can read files and run programs from a CompactFlash card. So far, user interaction is through a serial cable connected to a PC. Now that's not too bad, but I also went ahead and added vintage sound and video chips I bought on eBay. I stuck in a TMS9918A video chip (used in the ColecoVision, TI-99/4a, and more) and a YM2149 sound chip (used in the Atari ST, the ZX Spectrum, etc.) I've written a chiptune player and a couple graphical demos; my next steps are to actually write some games, and eventually get it hooked up to the internet..."
What's Inside the 1802?
Just for the record, here's what's inside the 1802 chip, and it took a hot bath of sulfuric acid to the do reveal.
The original COSMAC Elf was designed by Joseph Weisbecker and was published as a 2 part construction article in the Aug. and Sept. 1976 issues of Popular Electronics magazine. At the time, a single 8 bit CPU (Central Processing Unit) chip could cost as much as $350; in contrast, the entire COSMAC Elf could be built for around $80 including the cost of the CPU. The low price came at the cost of simplicity. The Elf only had 256 bytes of RAM, input was by toggle switches, and the only "output" was a pair of TIL311 hexadecimal displays and a discreet LED (which could also be hooked to a speaker for making music). A third installment (Mar. 1977) showed how to expand the memory, add a cassette interface (for storing programs), replace the TIL311's with discreet LEDs for even lower cost, and add a hex keypad. The final installment showed how to add a PIXIE graphics display to the Elf. All in all, the original COSMAC Elf was the most elegant personal computer ever designed; affordable, easy to build, and easy to program. If you want to build your own computer, you won't find a better design than the COSMAC Elf.
|Propeller ELF takes shape|
(It's ok, all those short program HEX codes will enter in BINARY nearly as easy.)
HARDWARE TAKES A BOOST
IT'S A BEAUTY AND WORK OF ART!!! The Propeller COSMAC ELF II project is now significantly advanced forward by burning the midnight candle and restoring and adapting this fantastic Propeller MC MINIMAL COMPUTER project to emulate the original COSMAC ELF II.
PANEL & CABINET
A new 1802 ELF front panel print is in the making. This polymer cabinet houses a solderless breadboard for quick wiring and rewiring, includes one 8-Core Parallax Propeller chip with SPIN language programming that is written for binary representations..
|Keyboard & Mouse Schematic|
The front panel includes an 8-bit binary switching panel with toggles and an enter step push button. Eight data LEDs are for programming and representation of binary output. An extra toggle switch (ADD/SUB) is for adding and subtraction functions.
It can also show the output from various binary games. Programs can input by setting various arrangements of the toggle switches. Memory is 32K RAM plus 32K ROM.
|EEPROM, crystal, reset, expansion|
READ WRITE PROGRAMS
Optional is the 32K memory EEPROM to hold and store programs and act as a Kansas City cassette tape standard with I/O capability.
Work will continue on this project and expect to see more photos, schematics, software and various construction details in the future.
|Schematic for MC & ELF II|
This version does not use the Parallax HYDRA board. The upcoming Propeller ELF III will use it. So far, the Propeller chip has the Elf I, and this project is the Elf II, and in the future we'll have the Elf III.
So stay tuned as we have lots of projects and will work on these round robin. The Propeller Chip is from Parallax. For now, reference this schematic to get an idea of the basic wiring.
|Power supply for the Propeller ELF II|
PERSONAL PROJECT NOTES Hello all. Just a personal note here about the 1802 Emulator build. Things are going well with this project and the time put into it is starting to "pay off." There's a great bunch of guys over at the Yahoo COSMAC ELF Group following along and this is really cool. They have lots of really great projects and great discussions. How often can you find people with the same great interests in life? The 1802 has taught us many lessons, started careers, created passion for computers, and helped make new friends. What a valuable processor! It's no wonder so many people have continued enthusiasm about it after all these years! As one can see by the front panel, it's going to be a mix of 1802 styles. I really like the binary switches and LED output however options abound. Now I'm looking through my parts drawer and I discover a Parallax Segment Display. It would be so easy to pin up one of these for the ELF.
|5MHz Crystal hookup|
Other options are possible like a green screen serial LCD panel. I remember when I built my first original 1802 and it was somewhat challenging to find the display. But today, a pin for pin wired 7-segment or similar display is nearly a done deal to install.
|TV hookup is very simple|
|Propeller Cog Configurations|
Get Tiny Elf here. BY DAVE RUSKE
Using TinyELFs Features
Programming the Elf II
Use the emulator to run Tom Pittman's original ELF Tiny Basic. This tiny little screen as seen on the Apple Mac is fantastic. I had hours of fun running Tiny Basic programs as typed in, and I simply can't wait to finish the hardware emulator and run more with Tiny Basic.
Here's another emulator page we found!
- Up to 64k of ram
- 6 operating modes:
- Standard - Operates like the elf project in Popular Electronics
- Elf II - Operates like the Netronics Elf II system
- Super Elf - Operates like the Quest Super Elf system
- Studio II - Operates like the Studio II game console
- ComX-35 - Operates like the ComX-35 computer. Thanks to Marcel van Tongeren for the technical info for this.
- Cidelsa - Operates like the Cidelsa 1802 based arcade machine
- Pixie Graphics - As described in Popular Electronics
- VT-100 Terminal emulation - Works in Elf II Giant Board serial mode (Q and EF4)
- IDE interface with 2 30mb drives
- Rudimentary 6847 video controller support
- Currenty runs on Unix/Linux, I have compiled this on windows, but it is a bit touchy
- Includes source code (c)
Download the Elf Emulator here
The libRcs library is required for this to run
Download the Elf Emulator disk tools. The disk tools allow you to easiliy manipulate Elf/OS disks
The 1802 Page
From the web site:
This kit is based upon my adaptation of the Elf project presented in Popular Electronics. I have designed a PCB to make for easier construction than the wire-wrap method I used in my Elf. I have been able to purchase a very limited supply of cdp1802bce cpus, as such this kit will be a very limited edition offering.
I initially plan to release these as build it yourself kits, but if somebody hassles me enough, I suppose I could build it for you. I will make the bareboard PCBs available without the full kit for those who only want the PCB. I will not however sell the 1802s outside of the kits. I also intend to make the PCB engineering files available on this website for anybody who would like to make the board themselves. If you are interested in one of these kits please write to me at email@example.com. Due to the limited supply, these kits are on a first come first served basis. (check the web site for availability)
BILL'S COSMAC ELF SIMULATOR
Download version 1.0 of the simulator, which now includes the CDP 1861 "Pixie Graphics" chip for high-resolution (okay, okay, 128x64) graphics. COSMAC.ZIP There's only one file in the ZIP. Just unzip it into a directory of your choice and run it. Comprehensive instructions, as well as links to more ELF and 1802 facts and trivia are included in the built-in help menu. Compatible with Windows 3.1, 95, and NT, as well as WABI (Sun), WINE (X-windows), SoftWindows (Mac), and other Windows emulators.
The RCA CDP1802 COSMAC microprocessor is a one-chip CMOS 8-bit register-oriented central processing unit introduced in 1976. The 1802 is interesting for a number of reasons, not the least of which is the fact that it uses static CMOS circuitry, meaning it has no minimum clock frequency. Also, most instructions execute in two clock cycles. It has sixteen general purpose registers, each of which are 16 bits wide. Any of these registers can be used as a program counter or an accumulator.
Quest Super Elf
CPU Suffix Codes
A TINY ELF TWITTER - now you can read all about it and do TinyELF Tiny Tweets, but these are big on importance for all 1802 COSMAC ELF fans. http://twitter.com/#!/TinyELF Wow, there's even a mention of "Humanoido Labs will be building an ELF II emulator based on a Parallax Propeller. Follow progress at http://tinyurl.com/89xegrx" Now that's really amazing!
(Quote from the web site) Marcel van Tongeren has created a 1802 emulator in the C++ language based on the COSMAC ELF emulator written by Mike Riley, with some help from me. The latest version of the emulator can be downloaded here or by clicking on one of the COMX screens above. Work is ongoing so keep checking this page for updates. Some features within the COMX functionality :
· Adjustable speed, so you can boost the speed of the COMX beyond 2.813 or 2.835 MHz !
· Tape features PLOAD, PSAVE, DLOAD, DSAVE including a Turbo PLOAD version
· Disk drive and COMX DOS support via image files, including the DOS 1.4 master disk image
· Direct COMX memory access to load and save software from the PC hard disk via ‘.comx’ files
· Expansion box, the original and a version including the F&M expansion ROM 3.1 with full screen editor
· 32K RAM card, F&M Joy card, Printer controller (original and one with F&M ROM)
· PAL and NTSC video modes both with full screen option by pressing F3
· Sound support for MUSIC, TONE and NOISE commands
· Next to emulation of the COMX-35 and COMX PC-1, support for Elf 2000, Cosmac Elf, Neutronics Elf II, Quest Super Elf, Cosmac VIP, Studio II, Cidelsa, Telmac 600, Telmac 2000, Telmac Nano and Pecom 64.
· Printing listings to a file and printer for offline editing and storage
· Support for COMX PL-80 Plotter and Thermal Printer simulation and sending the output to any printer you own
· Video screen dump to bitmap file
New COSMAC ELF Laboratory Sunday July 1st 2012 Update!
This fun project has become more involved with the COSMAC Elf and so we're devoting more actual lab space to it. The new lab will have a larger work space and more resources.
|This New Lab is for developing a |
COSMAC Propeller ELF
Update on the Simulation of Tom Pittman's Tiny BASIC on the Elf in July 2012 We're in contact with the developing master of FP, a remarkable software that runs on the Parallax Propeller chip and is as near to the Tom Pittman Netronics COSMAC Elf II version of Tiny Basic that we can find. Ironically, it's nearly identical, but this may be from coincidence. According to rokicki, he wanted to use the Parallax Propeller chip to make a really cheap (nearly free) microcomputer to give away to children so they could have the same fun that all of us old hackers had back in the 70s. (Sort of like what's going on now with the Raspberry Pi project).
Rokicki's code is his original development, though patterned after the standard Basic interpreters of the 1970s with the idea of a very simple tokenizing pass to, essentially reparse each statement as needed during execution to keep things small and simple. Fortunately for us ELF enthusiasts, keeping things small and simple is a commonality shared with Tiny Basic. The original C code was translated to SPIN. Though it's like Tiny Basic, but not related in any strict sense, it's more related to Basic interpreters found in the TRS-80 and C64. Stay tuned for more developments and sources for this language running on the COSMAC Propeller Elf.
For those of you wanting to get started on your own Propeller ELF projects but can't wait for our tailored version of Tiny Basic, here's the actual download site for FB.
Another advantage of running FB on our COSMAC PROPELLER ELF is that it can run very fast. This native code is in lightning sense compared to the original Tiny Basic running on the original Netronics Elf. Even though we are slowing down the Propeller chip from it blazing fast 80Mhz clock and up to 160MIPS speed, to the internal 12 MHz oscillator (with option to go to 20 kHz internal), the FB remains blazing fast. We may post actual speeds after all the tests are completed, though the idea is to tune it for options - options to make a new super high speed ELF at millions of instructions per second theoretical, and options to simulate the original speed of the Netronics Elf with the RCA CDP 1802 MPU, and an option for slower stepping and code execution experiments.
Also considered are primary functions and what the new stock ELF II should do "out of the box." There are three main areas to emulate under work and/or consideration for this project. 1) Games, 2) Programming Language, and 3) Graphics. For games, the Binary panel will be used with LED lights as the display and toggle switches for the Binary inputs. Well suited for this is a game of Hi-Low. This will be very useful for practicing Binary. The binary number is set up on the toggle switches and then input. Output binary is read from the LED panel. The game will probably be programmed in SPIN however programming with the Tiny BASIC emulator is also a possibility if I/O or adequate use of PEEK and POKE is included. For the Programming Language category, of course the underlying stock languages are PASM and SPIN with the Propeller chip. The emulated language will be Tom Pittman's Tiny BASIC (WYSIWYG) and the emulation will have elements programmed in the background with SPIN and/or PASM. For Graphics, the ever so popular Classic Star Ship will be emulated on a TV screen. The Propeller chip does NTSC TV format (or European standards) with a couple resistors. The graphics may be created directly from PASM, Tiny BASIC, or a special program using other resources. This covers the current work and work ideas for the project.
Keep in mind, this is a "you can build it too" project. The simple version runs off the $7.99 Parallax Propeller chip. Just add some simple things like LEDs, battery, switches... I used a solderless breadboard for this version and a couple AA batteries to feed 3 volts to the circuit. Of course just like the original Netronics ELF II, some expansion is required for running Tiny BASIC.
UPDATE Friday Sept. 14th, 2012
Like WOW! The long wait was definitely worthwhile. I just heard from Tom who is providing a Tiny BASIC programming language version but in C language! I guess we can call it Tiny C for the Propeller COSMAC ELF II. The trick was compiling it with the Parallax Propeller new GCC. This is at an early stage and may need some adjustment. More tests are needed to determine if it runs at the same speed or faster than the Tiny BASIC version which is also under development. For saavy development people, Parallax has a GCC development page at the link. There's also a GCC development Forum at parallax. This indicates our new Propeller COSMAC ELF II emulator project from the future will be upgraded to run TINY C (in addition to Tiny BASIC). Now that's really cool! Thanks Tom!
Also found for the C-Language part of this project is a C Primer that is based on the original Parallax PEK Kit. This is really unique because the original PEK is based on SPIN language. The C part will base upon GCC which should include the subset of TINY C statements. The download is a series of PEKitLabs tutorials converted to C and explained by Jeff T. See the download option for C Primer and the PEKitLabs.zip 106 KB at the link. The primer will be a good start, comparable to Tom Pittman's original Tiny BASIC primer! This is really some good luck! Link provided.
C Primer and the PEKitLabs
UPDATE FRIDAY NOVEMBER 2
PROP ELF SWITCHES & MORE
|SCHEMATICS FOR SWITCHES|
New Emulator Project:
The COSMACog 1802
On Friday November 9th, at the Parallax Forum, ctwardell announced the beginning of a project: The COSMACog 1802.
C.W. plans to use a single cog to emulate the 1802 with other cogs providing system control, memory, and video support. Three cogs are planned for: a COSMACog 1802, System Controller - Drives 2 MCP23S18 SPI I/O expanders to provide data display, hexadecimal keypad, system control switches, and a Memory Controller for up to 28k of RAM using HUB memory. A virtual bus representing a modified version of the 1802 bus would reside in hub memory, allowing other cogs to interact with the CPU emulator. A COSMACog 1861 is planned to provide "pixie" graphics with a 1861/1862 version to provide color graphics to follow. Depending on working out some timing issues, an updated memory controller using external SPI RAM will provide up to 64k of RAM. C.W. writes: "I'm currently using a Propeller Platform USB and a couple breadboards with the LED's and keypad wire-wrapped on some perfboard."
Stay tuned to the Big Brain's COSMAC ELF section as we report on new emulators, projects, updates, and the inside details of our own exciting COSMAC ELF II Projects.
Friday November 23rd 2012
Propeller ELF Update
Subject: Tiny Basic Extended
It's back to the future! Now you can add on Propeller ELF Extended Tiny BASIC!
This great find is Extended Tiny BASIC that runs on the Parallax Propeller chip under PropBasic without modification. It's compatible with the Propeller ELF hardware and circuits. Make notes of requirements by referring to the Forum thread. The derivative flavor is from Femtobasic language which was developed by Mike Green. PE-Basic is the dream child of Bean on the Parallax Forum.
The thread is six pages long and includes programming examples. Note, this is a line numbered Basic, somewhat rare these days, but definitely bringing back those fond memories of yesteryear! PE-Basic has a slew of features. It's best to follow Bean's updates log, shown after the links.
PE-Basic_0_16.zip 188.6 KB (Download Here)
I've been toying around with making a version of femtoBASIC in PropBasic instead of spin for speed. Here is my first crack at it. The hard-coded program has a tight 3 line loop that toggles pin 0. It's pretty fast 300,000 (simple) lines per second. So the pin toggles at 100KHz. [edit speed is quite a bit slower now] I'm sure when I start fleshing it out, I'll need to switch to LMM so that will make it quite a bit slower (about 75,000 lines per second).
I uploaded a new version that uses LMM, speed is about 57,000 (simple) lines per second. Editing the program now works too.
 July 5, 2010 uploaded a new version. Math works but strictly left-to-right evaluation. No "IF" or "FOR" yet. But it's getting there...
 July 7 2010 uploaded a new version. Simple IF ... THEN line# expressions work now.
 July 12 2010 uploaded new version. Added PEEK, POKE, DEBUG, INKEY, DISPLAY, VARS, NEW
 Dec 22 2010 uploaded new version. Added GOSUB/RETURN, FOR/NEXT, and more.
 Dec 23 2010 uploaded version 0.02 Dec 23, 2010. Added LOAD and SAVE.
 Dec 25, 2010 updated version 0.04. Added multiplie commands per line seperated by ":". And READ DATA RESTORE.
 Jan 9 2011 updated version 0.05. Added NTSC display, PS2 Keyboard input. Added LOCATE command. Allow lowercase.
 Jan 12 2011 update version 0.06. Various fixes. Allow IF...THEN commands.
 Feb 1, 2011 allow 8 character variable names (except FOR..NEXT). PLOT, LINE, etc.
 Feb 4, 2011 Full expression evaluator (Thanks Mike Green). Added system variable CHARS to change the bitmap of characters. POKEB CHARS,255 changes the top line of the space(32) character to a solid line.
 Feb 5, 2011 Fixed pin ranges, RND, ABS, backspace at start of line.
 Mar 9, 2011 Updated to version with color video.
 Mar 11, 2011 Updated. Changed name PEBasic (Propeller Embedded BASIC)
 July 11, 2011 Updated. Posted version 0.16.
BONUS Tip - YOU could GO WILD with over 239 Propeller languages and versions. Choose what you want and implement it on the Propeller COSMAC ELF. Now updated to include more languages!
Ultimate List of Big Brain Languages
WHAT IS C0 F0 00 ?
Do you remember this key-in sequence from over 30 years ago?
It's the HEX key-in code to load Tom Pittman's on-tape version of Tiny BASIC into the Netronics 1802 COSMAC ELF II.
JUST IN FROM MARC
Introducing the 1802ELFSim
Don't miss this one! Marc informs us he's developed a new 1802 Simulator and he's created a very impressive web site around its presentation, showing what it can do. The site is titled "Welcome to my 1802 ELFSim Simulator." We think this is a real gem and our nostalgic hearts go out to Marc for his exceptionally fine work!
Marc developed a new ELF II interface with these features! More photos at the link.
Follow the link to install.
These are the features at a glance:
A main screen showing the sixteen general-purpose 16-bit scratch-pad registers;
Four 4-bit N, P, X, I registers
Two 8-bit D and T registers
Three 1-bit Q, IE and DF registers
A 16X8 array of the memory locations
A microprocessor view which allows you to see the logic state of the I/O pins at any given moment
Six simulation speed rates - Single Step; Fetch + Execute; Slow; Medium; Fast; Maximum
A strip chart which allows you to see the logic state of some common I/O pins at any given moment
Stop the program with a choice of ten breakpoints
A CDP1861 Video Display Controller graphic simulator
A serial terminal screen simulating the ACIA RS232 chip on my NewELF II board
For contact, check the website.
Stay tuned for more information from Marc.
The Little CDP1802 Nostalgia Corner
NEW ELF II
Marc's website is exactly what ELF 1802 enthusiasts are looking for. Marc put together the all new Elf II based on his brother's remarkable designs. This includes a PCB board with all the original chips that Marc had on hand - the web page includes links to download the schematics, more photos, the Altera files used to program the Atera chip and the 1802 Assembler code. This is one fantastic project!
MORE COSMAC ELF STUFF ON THE SITE EXTENSION COMING SOON!
VISIT PAGE 2
The above content is actually only page one of the COSMAC Elf web site with focus on all Elf stuff, including the Propeller Elf II. I think the memory is almost filled for this page so we have a connecting "page two," which will eventually have tons more of stuff on the COSMAC Elves... The link will appear here (below) when the second page is established so stay tuned to this page. More info is on the way. BTW, there's a very small update on the Propeller Elf II ready for posting. As you know, the Propeller ELF II is a work in progress, coming to shape with stolen moments of time from a really busy travel schedule. As soon I get back to the printer at the home base, I can do the front panel instrument control prints. I'll find a way to post it, so others can use it for their own projects. That's something I'm really looking forward to doing.. In the mean time, I wish everyone the best luck on all their 1802 projects and studies. Thanks again for following along and being a part of this great "COSMAC ELF" initiative.
CONTINUED ON PAGE 2
COSMAC Propeller ELF II Page 2
PAGE ONE http://humanoidolabs.blogspot.tw/2012/03/propeller-elf-ii.html
PAGE TWO http://humanoidolabs.blogspot.tw/2013/04/cosmac-propeller-elf-ii-page-2.html