Amiga.org
The "Not Quite Amiga but still computer related category" => Alternative Operating Systems => Topic started by: nueron on January 21, 2004, 02:39:15 PM
-
Hello all,
I have been working on an alternative computer project for a few years now and would like to find people who may be interested in helping further the project.
The project involves hardware based on Motorola ColdFire processors (Nueron) and a new (free) operating system inspired by AmigaOS (NuOS).
I have developed a prototype (Nueron1200) which is what I wanted an Amiga-like tablet computer device to be (basically a large PDA). Details and pictures can be found at the Austex Software website:- nueron1200 prototype (http://www.austexsoftware.com/nueron1200p.html)
I am currently finishing off a ColdFire accelerator module for the Nueron1200 (dual processors) and an updated graphics module (unlike most laptops, the graphics hardware can be upgraded).
The project is also known as the gecko computer project with a (currently very small) yahoo group here: geckocomputerproject (http://groups.yahoo.com/group/geckocomputerproject/)
I had chosen gecko because they are "small, efficient and crap all over windows..." :-)
Work has been slow since this was originally a part-time project, however I am now doing board design, firmware and operating system full time (no matter what anybody says). I am looking at producing developer boards in either microATX or miniITX format (I need a vote on this) to be available in Q2 2004. Board cost is a sensitive issue which also needs to be dealt with (I'd need expressions of interest for build quantity etc...).
I have been developing free software tools, such as assembler, linker, maker and a beta C compiler for both AmigaOS and PC (yeeeww). I am still using my Amiga4000/CSPPC for development purposes (I also have an Amiga500, 2xAmiga1200, Amiga3000, another Amiga4000 with non-working CSPPC). I am a long time Amiga user/programmer and also co-wrote an Amiga game (Uropa2, published by Vulcan) which comes under the Austex Software banner.
Recently, I have been trying to finish documentation for such things as NuOS overview, API documents in html (devbook) and various technical manuals etc... however these things take time (especially if your the only person doing them).
If you are interested or have any questions, then please let me know.
Regards,
Stephen Smith
Austex Software
-
That looks pretty cool. Do you think NuOS could be easily patched to boot on Oliver Hannaford-Day's Amiga Coldfire accelerators, when they're available?
-
Why not port AROS to it?
Click Here (http://www.aros.org)
Then you would get Amiga compatibility too :-)
-
looks like a great project - and I abosloutely love the tablet-pc form factor. I would certainly buy one.
-
Hi nueron,
Man that is one cool project you got going.
Work has been slow since this was originally a part-time project, however I am now doing board design, firmware and operating system full time (no matter what anybody says)
That's the way to go.
Seems I got something more to check on a regular basis. :-)
Coder
-
It looks very interesting.....
Are you planing a Desktop or Tower version??
-
Ofcourse! Nebula! Austex already sounded so familiar. Cheers for that great game :-).
Oh and the NuOS project sounds very cool :-).
-
I have to say i'm very impressed with the work already done !
My first thought was that an Aros port to your board would be great to run thousands of Amiga executables.
Now imagine if you could emulate the AGA chipset ...
(I know I'm dreaming)
For the board form factor I would go for mini itx. The smaller the better.
-
it would be cool to have a neuron based system in a keyboard style case :-)
and of course if AROS was available, this would be a fantastic alternative amiga solution :-)
-
Hi nueron ,
only one word . . . .GREAT :-)
Ciao
-
exellent to see AUSTEX is still going!! , uropa2 was a damn cool game when it came , shame about the delay though ;(
cheers
pps:only amiga fits me so no comments to nuos etc, but hey feel free to contact oliver! he is dooing colfdire amiga accelerators!
-
Wow :-)
I love the PC tablet form factor - I love the concept. Keep it up buddy - this is nice. Very nice. Do you need a case designed?
-
Looks like you are doing some great work there! Kudos!
You may want to (re)consider developing your own Amiga-like OS. Thinking of an older thread here (Aros-1 IIRC), the AROS bunch and you together should be able to produce something awesome.
-
Hi nueron!
It's a shame that for time reasons I can't give any support, but - hey! - congratz for the hard and *great* job!
Thanks for all that you've done for the Amiga, and thanks for devoting your life to smart projects!
Best luck!
saimo
-
@xeron
Do you think NuOS could be easily patched to boot on Oliver Hannaford-Day's Amiga Coldfire accelerators, when they're available?
I don't see why not. NuOS is quite scalable and currently runs on a ColdFire 5206e microcontroller board that I made (I should show pics of that too...).
-
@bloodline
Why not port AROS to it?
I've emailed Ola regarding this.
Actually, on a dual processor configuration, you could run AROS on one processor and NuOS on the other... :-D
-
nueron wrote:
@bloodline
Why not port AROS to it?
I've emailed Ola regarding this.
Actually, on a dual processor configuration, you could run AROS on one processor and NuOS on the other... :-D
Cool! I'm tempted to buy one of these besties now! :-)
Ola is real slow... an Email to Aaron might be better... I would urge you to join the AROS dev list there is a huge wealth of talent there!!
-
WHAT did you say matt? :-)
-
4pLaY wrote:
WHAT did you say matt? :-)
HAHAHAHAHAHA, ooooo I'm a naughty widdle puddy tat.... :lol:
-
"AVOID BT Openworld!!!!"
Any particular reason?
-
Red_Melons wrote:
"AVOID BT Openworld!!!!"
Any particular reason?
They messed me around, and charged me £300 for the pleasure... the mistake has now been rectified.
-
Hello nueron :-)
one word : WOW!!!
That's something I will watch closelly ;-) I like that sexy thing :-D
and for your problem "another Amiga4000 with non-working CSPPC" why not get in touch with www.amiga.fr, I'm quite sure JJ would can repair it :-)
Amigalement,
Jean-François, Amiga ONLY since 1985.
-
I've had a few folk ask me if my chipset design would be useful to this project. I've decided on answering them all at once:
If I felt that it was close enough to completion, it probably would be yes.
But that is a big if, shoot, the linebuffer system was borked only a few weeks ago in a live test to humerous results.
-
@melott
Are you planing a Desktop or Tower version??
The microATX or miniITX motherboard (depending on which is chosen) would allow a tower version.
@odin
Ofcourse! Nebula! Austex already sounded so familiar. Cheers for that great game.
Thanks! I found the C source code for that the other day. Maybe I'll port it as the first game to run on it :-D Nebula was actually a 3rd year computer graphics assignment. We had two weeks to learn C, and then a few weeks to write the thing. Ahh, takes me back... :-P
@Bobsonsirjonny
I love the PC tablet form factor - I love the concept. Keep it up buddy - this is nice. Very nice. Do you need a case designed?
Yes, I do need case designed... The LCD CCFL transformer is not far from the reset button, got me a few times... :-D
Regards,
Stephen.
-
that is awesome!!!
-
Yes, I do need case designed...
How about a Nueron case design competition with a Nueron1200 motherboard as a first prize? :-D ;-)
Anyway, a very impressive project. Keep up the good work! :-)
-
Probably not a question you can or want to answer at this stage in the design... but... what is the projected cost per unit is this, for the end user?
-
@lempkee
exellent to see AUSTEX is still going!! , uropa2 was a damn cool game when it came , shame about the delay though :-( .
Yes, a word of advice:- NEVER write a game part-time... :-) . Oh, and make sure your graphics artist gives you the graphics you asked for... :-D . We didn't make very much out of it, however it was better than nothing.
@voxel
and for your problem "another Amiga4000 with non-working CSPPC" why not get in touch with www.amiga.fr, I'm quite sure JJ would can repair it
Thanks, I'll look into that. The 060 works fine, but the 604e@180Mhz doesn't respond (anymore).
@bloodline
Probably not a question you can or want to answer at this stage in the design... but... what is the projected cost per unit is this, for the end user?
I will endeavour to keep the price as low as possible, however a potential investor needs to know how much money I need. My first response is "how long is a piece of string?", but I need to work out costs based on the number of units that may be shipped (of course).
I don't want to ask for pre-payment since problems have arisen with certain companies which have been mentioned here numerous times :-) I also don't want to be caught out with potential order quantity and then have people reneg when it comes to pay (e.g. iFusion). Hopefully, I'll find a solution soon.
I'd like to thank you guys for the response so far. I wasn't sure what sort of reaction I would receive and it has been very positive (so far) :-D .
Regards,
Stephen.
-
neuron:its really good to see ya around ;=) , i for one always wonder what happens to the developers around..
anyway i do work part time on games , developing and yes its abit crap due to delays and stuff but really i cant say its a bad thing + its on amiga so heh we dont expect to be millionaires or anything.
btw i checked all the designs on the website of yours (neuos) looks quite impressive and i must say i am getting more and more interested, though ifit wont run aos ..well u know...once a fanatic :)
-
Looks cool :-D
This guy and Oli HD should get in touch!
-
lempkee wrote:
neuron:its really good to see ya around ;=) , i for one always wonder what happens to the developers around..
anyway i do work part time on games , developing and yes its abit crap due to delays and stuff but really i cant say its a bad thing + its on amiga so heh we dont expect to be millionaires or anything.
btw i checked all the designs on the website of yours (neuos) looks quite impressive and i must say i am getting more and more interested, though ifit wont run aos ..well u know...once a fanatic :)
Would you have a problem with it if I was running AROS, and as such was able to run all you existing OS legal Amiga software?
Or does it HAVE to be AmigaOS for you?
-
@ Neuron
WOW!! It's looking good, very good!!
Have you done hardware design before or is this a 1st attempt kind of thing??
You should definately get in touch with Oli HD over at the Amiga Coldfire Project (http://www.cdtv.org.uk/coldfire)
Cheers,
Graham C
-
WOW! is a great project! all new boards and OS`s are welcome =) but for compatibility, make your os compatible OS 3.9 (like the morphos for example) and if you can emulata aga, cool!!! jejeje
Very well work =)
PD: A coldifre for my CD32! =)
-
Hi,
I've known about the project for some time now (I joined the news group on the 27th May 2002) and did e-mail him a while ago about the V4 and compiling the 68K module with his software, what interests me is the Amiga Coldfire assembler software however it would be great if he did get a full motherboard out. (It would give a better chance of making the Coldfire route the most popular)
The boards looks very very professional and lots of very cool features.. and the dual V4 220Mhz version must be so fast.
I wish Stephen all the best and am keeping an eye on the OS, specially if it supports multi CPU environments.
PS: http://groups.yahoo.com/group/geckocomputerproject/
Oliver Hannaford-Day
-
Hi nueron,
looking more closer your project (pcb design-layout) make me think, how "ancient" are our boards . . .and i mean ALL our boards :-)
I wish all the best, for people like you (and Oliver too)
Ciao
-
@ Coldfire experts...
If I am not mistaken, the coldfire processor misses some instructions / addressing modes that impact on 680x0 compatibility.
I understand that motorola have a code base for 'emulating' the missing functionaility that operates through a trapping mechanism, but I expect that heavy use of this could cripple performance.
What occured to me was the idea of using a JIT mechanism on a coldfire to emulate the 680x0. Before anybody suggests I am crazy, I literally mean to process the code and 'expand inline' anything that would need emulation on coldfire. For the most part, the emulation would not need to modify the original 680x0 code.
It transpires this idea isnt as stupid (or as new) as it might sound. HP already managed something similar with their PA-8000 Dynamo (http://www.arstechnica.com/reviews/1q00/dynamo/dynamo-1.html) system which even manages to run PA-8000 code on the PA-8000 faster than running the same code natively (thanks to intelligent optimisation techniques).
I'm sure it would not be impossible to create a similar engine to allow 680x0 code to run on the coldfire without relying on trapping unimplemented code every time...
-
Did you ever see that show "Galaxy Quest" and the woman goes: my job is to repeat what the computer says.
That's so funny.
Anyway, the reason you get a positive response, is because its impolite to say negative things.
Now, my job:
I would rather poke a fork in my eye than buy a 200mhz coldfire. By modern standards its slow, dog slow.
-
@karlos
95% of the changes from Coldfire to 68k would be invisible to applications, but on-target for the OS. The Coldfire handles supervisor-mode differently, its memory systems slightly different, etc.
And the 5% difference is actually less than the difference in instructions between the 68030 and 68060.
-
Hi,
I would rather poke a fork in my eye than buy a 200mhz coldfire. By modern standards its slow, dog slow.
Yes but its a good speed for an Amiga and thats what counts, it really depends what you want out of an Amiga, do you want a system to compete with PC's and Mac's, trying to be the number one platform again or do you just want a computer you like using and that does the job.
I personally doubt if Amiga will ever be number one again but I think its great fun to use and should continue to be developed but just not with Mhz and MIPS in mind but in how much fun and how easy it is to use.
If you want top Mhz go for a PC, if you want a real computer go for an Amiga ;-)
PS: This is my personal view and may not reflect the views of the Amiga community or the world. :-D
-
MarkTime wrote:
Did you ever see that show "Galaxy Quest" and the woman goes: my job is to repeat what the computer says.
That's so funny.
Anyway, the reason you get a positive response, is because its impolite to say negative things.
Now, my job:
I would rather poke a fork in my eye than buy a 200mhz coldfire. By modern standards its slow, dog slow.
Well - 200mhz is slow. But its a tablet PC - running a new OS, custom designed for it - all tied in one neat package - thus using overheads more efficiently, with little heat and power consumption.
Its a great concept. While I dont see the point in an atx desktop system - this Tablet idea really does it for me. It would be perfect to take to say.. AUSTRALIA!!!
Its a good format - and really I do want one. When I go to Aus Im gonna take a digital camera - I wanna be able to back the images up - this tablet would be perfect for that.
-
@downix
Really? I was under the impression that a fair few things were missing, such as scaled indexed addressing modes, word addition to address registers and so on. My understanding was that the software from motorola used a mechanism similar to that used by the 68040FPSP to emulate missing functionality.
In any event, to the nay sayers I'd say a coldfire powered amiga would kick bottom so nerr :-P
-
@Karlos
Everything you've mentioned relates to how the OS works on the chip, not the software. The software doesn't know nor care of the addressing modes available, it cares about getting data to or from an address and the OS handles that.
So, in short, AOS would need to be rewritten, but the software wouldn't for the most part.
-
@Downix,
I'm not disagreeing with you - naturally the coldfire has its own supervisor architecture hence the OS would need extensive reworking.
The software doesn't know nor care of the addressing modes available, it cares about getting data to or from an address and the OS handles that.
Granted the physical address accessed is ultimately (thanks to MMU hardware) not necessarily the logical one generated by the application code, but I fail to see where the OS intervenes in for example
move.l (a0, d0.w*4), d1
or
add.w #2, a1
for instance. If, as I seem to recall (but may be wrong) these operations are not supported in the coldfire (along with others), some emulation mechanism must kick in to do the work.
Given I've seen plenty of d8(An, Xn*SCALE) modes in 020+ application code and add.w #, An in application code. If such operations have to be emulated by trapping or whatever, appication code using them will suffer.
Thats why I was thinking of some kind of JIT code translator that could for example convert
move.l (a0, d0.l*4), d1
into something like
movem d0/a0, -(a7)
lsl.l #2, d0
add.l d0, a0
move.l (a0), d1
movem (a7)+, d0/a0
on the fly and cache the cache the result (like any regular JIT). This has got to be way faster than invoking some kind of trap to emulate the missing address mode.
-
@karlos
I agree with you regarding JIT. I have thought about doing something along those lines.
ColdFire does support address register indirect with scaled index and 8-bit displacement.
The limits are that the index register only supports longword and that the scale can be
1, 2 or 4 (8 only supported if you have an FPU).
move.l (a0,d0.w*4),d1 ....... illegal
add.w #4,a1 ................. illegal
move.l (a0,d0.l*4),d1 ....... ok
It took a little while for me to modify my assembler habits, but I'm used to it now. With
V4 they added byte and word extensions back to the cmp instruction and added a few more
such as:-
mov3q.l #5,(100,a0,d0.l*4) .. move 5 longword extended to destination
............................. length of operand + extension = 32bits
mvs.b (a0),d0 ............... move byte , sign extended to long
mvz.b (a0),d0 ............... move byte , zero extended to
............................. mvs.w and mvz.w also supported
sats d0 ..................... signed saturate, sets max/min(overflow)
intouch (a0) ................ prefetch instructions into cache
Motorola have even added some interesting ones to the V2 core (MCF5282):-
bitrev d0 ................... bit reverse (31..0)<->(0..31)
byterev d0 .................. byte reverse (endian modify)
ff1 d0 ...................... find first one in register
strldsr #val ................ push sr to stack, then load new sr
Regards,
Stephen.
-
@neuron
Unlike emulation of alien CPUs. such a 680x0->Coldfire JIT mechanism could be optimised in such a fashion as to leave big chunks of 680x0 code that is 100% coldfire compatible alone and avoid processing it.
However, when you consider HP's Dynamo it even begins to make sense to process it all. They get speed increases for code as a result of cacheing a linear sequence of instructions that represent a path through a complex set of conditions or a loop (its even more surprising when you consider dynamo is actually an interpreter 99% of the time and JIT converts hotspot areas only).
I've often wondered if such a JIT also makes sense on 68040/60 for running code that uses missing instructions emulated by the respective 680x0.library. Oxypatcher etc. is almost like this, but IIRC it patches the unimplemented instructions with a jump to code to emulate the instruction. Not as efficient as a genuine JIT, but much less work too. Its another alternative for running full 680x0 code on coldfire (maybe motorola's software does this ?).
-
MarkTime wrote:
I would rather poke a fork in my eye than buy a 200mhz coldfire. By modern standards its slow, dog slow.
Why bother with the numbers game?
If it`s fast enough to run the software you want, then it`s fast enough.
Remember this is isn`t gonna run WinBloat XP.
This is one sweet project, definatly reconsidering getting a VIA MiniITX now..
-
I love it when you guys talk technical ;-)
This looks really promising. I'm actually genuinely excited by this prospect. Who would've thought? :-D The form factor is really appealing, but I'm f**ked if I'm buying an XP tablet. I'm sure there's loads more people who feel the same way.
-
Karlos wrote:
@neuron
Unlike emulation of alien CPUs. such a 680x0->Coldfire JIT mechanism could be optimised in such a fashion as to leave big chunks of 680x0 code that is 100% coldfire compatible alone and avoid processing it.
However, when you consider HP's Dynamo it even begins to make sense to process it all. They get speed increases for code as a result of cacheing a linear sequence of instructions that represent a path through a complex set of conditions or a loop (its even more surprising when you consider dynamo is actually an interpreter 99% of the time and JIT converts hotspot areas only).
I've often wondered if such a JIT also makes sense on 68040/60 for running code that uses missing instructions emulated by the respective 680x0.library. Oxypatcher etc. is almost like this, but IIRC it patches the unimplemented instructions with a jump to code to emulate the instruction. Not as efficient as a genuine JIT, but much less work too. Its another alternative for running full 680x0 code on coldfire (maybe motorola's software does this ?).
You are probably more familier with JIT than I am, but I have been reading up about them. Yes I want that $10 bounty for AROS 68k emulator :lol:
They seem to work by scanning the code up to the first branch (conditional or otherwise), then translating the code it's just scaned into the native code and locating it as a block of code somewhere in the RAM.
In the case of a Coldfire->68K emu that would not need to change too much of the code.
Then it executes the translated block of code whch will jump to a point in the original code. This causes an exception which can be trapped, If the code jumps to a block of code that has been translated the pointer is updated to point to the translated code, if not, the JIT then scans this code until the next branch and translates it to Native code (as done before). This code block is then located somewhere in ram.
This procedure is repeated during the execution of the program, after some time most of the code has been translated and executes at full speed, ie the blocks of code only ever get get trasnlated once.
If someone has any better explaination, I'd love to hear it!
-
@bloodline
Your basic problem with an AROS 680x0 JIT emulation is portability. You will need codegenerators for every supported platform on which AROS runs.
-
Karlos wrote:
@bloodline
Your basic problem with an AROS 680x0 JIT emulation is portability. You will need codegenerators for every supported platform on which AROS runs.
Indeed, that's why UAE is a far superior option.
-
bloodline wrote:
Karlos wrote:
@bloodline
Your basic problem with an AROS 680x0 JIT emulation is portability. You will need codegenerators for every supported platform on which AROS runs.
Indeed, that's why UAE is a far superior option.
Well, not really, as I see it. UAE's JIT employs a layered design, the bottom layer of which is platform specific (x86 in this case).
Virtually all non x86 versions use interpretive emulation since (AFAIK), nobody has rewritten the JIT backend for other CPUs. Of course, I could be wrong about that.
A start for AROS would be to implement an interetive 680x0 emulation that at least stands a chance of being reasonably portable and worrying about JITs later.
-
Karlos wrote:
bloodline wrote:
Karlos wrote:
@bloodline
Your basic problem with an AROS 680x0 JIT emulation is portability. You will need codegenerators for every supported platform on which AROS runs.
Indeed, that's why UAE is a far superior option.
Well, not really, as I see it. UAE's JIT employs a layered design, the bottom layer of which is platform specific (x86 in this case).
Virtually all non x86 versions use interpretive emulation since (AFAIK), nobody has rewritten the JIT backend for other CPUs. Of course, I could be wrong about that.
A start for AROS would be to implement an interetive 680x0 emulation that at least stands a chance of being reasonably portable and worrying about JITs later.
I should have made that clearer, I mean using UAE (not just the x86 JIT version, but), which already exists for all CPUs :-)
-
Hello Stephen,
First of all, thanks a lot for your free tools. I use them with my MCF5282 board (I am develloping an exec.library for this little beast). I saw the pics of your prototype. It is really amazing ! The board looks very professional.
BTW, I noticed some little bugs on cfasm, I should send to you a bug report but, sometimes I am a little bit too lazy...
Keep up the good work, I am ready to pay $$$ for this beautiful HW.
Regards,
Fred
-
@bloodline
You can shy away from it and tout UAE all you like, but you can't deny that a 680x0 emulation (even if only interpretive) that allowed RTG friendly 680x0 apps to run under AROS would do a lot for the platform :-)
-
Back on topic?
Ok, here we go.
The first thing I though when reading about this was:
AWESOME! THIS KICKS ASS! ... (put randan exclamtion of extreme surprise and excitement here).
Unfortunately, a bit later my brain took over.
What I now think is: this is a brilliant piece of work, but I fear it's to no avail. It yet ANOTHER bedside platform. If it supported AOS, it would be awesome - for me, for us. As it is now, it is an interesting platform for embedded solutions. Only problem: WinCE is already there. My company buys machines with WinCE as embedded OS on the it's terminals and user interfaces, and for partial control of segments of the machine (it's a project of a "4" and 6 zeroes behind it).
So while I admit is technically great, and exciting, and everything a geek likes to see and hear and would love to do, I can only imagine what addition your work to the Amiga market would have been. Imagine a "new classic" hardware, imagine the software-work gone into OS4 itself or into a project like Firebird or Java for Amiga or even OpenOffice for Amiga...
I am sorry that I am not giving you an enthusiastic answer like I wanted, but thats my point of view. Even worse, I fear that some programmers might actually be interested in your work and help you; which would mean a great loss for the Amiga scene.
I see it as another thing that might split the Amiga scene even more. Its really bad with OS4, MorphOS and AROS already...
McTrinsic
-
Karlos wrote:
@bloodline
You can shy away from it and tout UAE all you like, but you can't deny that a 680x0 emulation (even if only interpretive) that allowed RTG friendly 680x0 apps to run under AROS would do a lot for the platform :-)
Wile that is true, I think our "integrated UAE" (I'm getting sick of that term now) will be more popular. Since It will alloweven non system legal programs/games too run as well.