Dead Hackers Society
Other BBSes »
 
 

Sommarhack 2024

Silly Venture 2024 SE
Demoscene  Coding  CT60  Buy/sell

Atari demoscene BBS
 
Re: Doom floor texturing
Posted by: dml Jan,23.2013-13:00 


Yep thankfully this time I don't have any Atari related 'work commitments' so it can be purely for fun :)

The old Quake port was really just an excuse to play around with my Afterburner040 which I got while working on Apex @ BSS. It started out as the Quake C source as-is with a reworked c2p (which I think originally came from Johan Klockars for BM, and I messed around with). The framerate was terrible.

I studied the x86 asm version for a while and at some point around that time had picked up on the in-flight divide trick and I guessed the 040 would work the same way. So I wrote a new version of the texture mapping which used the same idea - have the FPU and the dependent tex address step out of phase by one span - and tried to optimise it far enough to get the framerate tolerable. I don't remember if I replaced the edge production code as well - I think that was also x86 asm in the final Quake. Would need to look again - probably just the filling routine.

The DSP version of the texture mapper was actually a bunch of different experiments but they all worked much like the 040 version - do perspective correction every 16 (or whatever) pixels and feed back the du/dv for the next span. So there is some host port activity every 16 pixels and the FPU is removed from the picture but the texture addressing is still CPU-side. Most of the experiments involved different ways to get optimal span lengths for a given line (most of which worked but didn't look nice).

I think any other changes to Quake were related to cache control flags and fastram. It was built natively on the Falcon with gcc 2.7 or 2.9 or thereabouts (it often crashed in the compile step).

So if there's a Quake in need of a texture mapper it might be worth grafting bits together but I expect these days it can be redone again and faster. I'll post a link to the original code soon.

BTW I'm surprised you noticed that port at all because almost nobody had an 040 at the time and CT60 swept them aside later on :-)

Will need to look at ClickBoom at some point, sounds interesting. I assume it still needs a FPU for the rest of the code or was somebody mad enough to go and convert all the code to fixed or funny point math :-)









[All messages in this thread]    [Start new thread]

Topic Posted by  Date 
Doom floor texturing dml Jan,21.2013-18:47
  Re: Doom floor texturing dml Jan,21.2013-18:48
    Re: Doom floor texturing dml Jan,21.2013-21:33
      Re: Doom floor texturing Defjam Jan,21.2013-21:44
        Re: Doom floor texturing dml Jan,21.2013-22:38
        Re: Doom floor texturing dml Jan,22.2013-10:48
      Re: Doom floor texturing mikro Jan,22.2013-11:03
        Re: Doom floor texturing dml Jan,22.2013-11:43
          Re: Doom floor texturing mikro Jan,22.2013-13:30
            Re: Doom floor texturing mikro Jan,22.2013-13:36
              Re: Doom floor texturing mikro Jan,22.2013-13:37
                Re: Doom floor texturing dml Jan,22.2013-15:18
                  Re: Doom floor texturing mikro Jan,22.2013-16:22
                    Re: Doom floor texturing dml Jan,23.2013-00:55
                      Re: Doom floor texturing mikro Jan,23.2013-10:12
                        Re: Doom floor texturing dml Jan,23.2013-13:00
                        Re: Doom floor texturing Calimero Jan,24.2013-03:14
                  Re: Doom floor texturing ggn Jan,22.2013-16:41
                  Re: Doom floor texturing ggn Jan,22.2013-16:42
                    Re: Doom floor texturing dml Jan,23.2013-01:07
            Re: Doom floor texturing dml Feb,03.2013-20:23
              Re: Doom floor texturing mikro Feb,03.2013-22:07
          Re: Doom floor texturing dml Jan,23.2013-18:01
            Re: Doom floor texturing mikro Jan,23.2013-23:39


Reply to this message
Name:
Topic:
Anti-troll code:

Message:

What's the anti-troll code?
That's your personal code to be able to add comments and messages on the dhs.nu site.
Don't have a code or forgot it? Fix it here.
© 1994-2024 Dead Hackers Society Contact: Anders Eriksson