Is the Prop the new ZX80?
flapdoodle_dinghy
Posts: 17
I discovered that I read through the forum old and new posts with almost the excitement I used to have in the mid 70's when I read Byte magazine, hoping to find an article on how to make a drum memory from a Coors can or such.
Then I wondered what the minimum requirement would be today if you went cash-in-hand to a computer store and only wanted to print "Hello World" to a monitor.
The Prop chip may have brought us back to a point in time where AVERAGE people could build and program for fun like the ZX80 did, if only they were given the opportunity.
A basic machine might be a GPL design with little more than BASIC, PS/2 keyboard and TV output much as the early machines of 25 years ago did, but with incredible potential for expansion.
I am getting a bit old to start a major project but would love to help if someone wanted to try it.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://tech.groups.yahoo.com/group/parallax_propeller/
Then I wondered what the minimum requirement would be today if you went cash-in-hand to a computer store and only wanted to print "Hello World" to a monitor.
The Prop chip may have brought us back to a point in time where AVERAGE people could build and program for fun like the ZX80 did, if only they were given the opportunity.
A basic machine might be a GPL design with little more than BASIC, PS/2 keyboard and TV output much as the early machines of 25 years ago did, but with incredible potential for expansion.
I am getting a bit old to start a major project but would love to help if someone wanted to try it.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://tech.groups.yahoo.com/group/parallax_propeller/
Comments
PS/2 port for a mouse and keyboard and flash for program/data storage. My original intent was to figure
out how to make them cheap enough where I could self-finance a run of a few hundred and give them
away. My target audience is mostly children, the same sort of children that hacked micros during the
70's and early 80's.
This is what initiated my interest in the propeller, frankly, and it is *very* close to doable.
I'm sort of stymied at the moment on software issues though. Is BASIC the right language to use in
this day and age?
Also, memory is an issue; 32K is probably enough for the host software, but I would hate to constrain
the end-user to 32K programming space.
I really would like a one-chip solution, but even with the propeller we are talking about a propeller,
a crystal, an EEPROM for boot, perhaps a small SD card for storage, and we still don't have memory.
A flash-based microcomputer (using some Disk Operating System to manage the flash) would be really
cool, though. We are so close.
Still, an SD card provides easily for multiple users and more extensive storage. MMC/SD cards are getting cheaper, particularly in the smaller sizes.
Do you mean, if·I want to store data, I could use a EEPROM > 32k, using the same original destinated I2C pins, instead to use other two differents ?. Of course, taking care, to not write the first 32k.
What about the I2C driver?? that is important ?, or·I could take any from the library object ??
Thanks !!
Alberto.
PD: Very difficult to extract your high speed I2C version, from the OS.....
Yes, it's fairly inexpensive to use a larger EEPROM than the 32K x 8 one usually provided with the Propeller. For example, the 128K x 8 EEPROMs are $5-6 in small quantities while the 64K x 8 EEPROMs are about 1/2 that. Admittedly, the two EEPROMs would cost as much as the Propeller itself, but that's still a fraction of the total cost of the device. An SD/MMC socket is pretty cheap and may be a better solution. If you don't attempt to do general PC compatibility, but have a PC-based formatting program that sets up a directory with specific predefined names and fixed preallocated space, the support on the Propeller end might be very simple. With an SD card, you could just use the 32K x 8 boot EEPROM and forget I2C routines, just use SPI.
There is a SPIN I2C driver in the object library that already has calls specifically for reading and writing to EEPROMs. The high speed I2C driver in the OS is easily extractable. Just use the OS_loaderInit.spin file by itself. It's designed for that purpose. It has a start and stop routine and routines for reading and writing blocks of data. Look at the comments in that object specifically.
Mike
(There's a thread about a FORTH implementation, too)
I think the creator was mentioning adding a FLASH filesystem and PS/2 + VGA drivers to it, too.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Don't visit my new website...
Thanks a lot !!! for your suggestions.
But could I have a reasonable speed using SD cards (without implement a FAT system) ?.
Generally...I've that problem... if I've a lot of memory=>I've no enough speed....then if I've a good speed => I've not enough memory space.
ie: To drive a big led display..I need large amount of memory..but with a high speed too !!.
ie: To get work some kind of machines...I need to charge their "data" in memory, and send it quickly !!.
The same happens in this thread if you want to allocate the "language interpreter" in the SD card.
Alberto..
Envio editado por (BTX) : 11/3/2006 8:02:09 PM GMT
I ordered 3 R/W USB modules from Ebay for $.99 each... Two to carve up for the sockets (we will have to see how that goes) and one for my PC.
Plus 2 128Meg SD cards For $1.99 each to be shipped directly from China. Eliminates the middle man I guess. [noparse]:([/noparse]
Shipping for little items on Ebay is a killer though.
Bill
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://tech.groups.yahoo.com/group/parallax_propeller/
Off the top of my head,
- BASIC has a flatter learning curve for people accustomed to imperative/procedural languages.
- BASIC does a much better job of protecting the programmer from herself. (I reboot the Forth quite a bit after accidentally stomping on sections of RAM. Granted, this will be less common once all the bugs are out.)
- PropellerForth isn't finished yet.
Really, I'm targetting SD, TV, and PS/2 support. But it may be a couple months -- I have a day job.
BASIC makes a pretty good dabbling language for people new to programming. It also tends to teach them really bad habits; I would hope that any BASIC released encouraged structured programming and didn't require line numbers. (Or really, I'd rather it didn't even allow them.)
I love Forth, and for me personally, Forth would be excellent.
But BASIC is more accessible than Forth and more bulletproof. It's not hard to crash a Forth.
Crashing a BASIC (without using poke) is much more difficult. My target audience is young
children; giving them a cheap (free) computer that had much (or more) of the power of the
micros of the 70s that they can learn the excitement of programming on (and without exposing
them to the horrors of the internet, etc.)
> But could I have a reasonable speed using SD cards (without implement a FAT system) ?.
I'm not sure if you're talking about file I/O speed or using it as a RAM. If you're talking
file I/O it should be straightforward to get great speed (search the forums), and FAT is not
that hard to implement. As a RAM, however, it could be slow. I'm tempted to experiment
with a BASIC implementation that stores all data and code in SD, and uses a small cache
in the Propeller itself to offload the read/write demands that would incur. This is definitely
"abuse" of SD in some sense, because flash does have a limited lifetime (even if it is in
the hundreds of thousands or millions of cycles).
In the end I may end up just using the cache idea, but using a serial SRAM as the backing
store. (Yet another chip.) I wonder how fast I could make things.
> I ordered 3 R/W USB modules from Ebay for $.99 each... Two to carve up for the sockets (we will have to see how that goes) and one for my PC.
I tried going this way. It's painful. Much better to just buy the sparkfun SD socket.
Three for 99 cents.
I bought 2 of his miniature (8 1/2") keyboards because they seem more Prop size.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
http://tech.groups.yahoo.com/group/parallax_propeller/
What really interests me is the multiprocessor aspect of things. This perfectly recreates that 70's 80's era where people were figuring out how to do things on the chips of the day. Some of the same kinds of learning and discovery will be happening on the prop.
It's a really fun chip and it's cheap!
Like everyone else, I think it could use a bit more RAM. However, I've not yet discounted the utility of external storage. Really, if this is extended and some discovery is done, it's gonna end up being a new sort of computer. Large chunks of code and data move through the chip from external storage. Kind of a throwback to the days when this was the norm, rather than the exception. Given the power requirements, high external storage in silicon memory density availiable and overall speed possible, this could end up being a really great means of computing in general.
One could lay out an OS, data and machine state onto external storage, then run it on the prop. A coupla batteries and some decent display and you have a really great portable computer that's bare to the metal capable of a lot of things. I see it more as the next Tandy 100 than I do the ZX. That particular form factor would seem to make a whole lot of sense for the prop.
Imagine the prop in a similar case with LCD display, a set of rechargable batteries with included keyboard and the usual IO ports. Some clever design for removable media storage and some expansion of the budding OS we see here could easily make for a damn cool workbench / portable workstation. Make carts of some sort and one could package lots of applications in an easy to manupulate form factor for use in the field. It's not gonna browse the web (well maybe it would), but it's gonna handle signals, I/O, graphical display, etc... without all the shortcomings of your run of the mill laptop.
Dedicate a coupla COGs to running an OS and performing memory fill on demand and large applications would be possible and practical, IMHO.