From 9599894a4b2f79672fc3e2ca5a93ef9c7d457c08 Mon Sep 17 00:00:00 2001 From: Vladimir Menshakov Date: Wed, 15 Jun 2011 17:53:45 +0400 Subject: DREAMWEB: Added original sources. Released with permission from Neil Dodwell. --- devtools/tasmrecover/dreamweb/vars.asm | 564 +++++++++++++++++++++++++++++++++ 1 file changed, 564 insertions(+) create mode 100644 devtools/tasmrecover/dreamweb/vars.asm (limited to 'devtools/tasmrecover/dreamweb/vars.asm') diff --git a/devtools/tasmrecover/dreamweb/vars.asm b/devtools/tasmrecover/dreamweb/vars.asm new file mode 100644 index 0000000000..b72f180d74 --- /dev/null +++ b/devtools/tasmrecover/dreamweb/vars.asm @@ -0,0 +1,564 @@ +;Copyright (c) 1990-2011 by Neil Dodwell +;Released with permission from Neil Dodwell under GPLv2 +;See LICENSE file for full license text +;---------------------------------------------------Equates and definitions---- + +Inputport equ 63h +Mapwidth equ 66 ;132/2 +Maplength equ 60 ;6/2 +Tablesize equ 32 ;size of each entry in spritetable +Itempicsize equ 44 ;size of inventory slots +Opsy equ 52 +Opsx equ 60 +Inventx equ 80 +Inventy equ 58 +Zoomx equ 8 +Zoomy equ 132 +Keypadx equ 36+112 +Keypady equ 72 +Diaryx equ 68+24 +Diaryy equ 48+12 +Symbolx equ 64 +Symboly equ 56 +Menux equ 80+40 +Menuy equ 60 + + if foreign +Undertextsizex equ 228 +Undertextsizey equ 13 +Undertimedysize equ 30 + else +Undertextsizex equ 180 +Undertextsizey equ 10 +Undertimedysize equ 24 + endif + +Numchanges equ 250 + +Textunder equ 0 ;offsets for items in buffer segment +Openinvlist equ textunder+(undertextsizex*undertextsizey) +Ryaninvlist equ openinvlist+32 +Pointerback equ ryaninvlist+60 +Mapflags equ pointerback+(32*32) +Startpal equ mapflags+(11*10*3) +Endpal equ startpal+768 +Maingamepal equ endpal+768 +Spritetable equ maingamepal+768 +Setlist equ spritetable+(32*tablesize) +Freelist equ setlist+(128*5) +Exlist equ freelist+(80*5) +Peoplelist equ exlist+(100*5) +Zoomspace equ peoplelist+(12*5) +Printedlist equ zoomspace+(46*40) +Listofchanges equ printedlist+(5*80) +Undertimedtext equ listofchanges+(numchanges*4) +Rainlist equ undertimedtext+(256*undertimedysize) +Initialreelrouts equ rainlist+(6*64) +Initialvars equ initialreelrouts+lenofreelrouts +Lengthofbuffer equ initialvars+lengthofvars + +Flags equ 0 ;offsets of items in backdrop segment +Blocks equ flags+192 +Map equ 0 +Lengthofmap equ map+(mapwidth*maplength) + +Intextdat equ 0 +Intext equ intextdat+(38*2) +Blocktextdat equ 0 +Blocktext equ blocktextdat+(98*2) +Settextdat equ 0 +Settext equ settextdat+(130*2) +Freetextdat equ 0 +Freetext equ freetextdat+(82*2) + +Numexobjects equ 114 +Exframeslen equ 30000 +Extextlen equ 18000 + +Exframedata equ 0 +Exframes equ exframedata+2080 +Exdata equ exframes+exframeslen +Extextdat equ exdata+(16*numexobjects) +Extext equ extextdat+((numexobjects+2)*2) +Lengthofextra equ extext+extextlen + +Framedata equ 0 +Frames equ framedata+2080 + +Frframedata equ 0 +Frframes equ frframedata+2080 + +Personframes equ 0 +Persontxtdat equ personframes+24 +Persontext equ persontxtdat+(1026*2) + +Pathdata equ 0 +Reellist equ pathdata+(36*144) + +Lenofmapstore equ 22*8*20*8 +Maplen equ mapwidth*maplength +Freedatlen equ 16*80 +Setdatlen equ 64*128 +Textstart equ 66*2 + +;-----------------------------------------------------------------Variables---- + + +startvars db 0 +progresspoints db 0 +watchon db 0 +shadeson db 0 +secondcount db 0 +minutecount db 30 +hourcount db 19 +zoomon db 1 +location db 0 +expos db 0 +exframepos dw 0 +extextpos dw 0 +card1money dw 0 +listpos dw 0 +ryanpage db 0 + + +watchingtime dw 0 +reeltowatch dw -1 ;reel plays from here in mode 0 +endwatchreel dw 0 ;and stops here. Mode set to 1 +speedcount db 0 +watchspeed db 0 +reeltohold dw -1 ;if mode is 1 hold on this reel +endofholdreel dw -1 ;if mode is 2 then play to end of +watchmode db -1 ;hold reel. Set mode back to -1 +destafterhold db 0 ;set walking destination. + +newsitem db 0 + +liftflag db 0 +liftpath db 0 +lockstatus db 1 +doorpath db 0 +counttoopen db 0 +counttoclose db 0 +rockstardead db 0 +generaldead db 0 +sartaindead db 0 +aidedead db 0 +beenmugged db 0 + +gunpassflag db 0 +canmovealtar db 0 +talkedtoattendant db 0 +talkedtosparky db 0 +talkedtoboss db 0 +talkedtorecep db 0 +cardpassflag db 0 +madmanflag db 0 +keeperflag db 0 +lasttrigger db 0 +mandead db 0 +seed db 1,2,3 +needtotravel db 0 +throughdoor db 0 +newobs db 0 +ryanon db 255 +combatcount db 0 +lastweapon db -1 + +dreamnumber db 0 +roomafterdream db 0 + +shakecounter db 48 + +lengthofvars equ $-startvars + + +speechcount db 0 + +charshift dw 0 +kerning db 0 + +brightness db 0 + +roomloaded db 0 + +didzoom db 0 + +linespacing dw 10 +textaddressx dw 13 +textaddressy dw 182 ;address on screen for text +textlen db 0 +lastxpos dw 0 + +icontop dw 0 +iconleft dw 0 +itemframe db 0 +itemtotran db 0 +roomad dw 0 +oldsubject dw 0 + +withobject db 0 +withtype db 0 + +lookcounter dw 0 + +command db 0 +commandtype db 0 +oldcommandtype db 0 +objecttype db 0 +getback db 0 +invopen db 0 +mainmode db 0 +pickup db 0 +lastinvpos db 0 +examagain db 0 +newtextline db 0 + +openedob db 0 +openedtype db 0 + +oldmapadx dw 0 +oldmapady dw 0 +mapadx dw 0 +mapady dw 0 +mapoffsetx dw 104 +mapoffsety dw 38 + +mapxstart dw 0 +mapystart dw 0 +mapxsize db 0 +mapysize db 0 + +havedoneobs db 0 +manisoffscreen db 0 +rainspace db 0 + +facing db 0 +leavedirection db 0 +turntoface db 0 +turndirection db 0 + +maintimer dw 0 +introcount db 0 +arrowad dw 0 +currentkey db 0 +oldkey db 0 +useddirection db 0 +currentkey2 db 0 + +timercount db 0 +oldtimercount db 0 + +mapx db 0 +mapy db 0 +newscreen db 0 +ryanx db 0 +ryany db 0 +lastflag db 0 +lastflagex db 0 +flagx db 0 +flagy db 0 + +currentex db 0 +currentfree db 0 +currentframe dw 0 +framesad dw 0 +dataad dw 0 +frsegment dw 0 +objectx dw 0 +objecty dw 0 +offsetx dw 0 +offsety dw 0 +savesize dw 0 +savesource dw 0 +savex db 0 +savey db 0 +currentob db 0 +priority db 0 + +destpos db 0 + +reallocation db 0 ;----------;some rooms have more than one +roomnum db 0 ;place in the Roomdata list, to + ;account for different start points +nowinnewroom db 0 ;this variable holds the rooms +resetmanxy db 0 ;real value - ie:which file it's in +newlocation db -1 ;if set then room is loaded at end of watch mode, or straight away if not in watch mode +autolocation db -1 +mustload db 0 +answered db 0 +saidno db 0 + +doorcheck1 db 0 +doorcheck2 db 0 +doorcheck3 db 0 +doorcheck4 db 0 + +mousex dw 0 +mousey dw 0 +mousebutton dw 0 +mousebutton1 dw 0 +mousebutton2 dw 0 +mousebutton3 dw 0 +mousebutton4 dw 0 +oldbutton dw 0 +oldx dw 0 +oldy dw 0 +lastbutton dw 0 +oldpointerx dw 0 +oldpointery dw 0 +delherex dw 0 +delherey dw 0 +pointerxs db 32 +pointerys db 32 +delxs db 0 +delys db 0 +pointerframe db 0 +pointerpower db 0 +auxpointerframe db 0 +pointermode db 0 +pointerspeed db 0 +pointercount db 0 +inmaparea db 0 + +reelpointer dw 0 +slotdata db 0 +thisslot db 0 +slotflags db 0 +takeoff dw 0 + +talkmode db 0 +talkpos db 0 +character db 0 +persondata dw 0 +talknum db 0 +numberinroom db 0 + +currentcel db 0 +oldselection db 0 + +stopwalking db 0 + +mouseon db 0 +played dw 0 +timer1 db 0 +timer2 db 0 +timer3 db 0 +wholetimer dw 0 +timer1to db 0 +timer2to db 0 +timer3to db 0 + +watchdump db 0 + +currentset dw 0 + +logonum db 0 +oldlogonum db 0 +newlogonum db 0 +netseg dw 0 +netpoint dw 0 +keynum db 0 +cursorstate db 0 + +pressed db 0 +presspointer dw 0 +graphicpress db 0 +presscount db 0 +keypadax dw 0 +keypadcx dw 0 +lightcount db 0 +folderpage db 0 +diarypage db 0 +menucount db 0 +symboltopx db 0 +symboltopnum db 0 +symboltopdir db 0 +symbolbotx db 0 +symbolbotnum db 0 +symbolbotdir db 0 + +symboltolight db 0 +symbol1 db 0 +symbol2 db 0 +symbol3 db 0 +symbolnum db 0 +dumpx dw 0 +dumpy dw 0 + +walkandexam db 0 +walkexamtype db 0 +walkexamnum db 0 + +cursloc dw 0 +curslocx dw 0 +curslocy dw 0 +curpos dw 0 +monadx dw 0 +monady dw 0 +gotfrom dw 0 + +monsource dw 0 +numtodo dw 0 + +timecount dw 0 +counttotimed dw 0 +timedseg dw 0 +timedoffset dw 0 +timedy db 0 +timedx db 0 +needtodumptimed db 0 + +;recordpos dw 0 +;rechandle dw 0 +handle dw 0 + +loadingorsave db 0 ;1 if load 2 if save +currentslot db 0 +cursorpos db 0 + +colourpos db 0 +fadedirection db 0 +numtofade db 0 +fadecount db 0 +addtogreen db 0 +addtored db 0 +addtoblue db 0 + + +lastsoundreel dw 0 + +soundbuffer dw 0 +soundbufferad dw 0 +soundbufferpage db 0 +soundtimes db 0 +needsoundbuff db 0 + +oldint9seg dw -1 +oldint9add dw -1 +oldint8seg dw -1 +oldint8add dw -1 +oldsoundintseg dw 0 +oldsoundintadd dw 0 +soundbaseadd dw 0 +dsp_status dw 0 +dsp_write dw 0 +dmaaddress db 0 +soundint db 5 +sounddmachannel db 1 +sampleplaying db 255 +testresult db 0 +currentirq db 0 +speechloaded db 0 +speechlength dw 0 +volume db 0 +volumeto db 0 +volumedirection db 0 +volumecount db 0 + +playblock db 0 + +wongame db 0 + +lasthardkey db 0 +bufferin dw 0 +bufferout dw 0 + +extras dw 0 ;for allocated memory +workspace dw 0 ;allocated mem for screen buffer +mapstore dw 0 ;allocated mem for copy of room +charset1 dw 0 ;allocated mem for normal charset +tempcharset dw 0 ;monitor char set +icons1 dw 0 ;allocated mem for on screen stuff +icons2 dw 0 +buffers dw 0 ;allocated mem for buffers +mainsprites dw 0 ;allocated mem for Ryan sprites +backdrop dw 0 +mapdata dw 0 + +sounddata dw 0 +sounddata2 dw 0 + +recordspace dw 0 + +freedat dw 0 +setdat dw 0 + +reel1 dw -1 +reel2 dw -1 +reel3 dw -1 +roomdesc dw -1 +freedesc dw -1 +setdesc dw -1 +blockdesc dw -1 +setframes dw -1 +freeframes dw -1 +people dw -1 +reels dw -1 +commandtext dw -1 +puzzletext dw -1 +traveltext dw -1 +tempgraphics dw -1 +tempgraphics2 dw -1 +tempgraphics3 dw -1 +tempsprites dw -1 + +textfile1 dw -1 +textfile2 dw -1 +textfile3 dw -1 + +blinkframe db 23 +blinkcount db 0 + + +reasseschanges db 0 ; if it's a 1 then obname will assume that +pointerspath db 0 ;the command has changed. +manspath db 0 ;ie. from "walk to" to "Examine" +pointerfirstpath db 0 +finaldest db 0 +destination db 0 +linestartx dw 0 +linestarty dw 0 +lineendx dw 0 +lineendy dw 0 +increment1 dw 0 +increment2 dw 0 +lineroutine db 0 +linepointer db 0 +linedirection db 0 +linelength db 0 + +liftsoundcount db 0 + +emmhandle dw 0 +emmpageframe dw 0 +emmhardwarepage db 0 + +ch0emmpage dw 0 +ch0offset dw 0 +ch0blockstocopy dw 0 + +ch0playing db 0 +ch0repeat db 0 +ch0oldemmpage dw 0 +ch0oldoffset dw 0 +ch0oldblockstocopy dw 0 + +ch1playing db 255 +ch1emmpage dw 0 +ch1offset dw 0 +ch1blockstocopy dw 0 +ch1blocksplayed dw 0 + +soundbufferwrite dw 0 + +soundemmpage dw 0 +speechemmpage dw 0 + +currentsample db -1 +roomssample db 0 + +gameerror db 0 + +howmuchalloc dw 0 + + \ No newline at end of file -- cgit v1.2.3