Welcome, Guest. Please login or register.

Author Topic: AmiQuake 2 - new 68k Quake 2 Port  (Read 56370 times)

Description:

0 Members and 2 Guests are viewing this topic.

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #14 on: March 21, 2013, 11:05:33 PM »
Yep it's normal for Monkey Island 3 to be slow on AGA, checkout the games original requirements and you'll see why.  Maybe we can get some more speed if Jens ever gets around to releasing that chunky mode, who knows.


I think Quake 2 is the most demanding 3d engine that can use a software renderer, I wouldn't even try anything more demanding with AGA.
« Last Edit: March 21, 2013, 11:35:48 PM by NovaCoder »
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #15 on: April 02, 2013, 11:49:19 PM »
Hiya Matt,

Yep just got back from hols, back to nasty old work tomorrow :(


Nope, no RTG support currently.   A few people have asked about it and although it would be easy enough to add there really isn't much point.  It won't make hardly any difference to speed as all it would be doing is skipping the C2P (which doesn't take much processing time at 320x240).

If you have an RTG card then you can just use Hyperion's port instead.


I just noticed that AmiQuake 2 runs out of hunk memory when trying to load up level 4 with 64MB, I've fixed it up so I'll upload v1.03 at some point.

v1.02 on YouTube

I think the only way that I might be able to increase speed further is if I can get some 060 scan-line rendering assembler linked in.
« Last Edit: April 03, 2013, 12:00:33 AM by NovaCoder »
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #16 on: April 05, 2013, 01:01:34 AM »
Only thing left for me to do with this port to increase speed futher is to try and replace some of the C funtions with hand-written 060 targeted assembler.

If any talented assembler guys would like to help, I've created a developement thread over on AmigaCoding

If I can get some good peformance increases, this will also improve the speed of my Quake port because they share the same drawing functions.
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #17 on: April 05, 2013, 02:18:49 AM »
Quote from: AmigaClassicRule;731308
I checked and RemApollo DOES INDEED MAKE A HUGE DIFFERENCE in my Amiga performance. All I do is type RemApollo QUIET in my startup sequence and my Amiga 1200 zooms like a rocket instead of a bicycle. So yes I do need it.  Also even if I did for some reason disable it, PreEmulA1200 does not work. It reboots, the screen becomes red, the power led flashes couple of times, reboot back with software failure and my Shapeshifter fails to load asking for PreEmulA1200 all over again. So the only coolest emulator in my A1200 cannot run is the Mac emulator :(


Yep it made a big speed difference for me to, I've also mentioned it in the AmiQuake 2 readme.
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #18 on: April 14, 2013, 08:30:06 AM »
Finally getting some good speed out of this sucker :blink:

video of v1.06

Seems much nicer to play now too :)
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #19 on: April 14, 2013, 09:36:11 PM »
Quote from: utri007;731988
When I can download this new version? Is brightness bug fixed?


Yep brightness ok now, probably upload it next week.
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #20 on: April 14, 2013, 09:59:55 PM »
Quote from: ByteRyder;731986
Awesome. This is getting better everyday! :)

@nova I'm wondering would it be possible to use some of the techniques you're using to make AmiQuake 2 faster on AmiQuake and make that a little faster aswell?


Yes I do hope to add some Quake 2 code to AmiQuake (eg gun sights) and should also be able to boost the speed a little now.
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #21 on: April 15, 2013, 12:59:14 AM »
Quote from: utri007;732015
You start to be quit experienced now :) You have probably checked many sources when you looked possible game ports? Could you share that information to us? What ports could be possible, what would need to do, what experince would be needed? Do you have some kind of list? Like Alien Breed 3D - TKG code is ASM and completely mess, almost impossible. etc? That would be helpfull, for those who are looking for possibilities.

Yep I've done this a few times  now so this is what I've learned when choosing some older (open source) PC software to port to AGA 68k.

1) Needs to support 8bit obviously
2) Resolution should be 320x240 max (320x200 is better)
3) Obviously needs to use a software rendering engine (no 3D hardware required)
4) Must provide C code and not rely on X86 assembler
5) Must support big endian

It's best to choose an open source project where someone has already gone to the trouble of cleaning the nasty old X86 code up and making it system independent (most of those old DOS games are a bit scary).

Most of the time the thing you want to port will use the SDL so this is currently the steps I typically perform for porting a project using gcc 3.4 (AmiDevCpp).

1) Try and get it working using the old 68k RTG SDL, replace any missing UNIX functions with Amiga equivalents (eg DOS functions).
2) Once it's basically working using the SDL, I replace each SDL area (sound, input, timing, graphics) with Amiga/AGA equivalents (obviously test each stage as it's removed).
3) Remove all debugging/test code that might slow it down (writing to the console or log files is very slow) .
4) Remove any features that would be too slow under AGA (eg multi-player network support, fancy graphical effects, CDROM support).
5) If possible remove multi-threading and run-time type checking (C++).
6) If possible replace any core rendering functions with assembler (my Quake ports only use a tiny bit of assembler but they use it in the right places).
7) Replace memory copy functions and memory allocation functions with their Amiga equivalents.


I'm currently trying to develop a very basic AGA SDL, if I can get this working it would really help with porting more stuff to 68k AGA.
« Last Edit: April 15, 2013, 01:03:23 AM by NovaCoder »
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #22 on: April 15, 2013, 01:25:34 AM »
Quote from: AmigaClassicRule;732031
NovaCoder if you do manage to get a full functioning 100% AGA SDL does that mean games in Aminet that I want so badly to run on my Amiga 1200 AGA will be able to be ported and run on AGA without the need of RTG anymore? Like Zelda and so on?

Not sure, might make it a bit easier possibly.

Like I said it will be a very basic implementation of the SDL so not all features will be supported.
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #23 on: April 16, 2013, 04:11:08 AM »
Quote from: Karlos;732099
Speaking of awesome quake2 ports, check this one out


Yep that does look pretty awesome :)


Obviously it's not running as fast as my AGA port but you can't have everything.....
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #24 on: April 16, 2013, 05:24:53 AM »
Quote from: nicholas;732118
Nice!

/Apologies for going OT....


What on amiga.org, don't be silly ;)
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #25 on: April 21, 2013, 12:49:13 AM »
Hiya,

Ok v1.06 released to AmiNet, this will probably be the last version as there is nothing else I want to do with it and can't get it any faster.

Quake 2


Now supports the Official Mission Packs (note, they are very demanding!)

Ground Zero
The Reckoning


I also did a quick RTG hack if anyone wants it -> RTG hack
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #26 on: May 03, 2013, 02:25:12 AM »
I'm still playing through the single player game (full retail version) and doing little tweaks here and there to the source code, I'll release it when I'm finished with it.  

So far my 060 seems to be up to the job and it's nice and playable :)

[youtube]rve4IJRSZxw[/youtube]
« Last Edit: May 03, 2013, 03:35:49 AM by NovaCoder »
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #27 on: May 04, 2013, 12:39:23 AM »
v1.07 in action :)

[youtube]SNKk9tQwwjM[/youtube]
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #28 on: May 06, 2013, 05:55:36 AM »
Quote from: Cosmos;733875
Quake 3 is possible you mean ?


Expect an A500 port any day now....
Life begins at 100 MIPS!


Nice Ports on AmiNet!
 

Offline NovaCoderTopic starter

Re: AmiQuake 2 - new 68k Quake 2 Port
« Reply #29 from previous page: May 06, 2013, 09:25:36 AM »
Quote from: Crumb;733881
do you think there's room to introduce more fixed point math?

I don't think that would help, I tried same trick with Quake 1 and it actually made it slower in places.

I've tuned it the best I can but without better tools this as good as we are going to get :)
« Last Edit: May 06, 2013, 09:31:20 AM by NovaCoder »
Life begins at 100 MIPS!


Nice Ports on AmiNet!