| Poster | Thread |
BigGun
|  |
First game for Dragon Amiga Posted on 17-Nov-2006 15:31:06
| | [ #1 ] |
|
|
 |
Regular Member  |
Joined: 8-Aug-2005 Posts: 438
From: Germany (Black Forest) | | |
|
| Just to show how easy it is to compile Amiga software for the Dragon Coldfire.
Here is a link to 194x for Coldfire and 68k
One simple recompile and now we have a coldfire save 68k binary which runs in full speed on coldfire.
Cheers Gunnar _________________ APOLLO the new 68K : www.apollo-core.com |
|
| Status: Offline |
|
|
hatschi
|  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 16:23:02
| | [ #2 ] |
|
|
 |
Elite Member  |
Joined: 1-Dec-2005 Posts: 2328
From: Good old Europe. | | |
|
| @BigGun
Heh, cool. Now only the Dragon is missing.  So this still runs on 68k? Is there any speed difference between the old "pure" 68k version and this version that also runs on Coldfire? |
|
| Status: Offline |
|
|
Zardoz
 |  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 16:29:53
| | [ #3 ] |
|
|
 |
Team Member  |
Joined: 13-Mar-2003 Posts: 4261
From: Unknown | | |
|
| @BigGun
Did you do that with or without the source? Recompiling applications is generally no problem if you have the source of course... But for most 68k applications, the source is not available. If it can be done directly using the binary and that emulation lib, then it is actually useful. _________________
|
|
| Status: Offline |
|
|
Amigo1
|  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 16:32:02
| | [ #4 ] |
|
|
 |
Super Member  |
Joined: 24-Jun-2004 Posts: 1599
From: the Clouds | | |
|
| @BigGun
it works on os4 too.. how cool is that?!  |
|
| Status: Offline |
|
|
hatschi
|  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 16:45:00
| | [ #5 ] |
|
|
 |
Elite Member  |
Joined: 1-Dec-2005 Posts: 2328
From: Good old Europe. | | |
|
| @hatschi
Quote:
| So this still runs on 68k? Is there any speed difference between the old "pure" 68k version and this version that also runs on Coldfire? |
I just tried both versions with Trance and didn't notice any difference. Of course I would usually prefer the MOS-version for speed reasons. ;)Last edited by hatschi on 17-Nov-2006 at 04:50 PM.
|
|
| Status: Offline |
|
|
JurassicC
|  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 17:27:05
| | [ #6 ] |
|
|
 |
Super Member  |
Joined: 13-Mar-2003 Posts: 1441
From: Somerset, UK | | |
|
| @BigGun
Excellent what a cool game!! runs great under OS4 
Would it be possible for you to create an app that can patch 68K binaries so they can be run on the coldfire. Eg: load in a 68K binary and save out an coldfire one ? I'm looking at buying a dragon for my spare A1200T and if that was possible it would make it all the more attractive.
_________________ A1200T 603e 330Mhz - Mediator TX OS4.1 F.E. CDTV 8MB Fast, OS3.1, SCSI, MicroSD SCSI & CD32 FMV X5000, X1000, A1XE with OS4.1F.E. |
|
| Status: Offline |
|
|
BigGun
|  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 17:35:20
| | [ #7 ] |
|
|
 |
Regular Member  |
Joined: 8-Aug-2005 Posts: 438
From: Germany (Black Forest) | | |
|
| @hatschi
Quote:
So this still runs on 68k?
|
Yes you can create binaries that run on 68k and coldfire. Such binaries might loose a percent or two of the max speed on 68k and on coldfire. Its compareable to running a binary that was optimized for 68000 on a 68040.
And such binaries will run on classic 68k system, on Pegasos, AmigaONE and on WinUAE just fine.
Quote:
Is there any speed difference between the old "pure" 68k version and this version that also runs on Coldfire? |
The speed difference is very small, propably no one will notice. But on Coldfire the binaries will run them native whcih will be a big improvement compared to emulating and still a small improvement compared to using the library.
As mentioned you have a number of ways to run 68k binaries on Coldfire.
a) Running in Emulation. This is slow of course. But you will only need to do this for really unsave programs
b) Running with coldfire.library. This should be faster than 68060 but not as fast as coldfire clean code. This you can do with every program that uses not a real rare combination of unsupported nontrapping commands. Most C programms will just run fine here.
c) Recompiling the binary for full speed. This is easy to do if you have the source.
And there is the option to use an adapted Emulator to sort of recompile all binaries. You add an extra hunk with coldfire emul code. You scan the excutable if you find such rare untrapping commands and you replace them find jump to the emul hunk. This will not work with dirty code. But all programs that were created with a compiler (all C programs) will be clean enough to recompile in such a way.
So the few dirty selfmodifying programs that crashed on the 68040 68060 CPU will need to be emulated slowly. For all the cleaner C programs you you have option to run them in much faster more native modes.
Cheers Gunnar_________________ APOLLO the new 68K : www.apollo-core.com |
|
| Status: Offline |
|
|
NutsAboutAmiga
|  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 17:39:09
| | [ #8 ] |
|
|
 |
Elite Member  |
Joined: 9-Jun-2004 Posts: 13047
From: Norway | | |
|
| @BigGun
I don’t think any one disagreed whit you about you where not able to compile source code to get them running at full speed, what at least I have stated before, that if you need to optimize OS components to get the most out of it, then way not use CPU where that is already done like a PowerPC, and have AmigaOS4 or MorphOS running on it, but instead your reinventing the wheel again.
At least it good news that the game you just ported to ColdFire 68k works on OS4 and MorphOS, so that we do not have yet an other binary split, to think about, dividing the community up even more, this will be the end of this community, we need to focus on what we have, not divide and concur because that will make the community too small as submarkets, and that will also divide the software being produced on number of platforms, when we can have every one pooling in the same direction.
Last edited by NutsAboutAmiga on 17-Nov-2006 at 05:43 PM.
_________________ http://lifeofliveforit.blogspot.no/ Facebook::LiveForIt Software for AmigaOS |
|
| Status: Offline |
|
|
Zardoz
 |  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 17:40:44
| | [ #9 ] |
|
|
 |
Team Member  |
Joined: 13-Mar-2003 Posts: 4261
From: Unknown | | |
|
| @NutsAboutAmiga
And this is exactly my point in this whole story. _________________
|
|
| Status: Offline |
|
|
BigGun
|  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 17:53:46
| | [ #10 ] |
|
|
 |
Regular Member  |
Joined: 8-Aug-2005 Posts: 438
From: Germany (Black Forest) | | |
|
| @NutsAboutAmiga
Quote:
I don’t think any one disagreed whit you about you where not able to compile source code to get them running at full speed, what at least I have stated before, that if you need to optimize OS components to get the most out of it, then way not use CPU where that is already done like a PowerPC, and have AmigaOS4 or MorphOS running on it, but instead your reinventing the wheel again.
|
But the optimizing of those components is nearly no work at all. Seriously! Remember, Exec is tiny. Old Exec was 20K and documentad asm source of older exec was even published. Dissamble it, use tool to purify it, done.
Another example run gfx.lib through a disassembler, run the 68k to coldfire converter over the asm source, compile it again and you are done.
Coldfire purifying the system can be done in a couple of days. Or you simply use the libs from the AFA OS and compile them as coldfire clean 68k code.
There is no need to reinvent anything. Its all there, all is developed already.
Cheers Gunnar
_________________ APOLLO the new 68K : www.apollo-core.com |
|
| Status: Offline |
|
|
Lou
|  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 18:01:51
| | [ #11 ] |
|
|
 |
Elite Member  |
Joined: 2-Nov-2004 Posts: 4259
From: Rhode Island | | |
|
| @All
The way to unify the community is to go the way of intermediate language. Microsoft is doing this with .NET for 5 years now.
You make a common runtime language with a JIT compiler. CLR (common library runtime) can also save the native code generated from the original executable for even faster processing the second time around...
Then you code in your favorite editor using your favorite syntax (ala Visual Basic vs. C#) and your code runs identically no matter what.
Core api's to the OS are natively compiled and as long as the libraries are the same across platforms (x86, PPC, coldfire) everything runs the same.
Escentially, TAO (Intent) was right and MS beat them to the desktop and handheld (PocketPC).
Programming against a virtual cpu is at the core of x86 platform as it stands anyway. x86 is just a reference platform with a supported instruction set. Despite the large instruction set, P4's are RISC chips underneath that layer.
PPC, x86, 68k, none of that really matters anymore. "Does it do what I want?" - that's what matters. Oh, and "is it faster and cheaper?" (..cough..x86..cough..) |
|
| Status: Offline |
|
|
Rob
 |  |
Re: First game for Dragon Amiga Posted on 17-Nov-2006 18:32:32
| | [ #12 ] |
|
|
 |
Elite Member  |
Joined: 20-Mar-2003 Posts: 6437
From: S.Wales | | |
|
| @BigGun
Quote:
Another example run gfx.lib through a disassembler, run the 68k to coldfire converter over the asm source, compile it again and you are done. |
Is this something you can do with any 68k code. Could a user run an app like Vista Pro or Cinema 4D through a disassembler and then simply re-compile it to Coldfire.
If a normal user can re-compile the code on their system then that's good. If it requires someone with in-depth knowledge then there becomes a problem with commercial apps and their distribution.
Thanks for the work done on your shootemup construction kit. The OS4 version runs nice and fast. |
|
| Status: Offline |
|
|
ChrisH
 |  |
Re: First game for Dragon Amiga Posted on 18-Nov-2006 10:05:28
| | [ #13 ] |
|
|
 |
Elite Member  |
Joined: 30-Jan-2005 Posts: 6679
From: Unknown | | |
|
| @Rob who said Quote:
| If it requires someone with in-depth knowledge then there becomes a problem with commercial apps and their distribution. |
You should be able to work-around the legal problems by distributing a patch which requires the original program._________________
|
|
| Status: Offline |
|
|
PulsatingQuasar
|  |
Re: First game for Dragon Amiga Posted on 18-Nov-2006 11:40:11
| | [ #14 ] |
|
|
 |
Cult Member  |
Joined: 10-Mar-2003 Posts: 550
From: The Netherlands, Europe | | |
|
| This all sounds very promising. Together with the remarks from Elbox that OS 3.9 didn't use any patches and that the Dragon firmware was not optimized this thing might have a chance after all.
I'm really looking forward to a review now. _________________ AmigaOne-XE G3 OS 4. A4000 PPC A1200 PPC |
|
| Status: Offline |
|
|
hatschi
|  |
Re: First game for Dragon Amiga Posted on 18-Nov-2006 11:44:56
| | [ #15 ] |
|
|
 |
Elite Member  |
Joined: 1-Dec-2005 Posts: 2328
From: Good old Europe. | | |
|
| @PulsatingQuasar
Quote:
| This all sounds very promising. Together with the remarks from Elbox that OS 3.9 didn't use any patches and that the Dragon firmware was not optimized this thing might have a chance after all. |
It would be great to have Afa OS recompiled for Coldfire. That should provide a big speedup for e.g. truetype fonts with antialiasing, icon display and MUI (using Zune). |
|
| Status: Offline |
|
|
Crumb
|  |
Re: First game for Dragon Amiga Posted on 18-Nov-2006 12:05:20
| | [ #16 ] |
|
|
 |
Elite Member  |
Joined: 12-Mar-2003 Posts: 2209
From: Zaragoza (Aragonian State) | | |
|
| @BigGun
Quote:
| One simple recompile and now we have a coldfire save 68k binary which |
Now we only need an Elbox Dragon 
I doubt it's so easy to take a 680x0 *binary* and convert it into ColdFire, but I would like to be proved wrong... let's hope it's as easy as you say and everything can be adapted to coldfire easily.
I still think that it's not easy to differenciate code from data to find the non-compatible instructions, but I'd like to be proven wrong and to see OS3.9 running at full 266Mhz speed on Dragon.
If it works so well I guess they will release an A4000 version.
But as I have told you in other threads, recompiling old software is not an easy task.
Recompiling available source code is not a problem and it never has been a problem, but dissassemblers don't work always correctly and sometimes you can't even assemble the dissassembled code again because the dissassembler didn't do its task correctly.
Anyway... send Elbox an email, I guess they'll like to know that they have something to show at their shows that doesn't run slow  Last edited by Crumb on 18-Nov-2006 at 12:05 PM.
_________________ The only spanish amiga news web page/club: CUAZ |
|
| Status: Offline |
|
|
BigGun
|  |
Re: First game for Dragon Amiga Posted on 18-Nov-2006 13:13:38
| | [ #17 ] |
|
|
 |
Regular Member  |
Joined: 8-Aug-2005 Posts: 438
From: Germany (Black Forest) | | |
|
| @Crumb
Quote:
I doubt it's so easy to take a 680x0 *binary* and convert it into ColdFire, but I would like to be proved wrong... let's hope it's as easy as you say and everything can be adapted to coldfire easily.
I still think that it's not easy to differenciate code from data to find the non-compatible instructions, but I'd like to be proven wrong and to see OS3.9 running at full 266Mhz speed on Dragon.
|
Hi Crumb,
Okay, lets quickly annalyze the situation together: We can divide the Software into several groups.
1st) There is Amiga software which can run fast/or slow we do not care. We do not care if the "avail" command runs with 40 or 200 MHz.
2nd) There is software which we want to run very fast. Examples are key operating system components or very CPU intensive programs and stuff like as HTTP stack and SSL compression.
This software that needs to run fast, can again be grouped into several groups
a) Software which makes no use of unemulated commands. This groups can savely be run with the coldfire.lib
b) If this software for which every clockcylce is important for us. Maybe stuff like gfx.lib - If be coincident this software makes little use of to be emulated commands then we can even run this software with the coldfire.lib
If not we should consider to recompile it. Recompilation can be done on the source, this is most easy. We can do this now will all OS parts which are available through AFA OS and with tools thta are still in development like AWeb, Yam, etc. For programs that we want to get very fast and to not have the source we can patch it using the binary. This will be difficult for hacky stuff written in ASM. Stuff like Demos. Applications written in C can usually be dissambled very nicely and recompiled again nicely. I did this with a number of Amiga OS commands in the old day without any problems.
Real problemantic tools could either be poatched with manual help. Which is not more complecated than cracking a game was - something which we did hundret of times on the old days. Or the programs could be run in the 100% compatible emulater but with the known performance hit.
But for me more important than having Arteffect running with 200% is that we can now use 68k programs for tasks which were impossible before.
The max performance of the Coldfire is about 5 times that of our 060 CPUs. With recompiled OS libs and tcp/ip stack and recompiled webrowser we will be able to surve much faster than with ou 68060 machines. The Coldfire will popably make it possible to watch DVDs.
Of course running PS3 games will not be possible on the Coldfire but games like Robin Hood or Northland should even be possible on a Coldfire Amiga.
The Coldfire is certainly not a new Supercomputer but with some OS patches it will propably behave most of the time like an 060 on steriods.
Cheers Gunnar_________________ APOLLO the new 68K : www.apollo-core.com |
|
| Status: Offline |
|
|
Crumb
|  |
Re: First game for Dragon Amiga Posted on 18-Nov-2006 15:24:18
| | [ #18 ] |
|
|
 |
Elite Member  |
Joined: 12-Mar-2003 Posts: 2209
From: Zaragoza (Aragonian State) | | |
|
| @BigGun
Quote:
Of course running PS3 games will not be possible on the Coldfire but games like Robin Hood or Northland should even be possible on a Coldfire Amiga. |
AI requires quite a lot cpu power. 266Mhz is not exactly "fast". You may be able to do stuff you didn't do before with 060, but gfx bandwitch is not the main bottleneck for all games. Strategy ones spend most of its time with the AI of hundreds of units so writting faster to the gfx card won't help them. AI for FPS is also important...
For 3D games writting faster to the gfx card ram helps but a faster cpu helps even more.
I mean... a 266Mhz cpu is not enough for most of games.
Quote:
| With recompiled OS libs and tcp/ip stack and recompiled webrowser we will be able to surve much faster than with ou 68060 machines |
a tcp/ip stack is not exactly a bottleneck. Transfers of 3Megabytes per second can be achieved with a 060 with an ethernet100 card on mediator and when I surf the web it's not the bottleneck.
SSL is not much interesting because amiga web browsers suck.
I usually watch DivX movies and I doubt a 266Mhz coldfire is enough to watch big videos.
I guess that watching DVDs *may be possible*, but 266Mhz is not exactly *state of the art*.
For me running ArtEffect, Scala, Pagestream and other apps faster is more interesting than SDL ports of linux games.
Quote:
| Applications written in C can usually be dissambled very nicely and recompiled again nicely. |
I sincerely doubt that most of amiga killer apps are written xclusively in C. Critical loops will probably be written in asm.
BTW... AFAIK Coldfire FPU is completely different than 060 FPU... how will de plan to fix that?_________________ The only spanish amiga news web page/club: CUAZ |
|
| Status: Offline |
|
|
Donar
|  |
Re: First game for Dragon Amiga Posted on 18-Nov-2006 20:46:49
| | [ #19 ] |
|
|
 |
Regular Member  |
Joined: 12-Nov-2006 Posts: 117
From: Germany | | |
|
| Quote:
| ...if you need to optimize OS components to get the most out of it, then way not use CPU where that is already done like a PowerPC, and have AmigaOS4 or MorphOS running on it, but instead your reinventing the wheel again.... |
*offtopic* Sort of, but the other options are where? OS4.0? The final Release date should have been years ago, instead Amiga Inc. announces OS5.0 and says that they have some difficulties with Hyperion. MOS? Since the divide between Genesi and MOS-Team progress is rather slow.
A bigger support for AfA OS/AROS would lead to more improvements to OS3.9 and should speed up 3.9 on Coldfire accelerators. Ideally it would lead to a maintained 68k/CF AROS. So reinventing the Wheel yes, but not from scratch and only because the inventors before have not managed to make the wheel a perfect circle.
The Coldfire is a embedded CPU so you can not expect wonders from it, but its rather cheap. The "bigger" PPC CPU's are rather pricey. And after Apple left the market i think they will be Server Processors and/or embedded CPU's in the future. *offtopic*
But back to games, if SCUMM VM and UFO-Enemy Unknown runs on a coldfire'd Amiga at decent speed i will be happy. For other Games other Devices. Hmm PS1 emulator...but would be only nedded for "Terror from the Deep" as there is no AMIGA port of it.
Bye _________________ <- Amiga 1260 / CD -> Looking for: A1200/CF CFV4/@200,256MB,eAGA,SATA,120GB,AROS  |
|
| Status: Offline |
|
|
Zardoz
 |  |
Re: First game for Dragon Amiga Posted on 18-Nov-2006 20:51:39
| | [ #20 ] |
|
|
 |
Team Member  |
Joined: 13-Mar-2003 Posts: 4261
From: Unknown | | |
|
| @BigGun
Quote:
but games like Robin Hood or Northland should even be possible on a Coldfire Amiga.
|
Why is it that a G4 is recommended for the MorphOS version then?_________________
|
|
| Status: Offline |
|
|