English Amiga Board


Go Back   English Amiga Board > Main > Retrogaming General Discussion

 
 
Thread Tools
Old 11 December 2017, 12:11   #1
Miggy4eva
Amiga warrior
 
Miggy4eva's Avatar
 
Join Date: Jul 2017
Location: Australia
Posts: 64
Port Wolfenstein on Amiga 500 / 1000 OCS

hello everyone, i would love to have a thread to discuss Wolf 3d. And to stay on topic without fighting etc.
Mods, if this is in the wrong area please move it, I don't mean to offend anybody.

I have attached the resources for Wolfenstein including all sprites and textures.
It is 242 unique colours, I have not reduced the colour yet because I need to select a palette for each level and even for each section of a level. We could do a quick palette change with the Copper when the players walks through a certain door so that it's more suitable for new sprites and textures in that area. Simple with the Copper.
There are further discussions about extracting resources here: https://forum.zdoom.org/viewtopic.ph...fcfe42e860cd90


I have read people discussing the calculations of bandwidth required in other threads, and on other sides, and it seems with 2x2 pixel doubling or 1x2 the OCS Amiga is fast enough to achieve 20fps in 64 colours.

To achieve this we need
1) Very efficient raycaster engine. See 2) Very good C2P routines using Copper. Here are some discussion resources, if I find others I will add to this list:
The purpose of this thread will be to collect any resources we need to make Wolfenstein happen on the Amiga. I will collect links, tutorials, interesting quotes and discussions I get out of other conversations I have read through on this topic, and videos of demo's and games which show the OCS doing everything required to run Wolfenstein, in case some thinks it's not possible.

Finally, please give this some attention and thought, and make constructive posts only to help us move forward. I have wanted Wolf on the Amiga for SO long, it simply must be done. Can we please start work on it. I am ready to any graphics work and other roles that I can.

Examples of first-person engines on OCS, Amiga 500 / 1000 STOCK
  1. Wildcat Demo. Skip to 59 seconds. [ Show youtube player ]
    In fact the author told somebody he was going to find the time to continue developing this into Wolfenstein but now I can not find the comment on here, maybe it was on youtube?
  2. Legends of Valour. Skip to 15 seconds. [ Show youtube player ]
  3. Ambermoon. Skip to 1:41. [ Show youtube player ]
  4. Wheelbarrow Simulator. Quite a joke game but also interesting that it does FPS without any optimisation and I doubt the programmer tried very hard. This is what is EASILY achievable. [ Show youtube player ]
  5. SuperOriginal Demo. Skip to 2:22. [ Show youtube player ]
  6. Alien Enemy playable demo [ Show youtube player ]
  7. Citadel. The textures are far higher resolution than required, there are textures on the floor and ceiling which can be cut for Wolf. This would increase the framerate [ Show youtube player ]
  8. Another Citadel video. Skip to 9:08 for screen size change, frame rate isn't as fast as other videos (maybe has other programs open?), but if we pixel double even this to 2x2 to fill the screen it will be fine. [ Show youtube player ]
  9. Walls. Skip to 2:08. [ Show youtube player ]
  10. Can anyone please think of any other good demo's or examples, I can edit this post and add them


Examples of Wolfenstein 3d and other things of interest running on platforms comparable to A500
  1. Thanks LongLifeA1200. Wolfenstein running on an 8-bit 8088 at 4.77mhz. Skip to 4:00 [ Show youtube player ]
  2. Thanks LongLifeA1200. Wolfenstein running on 286 at 10mhz. Skip to 0:40 [ Show youtube player ]
  3. Wolfenstein running on 8-bit Apple iiGS. CPU is 8 bit 65816, accelerated to 10mhz. Skip to 1:25 for fullscreen. 5:38 for window decrease. [ Show youtube player ]
  4. Wolfenstein running on C64. Skip to 1:15. [ Show youtube player ]
  5. Wolfenstein running on Megadrive and SNES. [ Show youtube player ]
  6. Wolfenstein running on Gameboy Colour. Skip to 0:30. [ Show youtube player ]
  7. Wolfenstein running on Atari ST. Framerate is quite terrible, resolution is 2x2 pixel doubled. Skip to 0:55. [ Show youtube player ]

Attached Thumbnails
Click image for larger version

Name:	Wolf3dResources.jpg
Views:	563
Size:	463.9 KB
ID:	55816  

Last edited by Miggy4eva; 13 December 2017 at 11:59.
Miggy4eva is offline  
Old 11 December 2017, 12:25   #2
alexh
Thalion Webshrine
 
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 14,337
Some of the above videos are not an A500 @ 7(ish)MHz

Take a look at the Atari ST demo done by Ray/TSCCC

http://s390174849.online.de/ray.tscc.de/wolf3d.htm
alexh is offline  
Old 11 December 2017, 12:49   #3
Samurai_Crow
Total Chaos forever!
 
Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
The "Walls" demo on the Aminet does full frame rate by stencil mapping instead of using textures....
Samurai_Crow is offline  
Old 11 December 2017, 13:14   #4
Megol
Registered User
 
Megol's Avatar
 
Join Date: May 2014
Location: inside the emulator
Posts: 377
BSP is probably better than raycasting. IIRC the Atari ST version uses BSP.

These threads pop up from time to time - you even linked one of them. Why would this be different than all other threads?

If you want to see a fast wolf engine capable of gameplay then you have to learn to code and do it yourself. Maybe you'll get help after proving that the critical part (rendering+optional chunky2planar) can be done fast enough.
Megol is offline  
Old 11 December 2017, 14:27   #5
Miggy4eva
Amiga warrior
 
Miggy4eva's Avatar
 
Join Date: Jul 2017
Location: Australia
Posts: 64
Quote:
Originally Posted by alexh View Post
Some of the above videos are not an A500 @ 7(ish)MHz

Take a look at the Atari ST demo done by Ray/TSCCC

http://s390174849.online.de/ray.tscc.de/wolf3d.htm
thank you but I feel like this is the version we must beat, not copy. In the old days the Amiga got so many ST Lazyports and to get one today is just humiliating. I must admit this ST version annoys me very much sometimes with Atari people trying to start fights about it. It has a low frame rate and jumpy controls. Don't get me wrong, the programmer is genius and it's amazing to see on the ST, but the Amiga can be so much better. At least the ST demonstrates that it's possible on the Amiga OCS.

Quote:
Originally Posted by Samurai_Crow View Post
The "Walls" demo on the Aminet does full frame rate by stencil mapping instead of using textures....
Thank you, I have added this to my OP as another example.

Quote:
Originally Posted by Megol View Post
BSP is probably better than raycasting. IIRC the Atari ST version uses BSP.

These threads pop up from time to time - you even linked one of them. Why would this be different than all other threads?

If you want to see a fast wolf engine capable of gameplay then you have to learn to code and do it yourself. Maybe you'll get help after proving that the critical part (rendering+optional chunky2planar) can be done fast enough.
I'm sorry but I'm far too old to learn a new trick like programming. Besides, I have other skillsets in my life which programmers do not have, maybe one of them is to help motivate and organise to get this project done.
Miggy4eva is offline  
Old 11 December 2017, 17:01   #6
alexh
Thalion Webshrine
 
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 14,337
Interesting ideas but the optimisations required are such a lot of work. And for what? Kudos?

On the ST platform, accelerators are few and far between, so optimisation is the only good option.

Amiga users have their pick of accelerators and can play the AmiWolf_ECS port at full speed on just about any of them.

I don't think you'll inspire any Amiga coder to pick up the challenge without taking part yourself and getting down and dirty.
alexh is offline  
Old 11 December 2017, 19:40   #7
Amiga1992
Registered User
 
Join Date: May 2001
Location: ?
Posts: 19,645
If you wanted it for so long, then make it happen, instead of instructing others to make it happen (or trying to convince them somehow).
What are you exactly bringing to the table besides prodding people incessantly about something, and even when you are told "it doens't work", insist on the contrary, even if you do not have the technological knowledge to assert such assumptions?

I am 100% sure that if you tried to make it happen, you would realize why it isn't there already, and we would be rid of yet another Amiga fanfiction thread in the Coders forum (a forum for CODERS to discuss CODING).
Amiga1992 is offline  
Old 12 December 2017, 07:40   #8
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
Quote:
Originally Posted by Miggy4eva View Post
Don't get me wrong, the programmer is genius and it's amazing to see on the ST, but the Amiga can be so much better.
Come on, name ONE thing where a Wolf3D-game would graphically benefit from the A500 hardware? There's no point in discussing these thing unless you have concrete suggestions to put on the table.
britelite is offline  
Old 12 December 2017, 07:47   #9
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
And as I've said before, I would actually be interested in making a Wolf3D-style game on the A500, but threads like this one are a surefire way to make me lose my interest.

And I wouldn't be surprised if quite a few other coders feel the same way...

Last edited by britelite; 12 December 2017 at 07:59.
britelite is offline  
Old 12 December 2017, 08:33   #10
Samurai_Crow
Total Chaos forever!
 
Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
Porting the Mac version would be better than the DOS version because the QuickDraw plotter used non-textured polygons instead of texture mapping. The Amiga polygon plotter is still not fast enough but it would still avoid the chunky to planar conversion.
Samurai_Crow is offline  
Old 12 December 2017, 11:55   #11
alexh
Thalion Webshrine
 
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 14,337
Surely starting with the Apple IIgs source (which is what they did for the AtariST demo) is the way to go.

The source is already configured for a 16-bit host CPU with no FPU but it does have chunky graphics
alexh is offline  
Old 12 December 2017, 16:18   #12
Miggy4eva
Amiga warrior
 
Miggy4eva's Avatar
 
Join Date: Jul 2017
Location: Australia
Posts: 64
Quote:
Originally Posted by alexh View Post
Interesting ideas but the optimisations required are such a lot of work. And for what? Kudos?
Amiga users have their pick of accelerators and can play the AmiWolf_ECS port at full speed on just about any of them.
I don't think you'll inspire any Amiga coder to pick up the challenge without taking part yourself and getting down and dirty.
I want it to prove the OCS could have done it a long time ago. I want to see the machine I love have success and I know in my heart it was truly future proof by 10 years, to see 1985 spec machine running a PC game from 90's proves this. I would play the game from start to finish if it was released on the Amiga and have some nice thoughts about what could have been.
Amiwolf ECS is slow, needs fast machines, not original OCS.
I AMMMMM willing to get involved, I can convert graphics and select palettes, and collect information from all other discussions as well as demo examples to show what is possible, and offer ideas to the level I can understand. I am willing to check this thread every day and offer ideas and thoughts to anyone stuck

Quote:
Originally Posted by Akira View Post
If you wanted it for so long, then make it happen, instead of instructing others to make it happen (or trying to convince them somehow).
What are you exactly bringing to the table besides prodding people incessantly about something, and even when you are told "it doens't work", insist on the contrary, even if you do not have the technological knowledge to assert such assumptions?
I know it's possible because of so many other "tips of the iceberg" we have seen in other Amiga demo's and games. And also the fact Wolf is on inferior machines to the Amiga proves it is possible on Amiga

Quote:
Originally Posted by britelite View Post
Come on, name ONE thing where a Wolf3D-game would graphically benefit from the A500 hardware? There's no point in discussing these thing unless you have concrete suggestions to put on the table.
Compared to Atari version - copper and blitter. Copper to assist c2p and change palettes for more colours on screen, and perform mode 7 "like" (I know mode 7 is SNES) operations to appear like texture mapping and cheat in some areas and save CPU. Blitter to help shift data around the screen, scale the sprites, and one idea I have is in first-person when the player stands still and turns around with the side cursor keys instead of doing 3d the blitter can just scroll the image in silky-smooth 50fps. With some smart code we could detect whenever the player is just turning or when some object is only moving sideways, and scroll it directly in planar instead of rendering in 3d in chunky and then converting.

Quote:
Originally Posted by britelite View Post
And as I've said before, I would actually be interested in making a Wolf3D-style game on the A500, but threads like this one are a surefire way to make me lose my interest.

And I wouldn't be surprised if quite a few other coders feel the same way...
Huh? WE are people who would worship you if you did it, do you hate the Amiga fans that much?? That should be who you live for if you are an Amiga programmer, isn't it? I do not understand this

Quote:
Originally Posted by Samurai_Crow View Post
Porting the Mac version would be better than the DOS version because the QuickDraw plotter used non-textured polygons instead of texture mapping. The Amiga polygon plotter is still not fast enough but it would still avoid the chunky to planar conversion.
OK that sounds great, avoiding C2P would clear the main obstacle!!

Quote:
Originally Posted by alexh View Post
Surely starting with the Apple IIgs source (which is what they did for the AtariST demo) is the way to go.
The source is already configured for a 16-bit host CPU with no FPU but it does have chunky graphics
I am just very worried about a lazyport that doesn't use Amiga's full abilities with that approach. This can not be just the same as the Atari version, it must beat it in the following areas:
1) 64 colours on screen
2) Higher resolutions. Early versions to have 2x1 pixel doubling, even 2x2, but the goal should be to return to 1x1 with optimisations
3) 20 fps. In other threads the calculations show this is possible
4) Superior sound quality which only the Amiga can deliver
Miggy4eva is offline  
Old 12 December 2017, 16:54   #13
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
Quote:
Originally Posted by Miggy4eva View Post
Compared to Atari version - copper and blitter.
So what exactly could you do with the copper and blitter? Please give REAL examples.

Quote:
Copper to assist c2p
How exactly? Give me some REAL examples.

Quote:
Blitter to help shift data around the screen
How exactly? Give me some REAL examples.

Quote:
scale the sprites
How exactly? Give me some REAL examples.

Quote:
Huh? WE are people who would worship you if you did it, do you hate the Amiga fans that much??
I don't hate amiga fans, but I do hate fanboys with no sense of reality.
There's a big difference in actually trying to contribute and just going "OMG OMG OMG GIVE ME WOLF3D NOW!!", and you're not someone who's actually contributing with anything sensible.

Quote:
1) 64 colours on screen
Won't happen on a A500 if you want playable speed

Quote:
2) Higher resolutions. Early versions to have 2x1 pixel doubling, even 2x2, but the goal should be to return to 1x1 with optimisations
Won't happen on a A500 if you want playable speed

Quote:
3) 20 fps. In other threads the calculations show this is possible
I promise you, 20fps with a decent sized screen isn't possible on A500. At least if you want anything else than wall-renderer.

Quote:
4) Superior sound quality which only the Amiga can deliver
Ok, this could actually be done.

Last edited by britelite; 12 December 2017 at 17:04.
britelite is offline  
Old 12 December 2017, 17:09   #14
Amiga1992
Registered User
 
Join Date: May 2001
Location: ?
Posts: 19,645
Quote:
Originally Posted by Miggy4eva View Post
I know it's possible because of so many other "tips of the iceberg" we have seen in other Amiga demo's and games. And also the fact Wolf is on inferior machines to the Amiga proves it is possible on Amiga
It has been told to you time and time again that just because a vaguely similar "wall routine" appears on a demo doesn't mean a game like Wolfenstein 3D is possible. It's not "the tip of the iceberg".
You have been told before that you overstate Amiga capabilities.
You have actually been banned from EAB for forcefully pushing this very same discussion in the past. It'll probably only be a matter of time before you revert to namecalling again, because that's how a brat acts when they don't get the thing they demand. I say brat because it's how you've been acting throughout your very short history at EAB. If that bothers you, perhaps you should change your ways. Although it seems to me like the ban had not helped you think things clearly.

This very paragraph:
Quote:
Compared to Atari version - copper and blitter. Copper to assist c2p and change palettes for more colours on screen, and perform mode 7 "like" (I know mode 7 is SNES) operations to appear like texture mapping and cheat in some areas and save CPU. Blitter to help shift data around the screen, scale the sprites, and one idea I have is in first-person when the player stands still and turns around with the side cursor keys instead of doing 3d the blitter can just scroll the image in silky-smooth 50fps. With some smart code we could detect whenever the player is just turning or when some object is only moving sideways, and scroll it directly in planar instead of rendering in 3d in chunky and then converting.
shows exactly how little idea of how an Amiga works you have and why this kind of thread goes nowhere and just annoys developers. You again repeat your "mode 7" nonsense you talked about before.

You got this thread closed before, now you are just reopening it:
http://eab.abime.net/showthread.php?t=84620&page=5
Anyone reading from that page on who doesn't already know from this threa how far off the target you are can get a clue.
Quote:
Originally Posted by Miggy4eva
the Wildcat demo is a Wolf 3d engine running at silky 60fps frame rate on A500
LOLOLOLOL
You've been derailing threads on the coders forum to everyone's detriment, like this one:
http://eab.abime.net/showthread.php?...01#post1200901

Nobody here or anywhere is going to do any of this for you. If you are SO SURE you should be able to accomplish it. And if you cannot do it yourself even partly, then stop trying to make others do it. You could at the very least study how the Amiga actually works but you do not.

Quote:
do you hate the Amiga fans that much?? That should be who you live for if you are an Amiga programmer, isn't it? I do not understand this
Of course you don't understand this Nobody hates Amiga enthusiasts, but almost everyone dislikes driveling fanboys though.

Your thread lacks any sort of substance that would assert any of your "goals".

Let's help you out here a bit: look at Master484's threads here, he proposes an idea and works for it by LEARNING what an Amiga can or cannot do and MAKING a proof of concept prototype showing some of his ideas.
Maybe you can take a hint and learn a thing or two from him.
I doubt you will, and you will probably just keep blabbering.
Amiga1992 is offline  
Old 12 December 2017, 17:11   #15
DH
Global Moderator
 
DH's Avatar
 
Join Date: Sep 2008
Location: Might as well be WORK :(
Age: 56
Posts: 4,110
Isn't this a bit like putting a 1970's Ford engine into a modern day Bugatti Veyron, expecting it to produce the same performance and expecting the poor mechanic to achieve it

Not going to happen.

You have to be realistic about the capabilities and banging on about it, expecting others to come up with the numbers and not giving some real thought on how you could even achieve it, is kinda a poor start.
DH is offline  
Old 12 December 2017, 17:24   #16
britelite
Registered User
 
Join Date: Feb 2010
Location: Espoo / Finland
Posts: 818
@Miggy4eva

I have a suggestion, if YOU can come up with good tricks on how to vastly improve rendering speeds on a Wolf3d-style game, I promise to try them out.

BUT, links to demos or threads you don't really understand are not acceptable, YOU have to present me with YOUR original ideas. And until you have something to sensible to contribute with, you will not post anything related to this topic.

Deal?
britelite is offline  
Old 12 December 2017, 20:25   #17
Locutus
Registered User
 
Join Date: Jul 2014
Location: Finland
Posts: 1,176
Honestly, by now i wouldn't even mind it if there was a blanket 3 day auto-ban on mentioning Wolfenstein, Doom or Quake :-D
Locutus is offline  
Old 13 December 2017, 05:37   #18
Miggy4eva
Amiga warrior
 
Miggy4eva's Avatar
 
Join Date: Jul 2017
Location: Australia
Posts: 64
This thread is just meant to be a collection of demo's to show simlar things the Amiga has done, and to document all ideas, techniques, brainstorming of how we can do it.
If you want to move it out of the coders forum then fine
Miggy4eva is offline  
Old 13 December 2017, 05:56   #19
LongLifeA1200
Registered User
 
LongLifeA1200's Avatar
 
Join Date: Nov 2017
Location: Amiga Kingdom
Posts: 366
Thanks for compiling that showcase list. Ambermoon gives me an idea for another project that I otherwise would have missed. And that link to the raycasting engine was an interesting read.

Although I'm not much of a fan of Wolfenstein 3D (which I always misspell "Wolfenstien"), I can't help but wonder if porting to the system you suggest is feasible, so I began with trying to get a hardware timeline:

1982 Intel 286 6mhz (up to 25mhz)
1985 Intel 386 12mhz (up to 40mhz)
1985 Amiga 1000 7mhz 256kb RAM (up to 8.5mb)
1987 Amiga 500 7mhz 512kb RAM (up to 9mb)
1987 Macintosh SE 8mhz 1mb RAM (up to 4mb)
1987 Macintosh II 16mhz 1mb RAM (up to 8mb)
1989 Intel 486 20mhz (up to 100mhz)
1992 Wolfenstien 3D

Really difficult to pin-point the average household PC specs in 1992. PCs were very expensive. Around '92, it was common to see PCs being sold with 25mhz and 4mb of ram (Apple doing something similar). I don't mention Commodore here because you're only interested in porting to a stock Amiga 500 / 1000.

A stock A500 is just a few kilobytes short of the minimum memory requirements for Wolf3D, so there is a chance it might have to lose a few things. A stock A1000 has only half the memory of the A500 so there is a high possibility of dismissing a lot more, unless you're prepared to make drastic changes to the way the map works, such as partitioning rooms so that when you activate a door, you teleport to the connected room in front of the door you just activated, after loading has finished swapping memory space for different objects, textures, animations etc.

When it comes to 3D, any Commodore-Amiga without an Akiko chip (the CD32) has no magic tricks that it can perform to outdo a PC of the same CPU speed. All the 3D calculations and placement of pixels are handled by the Motorola 68k processor.

Finding an example of Wolf3D running on a PC of 7mhz to get some idea of performance is difficult. Wolf3D was written to be compatible with a 286. While 286's started at 6mhz in 1982, by the time Wolf3D was written in 1992, it was common to find 286's running at speeds of 10mhz. Although the minimum system requirements for Wolf3D states a 286, a 386 was strongly recommended since those CPUs started at 12mhz and most 286 owners with a CPU speed of 10mhz reported having a "playable" experience of around ~15 frames per second when "full windowed".

If you search for the following videos on YouTube (sorry, links I post to YouTube don't appear on this forum) you will see the difference in performance within the range of 5 to 10mhz:

~5mhz "Wolfenstein 3D hacked to work on 8086/8088 CPU"
10mhz "Wolfenstein 3D on 10 MHz 286 computer"

So as you may see, the A-500/600/1000/2000 is only 2mhz more than the small windowed "slideshow" example but 3mhz less than the full windowed "playable" example.

Of course, to achieve a "full" port, you will need to shift the goal posts to that of the A-1200/3000/4000/CD32. But then we wouldn't see anything interesting (unless you like Wolfenstein 3D).

At the very least, this challenge provides the motivation to learn 2.5D/3D techniques to be used on the Amiga for other games.
LongLifeA1200 is offline  
Old 13 December 2017, 06:02   #20
Samurai_Crow
Total Chaos forever!
 
Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
Fast RAM would definitely be a requirement. A stock configuration won't do it.
Samurai_Crow is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
AmiWolf - new 68k Wolfenstein 3D port NovaCoder News 322 04 August 2023 12:21
Amiga 1000 parallel port desiv support.Hardware 10 21 January 2022 01:05
Wolfenstein 3D port for CD32 earok project.CD32 Conversion 151 11 July 2018 02:33
The Amiga 1000 could of done a game like Wolfenstein in 1985 - shock! AndNN Coders. Asm / Hardware 172 20 July 2017 17:48
AmiWolf - new AGA Wolfenstein 3D Port NovaCoder project.Amiga Game Factory 100 16 September 2013 01:44

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 23:48.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.10448 seconds with 14 queries