Go Down

Topic: Unos 0.1.1 - Programs on SD Card Now Supported (Read 1 time) previous topic - next topic

AWOL

Quote
And then there was the loading that bootstrap program for the PDP11 from that little paper tape reader. 
That would've been an 8, not an 11, surely?
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

wzaggle

Yes it was an 8 with the paper tape.  Our 11 finally had a big washing machine hard drive and a reel tape.  Woohoo!

AWOL

We had a couple of eights with DECtapes mounted on the front.
Watching them doing the equivalent of a defrag ("squish") was great fun to watch.
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

ShapeShifter

#78
Mar 26, 2015, 07:46 pm Last Edit: Mar 26, 2015, 08:08 pm by ShapeShifter Reason: Fixed memory size error
Did you read the earlier comment about memory? A simple 80x25 character VGA screen needs 80 x 25 = 2000 bytes of RAM to hold the display contents.

A 640 x 480 VGA graphics screen needs:
  • 921,600 bytes of memory for 24 bit graphics
  • 307,200 bytes of memory 8 bit graphics (plus another 768 bytes for a lookup color palette)
  • 153,600 bytes of memory for 4 bit graphics (plus another 48 bytes for a lookup color palette)
  • 38,400 bytes for black&white monochrome graphics

The Uno has 2,560  2,048 bytes of RAM. Where are you going to put the data that will be displayed? It simply won't fit. (A pure text screen will fit, barely, but you will not have enough memory or processor cycles left over to do anything useful.)

You say you will load only the needed modules in order to save memory. Where are you going to load them? Again, you only have so much RAM. You have even less EEPROM. And you're going to have a hard time reprogramming the program memory on the fly while you're running within it. (I guess you could add a third Uno to act as a bootloader to program the other two?)

You are trying to turn the Uno into a flexible general purpose computer. Please understand that it is NOT a general purpose computer! It is an embedded microprocessor that is great at handling small programs that perform specialized hardware interactions. And it's not a very powerful one at that.

If you want to use a processor to control a set of hardware and make it do a reasonably limited range of operations, use an Uno. If you want to control more hardware and make it do more complicated operations, use a Mega2560. But if you are trying to build a general purpose computer (and it sure sounds like that's what you want to do) then use a Raspberry Pi or BeagleBone Black, or PCDuino, or... well, just about ANYTHING but an Uno!

AWOL

Quote
The Uno has 2,560 bytes of RAM
I don't think mine does.
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

CrossRoads

Most '328Ps only have 2 * 1024 (or 1K) bytes of SRAM. 2048 total.
Designing & building electrical circuits for over 25 years.  Screw Shield for Mega/Due/Uno,  Bobuino with ATMega1284P, & other '328P & '1284P creations & offerings at  my website.

goodinventor

Or I could load the VGA data into flash (using PROGMEM). As for processing power, I got an 86Duino One just for that purpose. It is much more powerful than the Uno. Here are the specifications.

32-Bit x86 Single-Core 300MHz (can be clocked up to 500MHz)
128MB RAM
8MB Flash (can boot from SD card also)
PCIe v1.1 x1 slot (for graphics cards, sound cards, etc.)
USB 2.0 Host(1)
10/100Mbps LAN
HD audio

The board is also Arduino compatible. Is this not a much better board for OS development?

ShapeShifter

#82
Mar 26, 2015, 08:05 pm Last Edit: Mar 26, 2015, 08:12 pm by ShapeShifter
Or I could load the VGA data into flash (using PROGMEM).
You could, but wouldn't it just be easier to print the information out on a piece of paper? That would be about as useful. I'm not sure what good it will be to put the display information into PROGMEM unless you are just trying to put up a single static screen display that never changes. If you want to show some other static display, are you really going to want to load a new program with a new image in PROGMEM? I know I wouldn't.

And of course, that's assuming you're talking about a text screen. The Uno doesn't even have enough PROGMEM for a monochrome graphic image, let alone have any space for the code to display it.

Quote
The board is also Arduino compatible. Is this not a much better board for OS development?
More powerful, yes. But doesn't it already have an OS on it? Wouldn't anything you write like that be redundant?

Most '328Ps only have 2 * 1024 (or 1K) bytes of SRAM. 2048 total.
Sorry, I had a '32U4 (Leonardo, Yun, etc.) on my mind.  :-*

Robin2

Or I could load the VGA data into flash (using PROGMEM).
Reminds me immediately of the Goon Show episode where one of them had the time written on a piece of paper.

...R

AWOL

Reminds me immediately of the Goon Show episode where one of them had the time written on a piece of paper.

...R

Instant karma
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

goodinventor

ShapeShifter,

Yes, the board can run an OS. It supports DOS, Windows 1/2/3/95/98/XP, and Linux. However, for all of these a VGA (or HDMI) monitor is required. Unfortunately, a VGA or HDMI monitor takes too much space for my purposes. I am interested in an embedded system with a touchscreen. That is why I must write my own OS.

ShapeShifter

Unfortunately, a VGA or HDMI monitor takes too much space for my purposes.
<ShapeShifter rolls his eyes and slaps his forehead!>  But a few minutes ago you wanted to put a VGA Monitor on an Uno? So which way is it going to be?


Quote
I am interested in an embedded system with a touchscreen. That is why I must write my own OS.
Done! Well now, that was easy! And no custom OS required. Which one do you want?

They have bigger screens as well, but those are hard to find with a touchsceeen. This is just one vendor, there are plenty of others out there.

So with that issue solved, can we move on to more practical applications for an Uno? Please?

PiTFT - Assembled 320x240 2.8" TFT+Touchscreen for Raspberry Pi



PiTFT 2.8" TFT 320x240 + Capacitive Touchscreen



PiTFT - Assembled 480x320 3.5" TFT+Touchscreen for Raspberry Pi



PiTFT Enclosure for Raspberry Pi Model B



PiTFT Plus 320x240 2.8" TFT + Capacitive Touchscreen Mini Kit



PiTFT Plus 320x240 2.8" TFT + Resistive Touchscreen



PiTFT Plus 480x320 3.5" TFT+Touchscreen for Raspberry Pi



Miniature Wireless USB Keyboard with Touchpad



Mini Wireless Keyboard - Black w/ Batteries



Wireless Keyboard and Mouse Combo w/ Batteries - One USB Port!

I have have just caught up and have really enjoyed reading the posts of ShapeShifter, especially the long ones that take us back. It seems many of us have long histories with computing, some (most) go back a little more than I do as my days started with only being able to look at the PDP11 and keeping das hands in das pockets to watch the blinken lights. Talk of CP/M machines brings a flood of memories, the 2102 SRAM and 4116 DRAM type, with 5.25" and 8" floppy drives and cursor control commands for fancy graphic effects.  :smiley-cool:

Now I have a pile of Arduino AVR/SAM/CubieboardA20 boards on the desk with an assortment of I/O and sensors of all sorts to play with. And memory to burn. Yes, life is still exciting and life is good.

But what I wish to say here is that I guess after all this reading and posting, I am starting to feel somewhat irked that goodinventer has not acknowledged by making any reference or comments in response to any of our deep collective knowledgeable wisdom we have offered.

Goodinventor, do you have a plan to a problem that 'needs' solving, or do you only have a 'want' to appear clever?

I think like wzaggle alluded to at the end of his post, the interest I may have had for the actual guts of this topic, I have long lost, but remain only offer the little wisdom I might have.
http://paulalting.com

pYro_65

@goodiventor.

If you have an Ethernet shield already, why not use this as the primary interface, just like your router at home.
Using JavaScript, you can leave all fancy stuff (graphs/tables/animation) to the client browser. And use simple ajax commands to communicate with the Arduino.


Another project you may be interested in, is turning your current setup into is a Graphic/Programmable calculator.

This does not need to be super fast.
You will need to build a stable parser for expressions.
The parser can slowly be extended to run programs (scripts).
And TFT's like the ones shown above are Arduino compatible.


wzaggle

"You cannot reason people out of a position that they did not reason themselves into"... 
Ben Goldacre, Bad Science

Rockwallaby, I too am disappointed in goodinventor.  It appears that he has yet to progress beyond the "anonymous internet user who always turns out to be a 16yr old self righteous with all the time in the world to waste". (Neal Stephenson, Cryptonomicon) I am beginning to  believe that he neither is, nor has any real desire to be a true inventor.  Only waste the time of those who really wanted to help.   Too bad really.

Goodinventor: take pYro_65's suggestion and build something useful like the calculator. Just writing the parser should keep you occupied for days trying figure out what a stack is and what to do with it.  It has some good roots in interpreting the parsed p-code, and some good interrupt time sharing fun just getting the touch screen to respond nicely even when background processing is taking up all the processor.  What you will learn will position you well to argue your position in this forum.   Come back and show us what you did and we will all send you karma...  If after this project you still think the UNO is going to do all you want it to do... well, hopefully you won't.

Meanwhile at least say thank you to some of these nice people who are giving you their time with a level of patience that is really hard to describe.  Taking it for granted is not very good inventor like.   Here, I will say it for you...

Rockwallaby,
ShapeShifter
AWOL
pYro_65
Robin2
And any others who may have been missed...

You have all enriched this goodinventor persons life beyond measure, simply because you cared.  THANK YOU! since he can't seem to say it himself. 

There... now all you have to do is reply and agree.

WZ

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy