BEHIND THE SCENES IN UNTIMA IX:


From phlphtn Tue Oct 31 21:04:00 1995
From: Phil Photon
X-Mailer: SCO System V Mail (version 3.2)
To: garrett@armory.com
Subject: Re: It
Date: Tue, 31 Oct 95 21:03:58 PST
Message-ID: <9510312103.aa27840@deepthought.armory.com>
Status: R

Guess you didn't get my last 'to'. What you want to do is to stickk al global variables into header files, all function PROTOTYPES into header files, and all function CODE into EITHER 'main.cpp' or whatever has your main function in it, OR another func.cpp file or something that you compile to an object and link in by telling the linker to use it.

Guess what...

Ultimate Overkill is coming along after all! It will be Super-VGA, and my digital sound-FX automixer is working great! I'm using a type of LZWS compression for the graphics... works pretty good! (Wierd as hell, though, and not all that fast...) Glad to hear Untima is almost done! Whatcha going to do with it?

Well, happy holloweenie... I'd write more, but I'm tired...


From: Jello Biafra <garrett@armory.com>
X-Mailer: SCO System V Mail (version 3.2)
To: phlphtn@armory.com
Subject: Re: It
Cc: garrett@armory.com
Date: Tue, 31 Oct 95 21:45:43 PST
Message-ID: <9510312145.aa00808@deepthought.armory.com>
Status: R

What am I going to do with it? DIstribute it to everyone in the universe for free, of course! Say, wanna be a “beta tester”? It has been known to have directory problems loading and saving files.

Oh and btw I have been organizing things the way you said in yer email, with the exception of putting the global variables in the implementation “.c””.cpp” files instead of the “.h” files. Oh boy oh boy, I’m even using “#define” and “#ifdef” for some conditonal debugger compiling! :)

My project looks lke this:

[] Untima0 [.ide]
  () Untima9 [.exe]
    <> Untima9 [.c]
      <> Untima9 [.h]
      <> u0talkie [.c]
        <> u0talkie [.h]
      <> u0gencon [.c]
        <> u0gencon [.h]
        <> u0data [.c]
        <> u0messag [.c]
          <> u0messag [.h]
        <> u0disply [.c]
          <> u0disply [.h]
          <> u0filing [.c]
            <> u0filing [.h]
  () Editor [.exe]
    <> Editor [.c]
      <> Editor [.h]
      <> u0gencon [.c]
  () Support [.exe]
    <> Support [.c]
      <> Support [.h]

Editor.exe is a map editor/object placer etc etc,
Support.exe is a conglomeration of utilities, which I use to compress pictures, run histograms, eliminate little-used colors, etc. I’m working on the introduction right now. What I’m most proud of recently is the message printer code, which automatically moves words down to the next line so they don’t get broken in wraparound. Wheeeeeee!! How're yer classes?
WHERE'S MY SCRIPT?


From: Jello Biafra <garrett@armory.com>
X-Mailer: SCO System V Mail (version 3.2)
To: mheck@oboe.aix.calpoly.edu
Subject: Heyh ehyeheyh
Cc: garrett@armory.com
Date: Tue, 7 Nov 95 19:01:07 PST
Message-ID: <9511071901.aa12550@deepthought.armory.com>
Status: R

I’m havin trouble here. Video card incompatibilities be damned.... Whenever I playtest my game on Skot’s computer up the hill, a problem manifests. Skot has a package-deal 486 with four standard 16-bit slots on a funky ribbon cable so they can fit in the half-height case. Really cheesy job, if you ask me, but the price was right for him I suppose. It’s a Cyrix 66Mhz DX2, the sound card is “sb pro compatible(yank)”, the modem is a really generic, yucky 14.4 with some funky ass non-hayes setup strings, and the video card I can’t even identify save the fact that it sucks.

ANyhow,
I used to display the title page and game screen by calling the “set dac reg” interrupt one at a time for each color on the pallette. This was done with a loop, coded in C, and compiled with all optimizations on. This method was hideously slow, and it took about five seconds to set all the registers in this manner on my computer. It takes less time on skot’s, though this is a mixed blessing as it seems to only get half of them set- it almost appears to skip every other dac register.

My guess is that my program is calling the interrupt too fast for his video card to catch them all, and instead of servicing them properly it’s somewhere out of the priority loop and is grabbing what few it can. NOw, looking through my big-ass interrupt list I devised a much better way to get the job done. Now I call the “set block of dac regs” interrupt, and specify all 256, and the seg/offset of the array of colors. Though I had to write an asm routine to set the ES register manually (it was either that or link in ANOTHER damned REGS struct (sregs) and probably eat up even more k at compile time), it compiles with no worries and executes JUST FINE on my computer. (Though there is a problem with the border color being set to white, which I can fix). I haven’t had a chance to test this other interrupt scheme out on Skot’s computer, but I would like you to grab the .zip in my directory and try it out on yours. The introduction is missing two screens, the “about the author” option isn’t in, the onsters don’t move, and %80 of the plot isn’t intact,... But it frickin’ works.

Be sure to talk to “Lord Finnish” if/when you get there. You can attack the monsters but their defenses aren’t set right so they’ll be hard to kill.

Just unpack the files into one directory, change to that directory (use ‘run’ from win-frigging-dows or just a dos prompt), and run the executable. If it messes up it won’t be able to tell, so tell me about it instead. The “s” key actually DOES save the game, even though it ALWAYS reports “error!” whether or not the save was successful. After you’ve had fun poking around, try killing a sign or a grave or something and saving the game, and seeing what happens when you run the pogram again. Oh yeah, that’s another thing- hit ‘q’ to quit the bugger. Okay! Now I’m gonna zip this peice o tripe up! log your ass in to deeptht through ftp or whatnot, change to /u/garrett/public, and it should be there by the time your ass gets this letter.

I’m pissed off due to bugs.

(insert noun)-be damned.
-G'roteEE

It's plot
It's plooot
Its big and it's not very good!
It's plot
It's plooot
It doesn't go where it should!


Back to Garote's Main Page.