As I said I don't know so much about JTAG. From my superficial reading around it it seems like a quite fine solution to programming and debugging. Not to mention the possibility to use it for checking out assembled circuit boards. It's original purpose I believe.
In practice I just had a really bad experience: I got hold of a STM32 Primer 2 development box from Raisonance, just to play around with an ARM.
The nightmare begins:
Firstly, their ID only runs on Windows.
Secondly, you can of course not use the IDE and compile code with GCC say on Linux.
BUT their JTAG programming driver is only available for Windows.
Thirdly, since the earlier Primer hardware they have made it impossible to use an open source JTAG tool (OpenOCD) with Primmer 2 so no program downloading from Linux is possible.
I persevere, fire Windows and install the funky JTAG/USB driver.
Woops, if the driver installation is done in the wrong way you have to uninstall it and start again.
Woops, uninstalling the drive requires following a complicated procedure that covers a page of instructions.
Woops, at he end of the uninstall instructions it says that if the uninstall fails, which it does, repeat the procedure until it the driver is gone.
Woops after a few times around that loop and many hours wasted I give up and reinstall Windows so as to make a clean install of that stupid and unnecessary driver.
Well, I got it working, but the whole ordeal pissed me off so much that the STM32 has been sitting unused ever since.
Honestly, I built the two transistor serial interface for the Prop and got into programming it quicker than that ordeal.
Bottom line: JTAG on the face of it looks very useful and not unnecessarily complicated. In actual use it seems to be full of unnecessary complications and incompatibilities. Why cant they just make it workable with OCD so we can all play?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
Chip, OK we need all the transistors we can get for useful stuff. But what about skipping the JTAG debugging idea and having just the JTAG chain around the HUB RAM buses for programming and around the pins for chip/board testing?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
heater said...
Nick: "Are you talking with a split tounge?"
Possibly. And here's why:
As I said I don't know so much about JTAG. From my superficial reading around it it seems like a quite fine solution to programming and debugging. Not to mention the possibility to use it for checking out assembled circuit boards. It's original purpose I believe.
In practice I just had a really bad experience: I got hold of a STM32 Primer 2 development box from Raisonance, just to play around with an ARM.
The nightmare begins:
Firstly, their ID only runs on Windows.
Secondly, you can of course not use the IDE and compile code with GCC say on Linux.
BUT their JTAG programming driver is only available for Windows.
Thirdly, since the earlier Primer hardware they have made it impossible to use an open source JTAG tool (OpenOCD) with Primmer 2 so no program downloading from Linux is possible.
I persevere, fire Windows and install the funky JTAG/USB driver.
Woops, if the driver installation is done in the wrong way you have to uninstall it and start again.
Woops, uninstalling the drive requires following a complicated procedure that covers a page of instructions.
Woops, at he end of the uninstall instructions it says that if the uninstall fails, which it does, repeat the procedure until it the driver is gone.
Woops after a few times around that loop and many hours wasted I give up and reinstall Windows so as to make a clean install of that stupid and unnecessary driver.
Well, I got it working, but the whole ordeal pissed me off so much that the STM32 has been sitting unused ever since.
Honestly, I built the two transistor serial interface for the Prop and got into programming it quicker than that ordeal.
Bottom line: JTAG on the face of it looks very useful and not unnecessarily complicated. In actual use it seems to be full of unnecessary complications and incompatibilities. Why cant they just make it workable with OCD so we can all play?
This is the trouble with most embedded system development. It is tenuous to begin with, but when you need to revisit your project a few years down the road, you could really wind up hosed.
Boot and run Linux from a USB flash memory stick Carry a Portable Linux version with you on a USB Flash Pen Drive. Easily bring your portable desktop with you wherever you go. www.pendrivelinux.com/
heater said...
Chip, OK we need all the transistors we can get for useful stuff. But what about skipping the JTAG debugging idea and having just the JTAG chain around the HUB RAM buses for programming and around the pins for chip/board testing?
It will take 4 pins to do that. Plus, like Nick pointed out, it is too professional. Mainly, I think it's a waste of 4 pins.
The point of JTAG was to make every flop inside a chip accessible. By being able to control the flops, you can establish ANY internal state. This was a big deal for both production testing and end-user debugging.
This is the trouble with most embedded system development. It is tenuous to begin with, but when you need to revisit your project a few years down the road, you could really wind up hosed.
This is a really important point and one of the real advantages I've seen with the current Propeller. There appear to be very few complaints related to being unable to talk to the chip or unreliable communications.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
If you always do what you always did, you always get what you always got.
Toby Seckshund said...
Chip said "What do you mean? Fun work goes fast. It's the tedium that takes forever. I bet an on-chip IDE would only take 1-2 months to develop."
You have made a slow programming man feel very old.
Don't feel bad, I'm catching up quick. The main reason that project would go fast is because I've already done it a few times. You know, ROM versus RAM.
JTAG does not require all flip-flops to be accessible, it is intended as an access mechanism to whatever you want. Many IC designs use JTAG only to separate large functional blocks and get access to their inputs and outputs. "Scantest" however is a test method (or DFT method) where all flip-flops in a block are given a back-door accessible via JTAG. This allows setting all flip-flops in the block, execute one clockpulse, and read out all flip-flops again. Besides very deep and thourough testability, this method allows test program generation to be automated. IBM was the first to implement scantest, Intel was probably the last big company to follow.
What JTAG might sound like to some (not explained in the link, because it is unexplainable) and what JTAG in fact is: <http://en.wikipedia.org/wiki/JTAG>
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.: YADRO
Chip Gracey (Parallax) said...
I wasn't thinking that this Spin IDE would be to simulate a Propeller chip, but be a means of writing programs to run on the PC hardware. These programs would be deployable only to run on the skeletal framework that the IDE would provide. When I consider this netbook I have, I would like to have unfettered use of its resources (processor, ram, screen, keyboard, storage, comms, etc.) without ingesting the whole enchilada of an existing OS.
Isn't this pretty much exactly what FreeDOS does?·
I was thinking of a real compiler that would generate native assembly code, completely unencumbered by any virtualization. We'd have our own screen font, even. Give complete control of the PC hardware to the programmer. No API calls, at all, because there's nothing else there.
I am just a hobby user. I have been in the computer biz for around 30+ years starting with the Apple II. More often as a user not a developer (but some jobs I was a developer). Anyway, I spend 12-15 hours a day using my MS windows based computer(s). Ocationally I have to use an appliation that does not conform to the MS standards for fonts, dropdown layouts, and just overall look and feel. I dislike using these applications and will avoid them when ever possible. They slow me down. If all I did was use a single application, then I would be all for that application to be optimized to the Nth degree for efficiency and stability. Because I often have 2-4 windows open and might interface with 12 different applications each day, having them all use the same Look & Feel, allows me to work much more efficiently and concentrate on the task not the interface.
I don't expect Parallax to made business decisions based on a single hobby level user. I just want to be sure that this viewpoint of the possitive side of the Windows interface is exposed.
Chip Gracey (Parallax) said...
I wasn't thinking that this Spin IDE would be to simulate a Propeller chip, but be a means of writing programs to run on the PC hardware.
Ok, I accept this since it is the only option you would consider. One could still prototype the design on the PC with constraints and move it to the Propeller later. I would use a Spin IDE that is an application, but it would have to cooperate with the system or replace the system entirely only when I'm ready to do that. Believe it or not, there are things about my PC that I honestly like and many people who have a PC feel the same way.
This thread is developing more twists in it than a bow tie.,
At the risk of making it worse.. (or perhaps getting it back on track to a degree.)
I started on PCs (pre-PC actually) as a hobbyist. What excited me about the
"computer" was the ability to program it to execute my every whim. BASIC was
packaged with most early computers, including the original IBM PC.
Most of the ability to "program" my computer has been taken from me, and
has in fact become a "Communications device" not unlike my telephone allowing
me to communicate with email and forums.
The Propeller has given back the ability to have a "computer" which can be
programmed to my every whim, and honestly I would not mind being able
to completely set my PC for the non-distracted programming time
directly on the Propeller or Propeller II with build-in IDE. I'm prepared to
exchange the point-n-click of Windows for a system that "just works".
As for running SPIN on my PC. Nah. It's has simply moved too far in
the direction of Smile-ware to make a return to it's roots.
Now, give me a netbook like the one I'm writing this one with a Propeller II core
which has some established standards for screen and storage (SD) and
you'll have a system I could get EXTREMELY excited about.
Oldbitcollector: "honestly I would not mind being able to completely set my PC for the non-distracted programming time directly on the Propeller"
What a fascinating idea. You know, the Linux kernel having been loaded and initialized itself is quite happy to run any single program you point it at. Normally that is "init" which then proceeds to start up all the rest of the Smile a modern day operating system thinks it needs.
One could replace "init" with a "hello world" program if you liked. So here's what we do. Build a cut down Linux that starts almost nothing except the X window system. No desktop managers or whatever. And then starts BST. A one application only Linux distribution.
If BST was built using Qt instead of Lazarous it could be run without X as well, built as an "embedded app" it could work straight to the graphic frame buffer.
Pop the thing onto a USB stick and boot into it when you want to remove the temptation to read email or the Propeller forum[noparse]:)[/noparse]
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
OBC>
> Now, give me a netbook like the one I'm writing this one with a Propeller II core
> which has some established standards for screen and storage (SD) and
> you'll have a system I could get EXTREMELY excited about.
@Chip,
This is what I was trying to get at mentioning the SmartTalk thing.·(Not·suggesting using the·SmallTalk language, but rather the *way* its environment works would be very·useful to adopt).·Your Prop/PC application·is your IDE which·is your OS. This "core"·really would be like an OS in·that it provide·services, like the screen writes, SD interface etc. --- it·shouldn't matter *what* hardware it's running on.· The Layer surrounding the core looks the same to the Prop application, and to the PC - but the innards would be different depending on whether its actully running on the Prop or the PC (or both·[noparse]:)[/noparse]
In some versions of SmallTalk when you change your App code, the IDE automatically adjusts (and the OS does too) - this solves the entire problem of include files, object hierarchies, etc (Phil's earlier concern).·The OBEX2 could be seemlessly integrated into the IDE. For example, as your writing your app, you realize you need an OBEX obj ... you type it in to the App code - then the PC would automatically go out and grab the code. (The Visual Studio platform does something similar with windows DLL's - in VB, you can 'reference' them, then the Intellisense and object browser can peruse the library.)
This way, you don't even *care* if there's a prop hanging off your PC --- you're only emulating the prop in the sense that the CORE knows it's talking to the PC (instead of the Prop) ... plug one in, and *bang* the option is there to download it.
On the flip side, given that you want a lean, mean PC just accessing *some* of the hardware to assist in development, the path of least·effort would·most likely·be to use one of the Linux kernals as others·have suggested.· There are many embedded versions of Linux·that are very lean. And the PC kernel can be trimmed way down to a minimal subset of services.· DamnSmallLinux is one of the smaller PC versions - but there are a lot of kernal tweekers out there (and probably here too). I'm sure more than a few folks here would be able to assist in that.
One could replace "init" with a "hello world" program if you liked. So here's what we do. Build a cut down Linux that starts almost nothing except the X window system. No desktop managers or whatever. And then starts BST. A one application only Linux distribution.
If BST was built using Qt instead of Lazarous it could be run without X as well, built as an "embedded app" it could work straight to the graphic frame buffer.
RE Linux Kernal as a CORE:
Heater,
X is pretty heavy - it would be nice to leave it out completely.· RE init replaced with HelloBST --- seem to recall·folks·doing that with·busybox?
Not sure how accurate this is, but·I think it's close:
" Busybox is surprisingly useful for putting together a small embedded system. It is quite easy to put together a Linux system which boots and runs from 4 MB of flash memory and runs a useful application. With 8 MB you can include a full version of the Gnu C library, and with 16 MB you can have X Windows, a stripped down version though. " - http://it.toolbox.com/blogs/unix-tidbits/busybox-the-swiss-army-knife-of-embedded-linux-9158
I think one thing that we need to stay focussed on here is that we, the forumistas, will not be the majority purchasers of the Prop II chips. At least I don't think so. Those sales will come from OEMs who, by and large, will never set foot (or browser) in the forum. What those customers want are detailed data sheets and professional-level development tools that run alongside their other software under Windows or, to a lesser extent, OS/X and Linux. I'm as intrigued as anyone about the possibilities of an on-chip IDE, a dedicated PC-resident Prop OS, or any of the other cool stuff that's been floated here. But I'm concerned about the direction this discussion has taken and the influence that it might have, absent any input from the silent majority of volume users. Like it or not, those are the users who will provide the economy of scale that permit the rest of us to enjoy chips that are reasonably priced and come with development tools that we can download for free. Any dev tools that enhance productivity and reduce time-to-market will benefit the OEM crowd and, by extension, the rest of us. So first things first, please. Then, assuming there's no Prop III in the wings, the fun stuff can commence.
Frankly, I'm not all that comfortable playing devil's advocate here and risking the alienation that it might entail. But the discussion seems to beg a counterpoise, and somehow I became "it".
I think you've just given us a healthy 'reality check' --- indeed, we can speculate and have fun thinking up alternative ideas, but, as you say, if the revenues were to fall due to implementing a out-of-mainstream idea, it would be to all of our detriment.
Then again, Parallax knows well that we forumistas think outside the box without the disipline of a potentially painful direct financial vested interest.
(I'm not worried because they have made good choices so far.)
I could not agree more!·I am fine with Windows· - yeah, it has problems but what doesn't (besides my propellers!).· I would much rather prefer Parallax spending time making the new prop as reliable as the existing prop.· An on-chip editor etc. doesn't add any real bang for the buck.· I would much prefer to see extra COGs than anything beyond what has been presented by parallax.· Being realistic, Windows based PCs are as common as Chevrs - nope, far more common than Chevys.·
Stick with the current editor / development system, it works, it is easy to use, it is reliable, and it already exists.
I have not any problems to have some help routines in ROM that can be simple loaded to COG and EXECUTED with my own Variable area positions.
TYPE, VGA, TV drivers with AUTO cinfigurations on timings (Pixel/HV rates) on given resolution from Clock system I will describe in MY thread in short time
Not either for relatively simple GDI/IDE with PASM/SPIN compiler for field usage.
BUT as You said ..... What we thinking on Win. OSX, else Linux systems .... OEM wendors with LARGE wolume sales are most important to think on.
Regards
Christoffer J
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ Nothing is impossible, there are only different degrees of difficulty. For every stupid question there is at least one intelligent answer. Don't guess - ask instead. If you don't ask you won't know. If your gonna construct something, make it·as simple as·possible yet as versatile as posible.
heater said...
Build a cut down Linux that starts almost nothing except the X window system. No desktop managers or whatever. And then starts BST. A one application only Linux distribution.
If BST was built using Qt instead of Lazarous it could be run without X as well, built as an "embedded app" it could work straight to the graphic frame buffer.
Pop the thing onto a USB stick and boot into it when you want to remove the temptation to read email or the Propeller forum[noparse]:)[/noparse]
Lets start a new post on building your own customized Linux system entirely from source.
You can start with something like: Linux From Scratch
What is Linux From Scratch?
Linux From Scratch (LFS) is a project that provides you with step-by-step instructions for building your own customized Linux system entirely from source.
Cross Linux From Scratch (CLFS) is a project that provides you with step-by-step instructions for building your own customized Linux system entirely from source.
I would not say that X is "pretty heavy". On my Debian box top reports Xorg is taking only twice as much memory as BST.
You are quite right about busybox I have used it in embedded systems using ARM and PowerPC processors for many years.
@PhilPilgrim: "What those customers want are detailed data sheets and professional-level development tools..."
I totally agree with your sentiment re: professional presentation.
"...that run alongside their other software under Windows"
However I wonder if we are living on different planets[noparse]:)[/noparse]
I have been involved in the development of embedded systems on and off since 1980. My work has taken me in and out of many large organizations: Racal, GEC, Plessy, Lucas Avionics, Nokia and the like, in England, Holland, Sweden and Finland. The only time I actually had to use Windows for development was for a couple of years starting in 1996. In recent times everything has been done on Unix or Linux.
As my project manager in Nokia said in 1999 "I don't want any more of Bill Gates fingers in my project than absolutely necessary".
Where are all these professional embedded system designers that must use Windows hiding?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
heater said...
Where are all these professional embedded system designers that must use Windows hiding?
Embedded means different things to people [noparse]:)[/noparse]
The only embedded CPUs I used Windows exclusively so far has been Parallax products except for one case. That one case was a 4TB/s Optical Switch. Funny though that even then we used Hamilton GNU (with vxWorks support) on Windows 2000 for that [noparse]:)[/noparse] Everything else I've done was on Unix, Solaris, or Linux (mostly RedHat Enterprise or Fedora). I tried WinARM once, but got tired of downloading over JTAG [noparse]:)[/noparse]
Comments
Possibly. And here's why:
As I said I don't know so much about JTAG. From my superficial reading around it it seems like a quite fine solution to programming and debugging. Not to mention the possibility to use it for checking out assembled circuit boards. It's original purpose I believe.
In practice I just had a really bad experience: I got hold of a STM32 Primer 2 development box from Raisonance, just to play around with an ARM.
The nightmare begins:
Firstly, their ID only runs on Windows.
Secondly, you can of course not use the IDE and compile code with GCC say on Linux.
BUT their JTAG programming driver is only available for Windows.
Thirdly, since the earlier Primer hardware they have made it impossible to use an open source JTAG tool (OpenOCD) with Primmer 2 so no program downloading from Linux is possible.
I persevere, fire Windows and install the funky JTAG/USB driver.
Woops, if the driver installation is done in the wrong way you have to uninstall it and start again.
Woops, uninstalling the drive requires following a complicated procedure that covers a page of instructions.
Woops, at he end of the uninstall instructions it says that if the uninstall fails, which it does, repeat the procedure until it the driver is gone.
Woops after a few times around that loop and many hours wasted I give up and reinstall Windows so as to make a clean install of that stupid and unnecessary driver.
Well, I got it working, but the whole ordeal pissed me off so much that the STM32 has been sitting unused ever since.
Honestly, I built the two transistor serial interface for the Prop and got into programming it quicker than that ordeal.
Bottom line: JTAG on the face of it looks very useful and not unnecessarily complicated. In actual use it seems to be full of unnecessary complications and incompatibilities. Why cant they just make it workable with OCD so we can all play?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
You have made a slow programming man feel very old.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Style and grace : Nil point
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
Boot and run Linux from a USB flash memory stick Carry a Portable Linux version with you on a USB Flash Pen Drive. Easily bring your portable desktop with you wherever you go.
www.pendrivelinux.com/
Install Kubuntu 9.10 to a Flash Drive from Windows: www.pendrivelinux.com/create-a-kubuntu-9-10-live-usb-flash-drive-from-windows/
The point of JTAG was to make every flop inside a chip accessible. By being able to control the flops, you can establish ANY internal state. This was a big deal for both production testing and end-user debugging.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
This is a really important point and one of the real advantages I've seen with the current Propeller. There appear to be very few complaints related to being unable to talk to the chip or unreliable communications.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
If you always do what you always did, you always get what you always got.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chip Gracey
Parallax, Inc.
Leon
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Amateur radio callsign: G1HSM
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
24 bit LCD Breakout Board coming soon. $21.99 has backlight driver and touch sensitive decoder.
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.:
YADRO
I don't expect Parallax to made business decisions based on a single hobby level user. I just want to be sure that this viewpoint of the possitive side of the Windows interface is exposed.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Searider
At the risk of making it worse.. (or perhaps getting it back on track to a degree.)
I started on PCs (pre-PC actually) as a hobbyist. What excited me about the
"computer" was the ability to program it to execute my every whim. BASIC was
packaged with most early computers, including the original IBM PC.
Most of the ability to "program" my computer has been taken from me, and
has in fact become a "Communications device" not unlike my telephone allowing
me to communicate with email and forums.
The Propeller has given back the ability to have a "computer" which can be
programmed to my every whim, and honestly I would not mind being able
to completely set my PC for the non-distracted programming time
directly on the Propeller or Propeller II with build-in IDE. I'm prepared to
exchange the point-n-click of Windows for a system that "just works".
As for running SPIN on my PC. Nah. It's has simply moved too far in
the direction of Smile-ware to make a return to it's roots.
Now, give me a netbook like the one I'm writing this one with a Propeller II core
which has some established standards for screen and storage (SD) and
you'll have a system I could get EXTREMELY excited about.
OBC
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
New to the Propeller?
Visit the: The Propeller Pages @ Warranty Void.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Propeller Wiki: Share the coolness!
Chat in real time with other Propellerheads on IRC #propeller @ freenode.net
Safety Tip: Life is as good as YOU think it is!
What a fascinating idea. You know, the Linux kernel having been loaded and initialized itself is quite happy to run any single program you point it at. Normally that is "init" which then proceeds to start up all the rest of the Smile a modern day operating system thinks it needs.
One could replace "init" with a "hello world" program if you liked. So here's what we do. Build a cut down Linux that starts almost nothing except the X window system. No desktop managers or whatever. And then starts BST. A one application only Linux distribution.
If BST was built using Qt instead of Lazarous it could be run without X as well, built as an "embedded app" it could work straight to the graphic frame buffer.
Pop the thing onto a USB stick and boot into it when you want to remove the temptation to read email or the Propeller forum[noparse]:)[/noparse]
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
> Now, give me a netbook like the one I'm writing this one with a Propeller II core
> which has some established standards for screen and storage (SD) and
> you'll have a system I could get EXTREMELY excited about.
@Chip,
This is what I was trying to get at mentioning the SmartTalk thing.·(Not·suggesting using the·SmallTalk language, but rather the *way* its environment works would be very·useful to adopt).·Your Prop/PC application·is your IDE which·is your OS. This "core"·really would be like an OS in·that it provide·services, like the screen writes, SD interface etc. --- it·shouldn't matter *what* hardware it's running on.· The Layer surrounding the core looks the same to the Prop application, and to the PC - but the innards would be different depending on whether its actully running on the Prop or the PC (or both·[noparse]:)[/noparse]
In some versions of SmallTalk when you change your App code, the IDE automatically adjusts (and the OS does too) - this solves the entire problem of include files, object hierarchies, etc (Phil's earlier concern).· The OBEX2 could be seemlessly integrated into the IDE. For example, as your writing your app, you realize you need an OBEX obj ... you type it in to the App code - then the PC would automatically go out and grab the code. (The Visual Studio platform does something similar with windows DLL's - in VB, you can 'reference' them, then the Intellisense and object browser can peruse the library.)
This way, you don't even *care* if there's a prop hanging off your PC --- you're only emulating the prop in the sense that the CORE knows it's talking to the PC (instead of the Prop) ... plug one in, and *bang* the option is there to download it.
On the flip side, given that you want a lean, mean PC just accessing *some* of the hardware to assist in development, the path of least·effort would·most likely·be to use one of the Linux kernals as others·have suggested.· There are many embedded versions of Linux·that are very lean. And the PC kernel can be trimmed way down to a minimal subset of services.· DamnSmallLinux is one of the smaller PC versions - but there are a lot of kernal tweekers out there (and probably here too). I'm sure more than a few folks here would be able to assist in that.
- H
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Heater,
X is pretty heavy - it would be nice to leave it out completely.· RE init replaced with HelloBST --- seem to recall·folks·doing that with·busybox?
Not sure how accurate this is, but·I think it's close:
" Busybox is surprisingly useful for putting together a small embedded system. It is quite easy to put together a Linux system which boots and runs from 4 MB of flash memory and runs a useful application. With 8 MB you can include a full version of the Gnu C library, and with 16 MB you can have X Windows, a stripped down version though. " - http://it.toolbox.com/blogs/unix-tidbits/busybox-the-swiss-army-knife-of-embedded-linux-9158
http://www.busybox.net/
cheers!
- Howard
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Frankly, I'm not all that comfortable playing devil's advocate here and risking the alienation that it might entail. But the discussion seems to beg a counterpoise, and somehow I became "it".
-Phil
I think you've just given us a healthy 'reality check' --- indeed, we can speculate and have fun thinking up alternative ideas, but, as you say, if the revenues were to fall due to implementing a out-of-mainstream idea, it would be to all of our detriment.
Then again, Parallax knows well that we forumistas think outside the box without the disipline of a potentially painful direct financial vested interest.
(I'm not worried because they have made good choices so far.)
- H
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
I could not agree more!·I am fine with Windows· - yeah, it has problems but what doesn't (besides my propellers!).· I would much rather prefer Parallax spending time making the new prop as reliable as the existing prop.· An on-chip editor etc. doesn't add any real bang for the buck.· I would much prefer to see extra COGs than anything beyond what has been presented by parallax.· Being realistic, Windows based PCs are as common as Chevrs - nope, far more common than Chevys.·
Stick with the current editor / development system, it works, it is easy to use, it is reliable, and it already exists.
Chris
·
Vell said.
I have not any problems to have some help routines in ROM that can be simple loaded to COG and EXECUTED with my own Variable area positions.
TYPE, VGA, TV drivers with AUTO cinfigurations on timings (Pixel/HV rates) on given resolution from Clock system I will describe in MY thread in short time
Not either for relatively simple GDI/IDE with PASM/SPIN compiler for field usage.
BUT as You said ..... What we thinking on Win. OSX, else Linux systems .... OEM wendors with LARGE wolume sales are most important to think on.
Regards
Christoffer J
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Nothing is impossible, there are only different degrees of difficulty.
For every stupid question there is at least one intelligent answer.
Don't guess - ask instead.
If you don't ask you won't know.
If your gonna construct something, make it·as simple as·possible yet as versatile as posible.
Sapieha
Lets start a new post on building your own customized Linux system entirely from source.
You can start with something like: Linux From Scratch
What is Linux From Scratch?
Linux From Scratch (LFS) is a project that provides you with step-by-step instructions for building your own customized Linux system entirely from source.
Website: www.linuxfromscratch.org/lfs/
What is Cross Linux From Scratch? ¶
Cross Linux From Scratch (CLFS) is a project that provides you with step-by-step instructions for building your own customized Linux system entirely from source.
trac.cross-lfs.org/
Post Edited (Bob Lawrence (VE1RLL)) : 11/29/2009 8:46:40 PM GMT
I would not say that X is "pretty heavy". On my Debian box top reports Xorg is taking only twice as much memory as BST.
You are quite right about busybox I have used it in embedded systems using ARM and PowerPC processors for many years.
@PhilPilgrim: "What those customers want are detailed data sheets and professional-level development tools..."
I totally agree with your sentiment re: professional presentation.
"...that run alongside their other software under Windows"
However I wonder if we are living on different planets[noparse]:)[/noparse]
I have been involved in the development of embedded systems on and off since 1980. My work has taken me in and out of many large organizations: Racal, GEC, Plessy, Lucas Avionics, Nokia and the like, in England, Holland, Sweden and Finland. The only time I actually had to use Windows for development was for a couple of years starting in 1996. In recent times everything has been done on Unix or Linux.
As my project manager in Nokia said in 1999 "I don't want any more of Bill Gates fingers in my project than absolutely necessary".
Where are all these professional embedded system designers that must use Windows hiding?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
For me, the past is not over yet.
The only embedded CPUs I used Windows exclusively so far has been Parallax products except for one case. That one case was a 4TB/s Optical Switch. Funny though that even then we used Hamilton GNU (with vxWorks support) on Windows 2000 for that [noparse]:)[/noparse] Everything else I've done was on Unix, Solaris, or Linux (mostly RedHat Enterprise or Fedora). I tried WinARM once, but got tired of downloading over JTAG [noparse]:)[/noparse]
Sorry, but you are speaking without knowledge.
Lazarus can use Qt, GTK, Windows API, and other environments.
BST uses GTK 2, no Lazarus, Lazarus is a RAD / IDE.
If he wants today may have a version that use Qt. That's the advantage of using Lazarus.