Inferno #06
03 декабря 2004 |
|
Gamedev - the assembly of the game Wolfenstein 2004. Part 1.
Notebook on the assembly Wolfenstein 2004. In brackets - add to the reader. What was okvadracheno in a notebook, here in the curly brackets. Text in the slashes - strikeout. [P.1] 12xii03 WaterSun [one of chip'ov Moran'a] free = # 4200, ie player = # 6000 etc. Put menu Nikfe X-Color. Downloader universal. First look at the disk, then archive {Then to other disk archive}. How to load files> 32k (the menu HELP ...)??? Everything is OK, through the buffer. IMVEC = # 5b00 - bad! [Now] CHNMAP-512. SBPL [placement 5-sectoral WAV-player under the Sound Blaster, out of my game 2000] is not deposed, but it would be necessary. SCALTAB [table containing the height and texture all polustolbtsov screen] is populated LINES [the scan the walls for a new frame] is not through the INC H. .. DEC H [for the upper and lower walls of this in SCALTAB match], and by LDIR after SCAN. From p / n SCAN [n / n Scan cards in certain areas] are excluded Correction DXNOW, DYNOW [vector scanning. Now adjusted from the outside - to use SCAN to view monsters. But it appeared uncomfortable because of the variables of procedure. Sight monsters must be called an interrupt, and scanning walls - past the break, while the variable n / n lie in specific location] [Button] N [later thrown out] = nomonsters (+1 fps) [measured at map Entering the castle, the monsters of intelligence was not there] POOR MEDIUM HI-END 128k 256k 1M menus: {AY??? (FD!)} COVOX FB SD NO DIG turbo: ~ 100% ~ 140% = 200% video: small big big i-lace i-lace full [I-lace - only the calculation of each 2-nd line] interscan interscan full [Interscan - calculation of each 4-th column, rather than the 2 nd. Customize "Ray precision"] [side of the sign: "almost as expected", "quadrascan 13xii "," full with nokey "] [quadrascan - calculation of each 8-th column, as in DooM-B] speed: 80% (6 frm) 100% (5 frm) 120% (4 frm) {3d13 turboload 3d13} mono mono color walls / goods / monsters / Countmonsters = 10 = 20 = 40 / - Screenmsgs screenmsgs + digisound menu: load memory (packed) memory no handmove yes handmove yes handmove - Cached cached (detect?) - Moused moused (detect?) music: / off / on on on troops off on on [There were buttons I (current R) and H. V and T (the current M) already were] 13xii + Extrapolation quad [rascan] with the message. Quadrascan: extreme Four right extrapolated: A B C C = 2B-A. Overflow. Murder [overflow]: Porting Shear JB is the transfer of the subtraction. [This is about the height. Overflow in the texture coordinates fixed 16viii04] + Waiting. vacation. keys. Why RL sometimes slow? along with the music / A) lost the tail of the chain of monsters / / B) the wrong number of missiles / / A) systems. registers? FIXED / g) SCMONS0 wrong exit FIXED. Need a time out. Vistula in suicide FIXED (EI). Rocket blows strongly in the direction of where you look. 13xii: ADD-> SBC (KR). Spontaneously appears scull key FIXED: everywhere XOR A / OR D. FIXED divtab (instead of eight 1,2) [table size balls] When do bullets and guns can be seen, punch acts on the distance FIXED: / Push bc / CALL NZ, BOOH / Pop bc / => LD C, A Acts and disappears star (under her protection is reduced, as in Quake), IV, QD. Believes until 8bit numbers without attributes [a Quake IV, QD and the star player's field of view stained with each in his own way]. But flickers at vanishing. [Procedure] CROSS, AYOFF, / OUTME / [now] in the module. In a series RL - monster (RLMONS0) no Restore-Xia address HL FIXED. Total killing monsters with the correction of QD. You can beat the wounded [Previously it was impossible]. Interesting effect: if the shoot out PERFORATOR'a up corpses, the bullets spent more than if time to stop. Good! / With the murder PERFORATOR'om can hang / Looking scatter power hitting. When nevzyatii heal [because of the energy of> 100], the energy decreased to 100 FIXED. VASE gives 1% heal. VASE and TREAS [URE] make money (they are not visible). If you knock the protection, having a star image disappears, and if protection no longer exists, it is still displayed after vanishing Star FIXED. [Page 2] 14xii [On this day, the texture of monsters and things were finally placed on two pages. Zombieman - in PGSPR, others Monsters - in PRSPR2. Monsters were drawn at different times in the following order: zm, cacodemon, commander, herr major (by shiru otaku), dog (skonverchen from the original Wolfenstein), ogre, hitler (made out of herr major'a) The Notebook arrows indicate What phase corrected coordinates in the table MONSTAB, where the number of different format and therefore contain errors. Corrected 4i, 15xii, 20vii, 28vii, 14viii. Numbers mean, who for some X-coordinate lies in PGSPR2] shiru (lord) [herr major] attack: 0-16 move1: 17-25 move2: 36-53 scared: 54-71 cacodemon caco: 72-83 - attack? scared: 84-95 - norm? Simm [etrichny sprite] dying: 96-107 - scared? / troop: 108-119 - only the bottom 15xii lamer [commander] move1: 120-133 move2: 134-148 scared / attack: 149-162 dog move1: 163-174 move2: 175-185-low attack: 186-199 scared: 200-211 - low ogre = demon [demon sprite is not drawn. Ogre and demon differ from each other energy] move1: 212-226 move2: 227-240 scared: 241-255 6 monsters, demon (N16 [for numbering items in WolfEd]) change in the ogre (N19). Take time of QD, IV and 666 of the card OK 17xii. FIXED: was prizes, must be got. SETACNT [keep time] in the game loop? SPR [N12-13] N17 N18 N15 N14 N19 N16 zm shiru caco lamer dog ogre demon E = 70 E = 200 E = 250 E = 120 E = 50 E = 150 E = 250 0 3 6 9 CF 15 December 1918 1B 0 move1 / 2 G bigAM col <3 {move2} R gun {boom} | 6 back MegaH rifle table | 9 attack RL heal rock | in zm C wounded ammo IV Tree | F dying bull 666 {cell} | 12 troop roc vase50 $ QD - that is here 1915 - key chest500 $ | ^ ^ ^ <----- Logically here [to n / n COLLnM] (No more than 1) though ... let CLOSED. doors open forever! and keys decremented. ORG '($ +255) * 256 = ORG $ +255 / 256 <8 = DS .(-$) The dog does not fit in the bottom. part of the [texture] FIXED 17xii Hangs sometimes when I caused. of RL + QD FIXED Last to finish. page graphics + QD 15xii MONSTR [process unfolding in SCALTAB monsters and items by their coordinates]: in T10MONS [Table of monsters, which should thinking at the moment. A maximum of 10. Subsequently eliminated] all types of monsters, except for the corpses. Paced all. Addresses 4! While a dog can not kill, except from RL. 16xii To finish L3. When you call MONSTR important depth and content stack. Bullets fly across all subjects (low), except for a corpse Cacodemon'a. You can kill a dog, but to hand. Hand can not. 17xii When you add no overflow. The problem with dead bodies - they can fill up the passage! You can count the stones and the corpses of various (done) all the dead bodies passable. In 256 [k], you can add extra sprites. ???? Up-tuning. MAIN "WOLF *". At boot. ur. ATR = color, keys, shots, killed, got, timer = 0. At start-up SETATR = ATR. Lowered dog. Suffered PRSPR etc. in PP [source W3D? PP *. H] NoGet POP AF - or AF, or address of the curves. from p / n ADD100 POP BC - at the beginning of [n / n], it was POP DE, HL .. PUSH HL, BC PUSH DE: RET In RL now 0 cartridges. Zap [ertye] doors open forever, keeps track of keys. [Page 3] 18xii (John) should clean up the sight with RL and his hand too 19xii FIXED. Must [Chip Tracker] player with IM2, but it hangs. And EXX not identify. Wall [before starting WolfEd] revolve themselves [from vertical sprite is horizontal]. Files [transferred] to [Directive] DD: TILE, ICONS!, Removed ORG $-... WED [aka WolfEd]: in the catalog quick hands, Demon = 250 units., rights [yl] def [edelenie] mouse [was through the port # ff, now through the interrupt vector], FIXED bug: CS / Z - erase, [CS /] X - erase buffer FIXED 19xii, [CS /] C - to take [, V - insert]. CALL SCRLCONT: LD A, E! SEL_TRI: 0 - select, -1 - has already been allocated (Ex. Comp.) S-kill sel., D-beg.sel., F-end sel. CLICK1 - why 4 ADD A, A? 20xii It is hard to catch a break right in the main loop [digital player] - because may arise nedoinkrementirovannye address. Better define the number of cycles in a frame and after Ch. cycle to EI: JR $ [HALT] Time floats ... Removed from TOPO.CHI unnecessary sample - for HELP? MB This is the remix old Mouzon Moran'a? MAX SMPLS = # 9900 WaterSun: # BB00-# 4200 = # 7900 SMPLS. Nestab. SM [data bus on my pentagon]? I = 59 is not a slave. [Later revealed that the computer not guilty] was able to make a hanging interrupt, with warning, it just go c / o tail sample. But where more clicks? Perhaps because of the super-offset'ov. Fixed PLAYER10: do not ship on a blank sample. But the playability is not guaranteed Xia ... Hangs on WaterSun (!) If samples are 0,2,3 ,..., is bad. With "1" - better. Click on [position] # 18-1c. Sample 7 did not help against whistling in the "6". / 6 th place 1 is no longer whistling: - glitch on G-1F # 1 6070. / Whistle on any bad # FFXX! [Version player under Covox when calling interrupts] may confuse DE <> HL FIXED 23xii - just less gurgling. 22xii To finish menus [corrected in the picture NIKFI "Greetings" on "Options"] 23xii Glitch in the player - not decoded samples of the spoils # FFFE. Rulilku made in options [with digital music in the background]. SD play (Not tested). Was a difference of SD-COV = 33-8, was = 33-16. It is necessary to PLAYER'e and in the CHIP'e kill LD E, A: ... A, E of INCD2 / 4 (SDPLAY) FIXED 24xii 2i04 WED10 in one file (the font to 2 bytes in one). Trial boot # 3d13 - works. AYPLAY [player sound effects WOLF]: L-frequency, auto-channel B / C to ooh / aah ([selected channel], where there ENV), avtovkl. TONE (was not). Music MUZ # ... C, without the initia-tion (PT Util). Backbone for the SAVE / LOAD "WOLFSAV #" They d / b the same size (currently 1k: ENDMONS-GAMEDATA, plus the need to load muz, gfx and maps) and d [listed should] be written over. Necessary to provide DISK FULL [at freeoverwrittenfilesize or loadfilesize> BC]. + Selector type of company, music = SHARMY. Music & Graphics - loadable. The driver and the player (?) In the general address for all? and font too? Booting from CS = safe mode? firstrun mode? Time must flow into the game cycles everywhere. [Network] sharing the same of game cycles, then do not gb different rates. Options [should be] game speed music ON / OFF ... - OFF / SELECT (for level 1 to play) AY effects volume ... +0 window BIG / SMALL precision HI-MED-LOW high memory gfx ON / OFF title screens lace OFF / PLAIN / WAVE [gigascreen impossible - to screens diamond hatching] digital music [AY] / COV / SD / NONE - port ... loader # 3d13/turbo reinit disk model - disk A / B / C / D save reset to defaults (for def. type companies - 3 pcs) 3i Prizes are? FIXED. Kill level, muznr, gfxnr. In their place, the field "WLF" [then had to return back] TURBO SOUND for the effects? [Page 4] Save to DEMos packages such as exchange (of the same?) Each game series. Not scroll back, forward - to accelerate the frequency of games. cycles. In an exchange of only the full acc-e slot spaces! xy XY angle - at the moment of firing, ie, the end of games. cycle # Weapon [Cartridges] shot Y / N open Y / N {Energy armor-up of the monsters or after? armor type / keys QD, 666, IV} global time and others - in the title to the same table. MONSTRS? How to destroy unexploded balloons? Control only at the end cycle? PL1 PL2 ... ... game play --------- ---------- shot / my shot - CURMON (Mid) exchange / here is to know them! / Exchange - or LOAD / SAVE.Zdes same spetsknopki? his shot / shot monsters - a conflict? ^ --------- ----------- | processing of energy-energy treatment - or is interrupt-th | ... ... (Equivalent?) | (Only OPEN, FIRE, LOAD, SAVE 8i4) When you change the speed of games. cycle is necessary to change the speed MOVE [n / n Player movement] and MOVEKR [n / n of the ball / missile] or move balls smooth. Doors: controlled (rough) coordinates that change each cycle. For the map I use refinement counter + = 51 (So, for the second cycle for the [now there's no meter, and the table in frame +1 bytes s -1 at the end]) Cycle = 5FRM. A shot at it. FPS, LEG, QD, 666, IV, as amended [enenie] color screen, too. Ism [enenie] color screen in HARMME, and time in the head. on the strength of povrezhdeniya/16. Interlevel pictures should hide and at the same time improve Compression ... in WOLF1 without zaXORivaniya, and then you can invent. AY digiplayer buggy: (RECODE and so did not need ... Because C48 <> C48A FIXED 3i4. First UNILOAD'er: a resident of the 2 operations: INI and LOAD. Theoretically, you can use the Extended Features of floors exchange screens UNILOAD then be able to do disk operations from any memory without a resident. 4i Must INIC [ializa] function / with a black screen / - is not necessary, there is 1k buffer. Reading directory RAR and bring names to the 8.1. Depaker through the buffer 1k in the same page - then do not need paklen. In handle only one extra byte - a position in sector (instead of secsz, during a bit7 in sect #). Ie missing 14 bytes. If you prefer, you can load files and c / o buffer 1k, then there will be blending east. part of the sector (but several. slowly - but such File small => unnoticed). HISCORE, SETUP and shipping should be keep c / o the same p / n - fixedsize, overwrite. HISCORE encrypted and not text? SETUP in the end achieves Enter'ami to 1k? You can limit the catalog only those files to e- appear in the SETUP (can not call them by name, but the code in the SETUP). Killed mashing # 5b00 in INI. AYPLAY - [more soon] circumcision no sound on VOL = 0, and by VOL = 6. 6i N / n we download files level. If you enter the SAVE / LOAD OFF. Music and put IMER = EI: RET. 7i Address monster, if it is not under the gun, = # 00XX. Considered shots'killed, late in the game - totalsh and totalki, and TM. totalgo and totalti, shown Xia time. [On the button C] show-Xia total time, in level - without the time level. All files are uppercase [because that lower case letters in the font - Russian]. Why in the MSG include PGICO? Why hang # 3d13 in the game? IM1, EI, BASIC almost clean (except # 5E00), stack = # 5FF1 ... IY shot down! [P.5] Balls disappear in the summer? Messages are not overwritten - are a continuous flow even when blacked-out screen (top 1 / 3 is not clean). TCHREC [one of the two tables for the construction of a large table, chunks], MAKCHTB [n / n construction of the table] is not overwritten. [Do] shipment. While not preserved, Xia options doors and balls - they must still null at boot. Level FIXED. Not pererisuy-Xia gun FIXED. Why no posts, I have NO FILE? FIXED. When loading is verified overflow-e-length! [In BC indicate max. length] When the exchange is not need to pass parameters to bots - they each PC can drive independently. It is only necessary to combine the RND-generators (not Liabilities .= 0). Had [in the interrupt handler to remember] PUSH: POP [Contents] (CURPG) [included current page is updated n / n OUTME], because F66 [6x6 font for numbers] is now in the page. Killed 7 bytes at the end of the 4 th and 8 th-th scaling procedures [of those which are generated in the # 0000 or # 6000]. PGLOAD [page disk driver] = PGICO [Home weapon sprites and icons]. Why close the door again sealed? At the opening of a step it was not. INC A JR Z, NOclEX here is DEC A / FIXED 8i4 ... # BF ...-# BF / The doors are closed tightly (killed JR Z. .. in OPEN) 8i4. In the SAVE / LOAD at the end of DI: IM 2, but _do_ this NOKEY [n / n waiting release the keys] 8i4. If a locked door in the open, but open the other door, locked up close! (A key anymore) FIXED 8i4 (BIT 5, A: JR Z: XOR A in OPEN2). After loading the screen flickers: (but did not seem to reset ... fold may, if LOAD with unfilled SCALTAB. FIXED 8i4: SCALTAB in shipping, which was originally in it PGWALL. Back font for numbers in the PRS [n / n print print 8x8, deja on address FONT] (in [n / n] FPS [enabled] PGICO [where is this print]). If the conflict in the IMER, then either delete it never has been, or in lieu of removal - to set bits distance (you can with cleaning at the end frame - pretty hard - you can not), or the construction of Table. vimimyh monsters in the IMER (the rate at ~ 10FPS worse will not, but problems ...). Pts. convenient RES 7, Y - in SCMONS0 [cycle enumeration monsters to display and control their counters injury / death] itself is filtered, but in circles - it is necessary 9i4 artificially until the prairie st. [Znakomestnye] 4.7 erases the line together with the bottom of the screen when LOAD - there are only 0-3 9i4. QD, IV, 666 disappear ugly (/ # 3D00 does not contain nine zeros?? / No was inc. PGICO) FIXED 9i4. At 666 take protection of washing asterisk FIXED 9i4. When SAVE / LOAD / / EXIT / will not turn off the cache FIXED 9i4 n / n IM1, then IM2. TRUP [out of the game - the defeat] is called after the frame on HEAL = 0 9i4. Monsters have handled the case. QD did not work on monsters FIXED 9i4 and the player also FIXED 9i4. Once when the QD during the suicide to the lower RL. half of the screen in the middle was a piece of levoty: (Another levota slipped under boot - to the top. part. 10i There is no SP in COLLIS and TRUP. Made handling of conflicts in the IMER - rubber goods:) yx, YX - to interrupt, I, LBC / LDE / LHL - for OFF-INT. 24i FPS is correct (for after. Several. Seconds) - kopyatsya NFPS and the AFPS, when overflow - divided in half. "DISK OVERFLOW" like to be displayed. We need to accelerate in derar UNILD (FIXED 25i) and fixed (not constructed an empty tree) (FIXED 25i). Quickened scan when searching for collisions. Still 9.8fps <10fps (I [ray precision] = 3, V [video size] = 16) [P.6] 25i CURPG = # 5B5C. MONSTERS [allocation table items and enemies - 8 bytes per piece] at div8 <3 (ORG - $ '7) [for walking on command table INC L]. Still <10fps. Does not see the 2-nd file Archive - FIXED. Random motion monsters. But sometimes conflict Comp hangs% (. Why? page is not to blame (PGMAIN). Monsters honestly removed installing RES 7, Y (it is checked). Made N10MON [the current number of monsters in the now-defunct Table T10MONS] = 0 when the loading level. / Excuse LD (IX), A, but Why? or / DB "---- it again on TAB <> 8! [with TAB <> 8 and Closure quotes alasm compile extra bytes RST # 38] FIXED. Absolutely synchronous motion (options: 4frm, 5,6). Should not move the bodies, etc. Only FASE = 0! But to think (See back) for FASE = 6, and shoot through the time when FASE = 9. From FASE = 0 should periodically go to the FASE = 9. Do not shoot have to go around for the player and attack there. 27i It is necessary after each call to check on MOVKR explosion; it and there. 28i Table. T10MONS not be OFFINT - you can not do demos! FIXED 1ii 31i Correct overlapping objects of different heights. The site is also now be seen only if it can be seen mid-(speed up). INKEY [Poll keys movement], CHVIDE [change screen size for kn.V] - in the module. Only reason there is little FPS: (It should be an objective timedemo. In the standing position (no keys, and rotations) picture constructed with QSC [ray precision] = 1. Must otklyuchabelno (FIXED 18ii Button B [when building games removed]). More linear movement of enemies. Proc. RND = RAND/256. RAND = RAND * 17 20 981 [number taken from the lamp]. At the start of the level of (Not LOAD): = 0. 1ii FIXED T10MONS (table is destroyed). Gone, not even a aims. Were killed (CURMON +2) = 0 before SCMONS0 FIXED. Can not record a demo for CURMON: (We'll have him, and distance e in the (Mid) store too. 3ii Duplex for AY would be faster? Hardly ... 6ii In UNILOAD should be WOLFNT, {FONT66}, INKEY, {SETIM}, SHUTAY. Availability CACHE and K. MOUSE testing [should!] Startup menu Games! Quit to: CACHE pg0 -> 0 CACHE pg0 -> # 66 CACHE pg1 -> 0 CACHE pg1 -> # 66 GLUK (through the CACHE. Can we not?) CACHE: 1910: IN A, (# 7b) for inc. 128pg1 and DOS (and come to QC2.82 - where the top # 38). NOCACHE: OUT (C), A / at the beginning of DOS / or the end (# 3FD1 = OUTI). Then the transition on the RST # 38 [who gb lot at the end of page Gluk'a and which contains a command Gluk Service] RET (SP = ROM). Naturally, DI. And how to get into DOS? Or if inc. pg1 enter into # 3D44 (RET). [Actually, only with a knowledge of the contents of # 3dxx in page Gluk Service. There's a certain place to be RET (Conditional or unconditional)] 128 MENU 48 BASIC / 48k {/ 128k} 48 BASIC / MAX ASM # 51 STS # 57 DOS / 48k {/ 128k} DOS / MAX {Quick # 17?} - Saved in TOPMEM or should not? boot 7ii Hit [the monster], and attempt a shot RL [monster] to count procedure SCAN in the direction of the monster-> player (step is equal to this vector / length (sqrt (dx ¤ + dy ¤)) * k. or divide by 2, until it reaches the range). What is the radius of contact of the ball to the wall? should be <128. Seem, generally at the wall. 16ii In PLAUTO2 [digital player] speed detection PC to 8 interrupts. Somehow the numbers in Table. Frequency turned out not calculated: ( 18ii The monster must turn when he squared / clipping / conflicts of X, Y {+ -1}. Then there is no need to once again sort out. OK, but until the cycle HODMONS. How would still speed up the strumming? A. Scanning; B. move monsters; B. collision. The cycle of conflict now without IX! MONSTERS = 7.35fps, NOMONS> 9fps with music. Wherever possible, RET, and JR, JP at the optimum, are avoided rare action ... 10fps = 350.000 t / frame (music ~ 17500 t = 5%) Button B ON-OFF refinement quadrascan / interscan for FPS ... If neberuschiysya object lies on the taker, then in half cases can take. [Page 7] So, for a shot (ON-INT): SCAN works with respect to: DXNOW (Dx = + -. 15 [bit]), DYNOW (dy = + -. 15), LBC +2 (y = 16.), LDE +1 (X = 16.) And LHL +1 (adres!) [and the flag Z]. Result: D = scale (here do we need it), C = texX, E = ID, B = pg. The result should be compared in the D with the distance to the target. Why delete seemingly unnecessary commands in the new CHIP player'e spoil samples? FIXED 19ii. Do not put 0 in the frequency of "R -". Now played without interruption (with a per-Stu optimization ON-INT and under the OFF-INT). Error in speed is more tolerant: -1.5% +. 28ii Translated Soars in MAIN # C6 [before some sources on my drives were set to # C6, others - at # 46. Now everywhere # C6]. When im2 player plays COVOX 7bit [this is not true 7bit: Feeds are added in pairs, divided by 2, then again and sklydyvayutsya divided by 2], it sounds better. 2iii When DI tried 7bit - a little better, but on the verge of hearing: ( [A sampling frequency less]
Other articles:
Similar articles:
В этот день... 21 November