/[projet1]/users/chema/skooldaze/Skool.ncb
Defence Force logotype

Contents of /users/chema/skooldaze/Skool.ncb

Parent Directory Parent Directory | Revision Log Revision Log


Revision 502 - (show annotations)
Mon May 23 19:02:32 2011 UTC (9 years ago) by Chema
File MIME type: application/octet-stream
File size: 222208 byte(s)


1 Microsoft C/C++ program database 2.00
2 JG @  ޟ,0 M=/names/ncb/targetinfo/ncb/moduleinfo/ncb/storeinfo/ncb/iinstdefs/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\Main.c/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\engine.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\data.s/ncb/target/Skool - Win32 Debug/ncb/target/Skool - Win32 Release/ncb/versioninfo/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\params.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\graphics.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\auxiliar.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\charset.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\eric.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\init.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\keyboard.s&w qa v 68W
3 'E = +ӓ , - . / 0l 1f 2m 36 4 5{G 6PQCs 7/6 8J 9
4   :gg ;/ <Z[ =   > ?[x T'8,HXhx@\D|4P(8K-.345<=>;?EGHM9:PQRS7\68DFVZd`pqrxyz{|klmnwtuv}~_aLNOTUWXY[^#$%& '()*,/012@J]!"Abghijfos+eg )*~E *+D, ()E !#$D " D #RE $ %QSA & '=>ǥ (;<P )<= *?@Ǯ +:;2 ,>?J -C .o /TUE 0./q 1!"+r 2 !e 3 4  5z 6EF z 7]^. 8)+(z 9&'A :k2 ;O <++/ = >jjo     B  B 6 =E   j FFey ^^  mm
5 Q= = <= bbA   
6 fg  44U=n < 5 =
7 t QTs  ]]5 ggC ==o iky ;;q <@+r (*/ 0 ((< !hh$7 "
8 '= #  Ar $B %qqnG &<< ' (qqX ){: *BFq +QVB ,ADy -ئ . /&B 0'(h 1,, 2 311M5h 4v; 5s 6EI  7  8\\ t 9LN :.. ; <s =  BFB  B A  IL5  A  22> $$C
9 %%H &&M ''R ((W ))\ ** ++BABBBB33C 44H 55M 66R 77W 88\ 99 :: l= ! "I #B-AB,hB3yg ,
10 V9 -e .NVy /ACGr 0ADI 1 &?= 2B===A[===yoAtuM
11 ovM
12 Ps'tW>A1=BvM
13 v>qy!tus\utKNzy-q==ByAt } }+yxyy[^  t p  99 99 n ?
14 ^azw Gj cq   55pm # PPb= 45 66B 8 }  /   cf o 66 U 66 fh :M O VW !55l "/ #55G $I %% & xsws<b!<$\\aU??..[}aU..402V9j 5 6gmK%V 7y 8ACG 9ADIn : &?=. ;B===AC[=== >LOy ?Lj @{{ Al== B C3y Dcee EV9 FPQ3n Gvv\ H{| IK% Jy K8:b LG M8;Id N?= OB=C==AC[==^=AtuM
15 ovM
16 VxdFW>A1=BM
17 F#i
18 y3u\9, \ut$zk&q==vAtړ8 } }yC= } }yC= } }yC= ' $ئ ( )&B *IKh +::d , -??M5 .s /SW  0jj t 1Z\. 2 3<< 4 5EP 6 7KNy 8y= 9\^Lj : ;l= < =##3y >qs ,B  B 1 VVj( @@ ~ QQ[a N x A_
19  /91 NN Y   ,6l 
20 e Om 2 prA k 8 KN rs>0 \9a NN7s FHLjd % ww 8 HHV9 NN9a NN  66B(~``A39]`BqN"2B68F7l8p98p9p9j hUVp i jm kgk' lk m,| nEGC oLD p| q% rC sW t\] u_`< v wYZ~ xgh yPP{ z/l {Tm |b }` B#  B j` 
21 t XXA c HI2  
22 IJ rs* 78| @A( e e _`A 2h BC kl * 34j 67Rl i -/4 h  S YZ _`< INb OV PPv5 !#$ "m0 #XXE0 $cs\ % ! &I% '!"/; (XXW )efBAe/3XBr_by\[b-O 2 !e 3 4  5zn 6GH z 7_`. 8)+(z 9&'A :k ;O <++/ = >jj [^ p t   99 99w n 
23 ^az Gj c   55pm  PPb 45 66B# 8 }= ? o   cf  66 U 66 fh/ :M O VW !55lq "/ #55G $I %% & xsws<b!<$\\aU??.,,;# ABH np  o   K EEA~ G @CG 
24 G G wxG 8<G eII  B  B = mm 59$5 ``` @@  A
25 
26   <
27  * K \`S 1 1 $ bb /s  $f bbi L mml
28  CD$`  "" < 1  !5 "B #--E5 $ %Q & '!h (25r )Pf *zzf + , -0 .<r /$7 0 A 1Q_ 2Bo 3nG 4! 5""2f 6cc" 7;A_# 8B| 9mmM5 :v;e ;< <9 =mm  > p ? @[[{5e A BDs Cb D66~e E N FAA# Gf H{{ I JM  K  L M* Nkm@ O/ Pu QQQB* R;;$ SE0 Ty0 UI V Wce~N X Ymme  Z@A [ \33K%s ]RV# ^;# _;#5 `m< a/ b4t cG dG eIs fde gByyAk M
29 M
30 ^^u$7%+`2<9U6<5c/k0.7BE!8f "g#GR5  5xueK"#f
31 $ w%@/<#X0e $wGvM
32 l*5_3'</'<E!0 / C00 D E F G H I> J K;=V9 Le  Mw Nww O?? P QaaK% RK%N S@GK% T` U""G VH W X Yi Zv [ \ ]G ^I _vwI ``` akB*Au`-bת2%%!$fBΪܦxd3ړ
33 $f]12IALM
34 bn}՛LDFEhM
35 M
36 BM
37 -2cxd
38 1hyuu`yuu`yuu`At } }yC=q==ByAt } } screen render jsr render_screen loop dec counter bmiFirst screen render jsr render_screen loop dec counter bmi exitFirst screen render jsr render_screen loop dec counter bmi exit exitFirst screen render jsr render_screen loop dec counter bmi exit exit rtsexitrtslda counter_sp jsr step_prite exit rtslda counter_sp jsr step_prite dec counter bmi exit exit rtsMove sprites lda sta counter_sp loop2 lda counter_sp jsr step_prite dec counter bmi exit exit rtsdec counter bmi exit exit rtsMove sprites lda sta counter_sp loop2 lda counter_sp jsr step_prite dec counter_sp bne loop2 dec counter bmi exit exit rtsMove sprites lda sta counter_sp loop2 lda counter_sp jsr step_prite dec counter_sp bne loop2 dec counter bp exit exit rtsMove sprites lda sta counter_sp loop2 lda counter_sp jsr step_prite dec counter_sp bne loop2 dec counter bpl exit exit rtsexit rtscounter_spMove sprites lda sta counter_sp loop2 ldaIteratethroughIterate throughcheckIterate through SRBcheckingSSet thezeroIf the whole byte isskipindexSavesearchstart rotating the byte tosav_xWe found the bitherexyaslbeing its position inside the byte x of the SRBsav_abeing its position inside the byte x of the SRB stafindbiSave indexfindbitcIf there are more bits set toonecontiupdate_tileUUpdates aUpdates a tiUpdates a tile onUpdates a tile on screenscreenReg X contains the byte number inside the SBR and reg Y the bit number inside the byteRendersRenders the scrRenders thelookinglooreonlyredrawingredrawing tilesredrawing tiles setredrawing tiles set in the Sredrawing tiles set in the SRBstaredrawing tiles set in thebyteReg X contains the byte number inside the SBR and reg Y the bit number inside theYReg X contains the byte number inside the SBR and regthe bit number inside theddbugdbug1vpextechardbug2_prpr_dbg_pr_dbg_info_dbug1MultiplMultiply bybyMultiplyFinFind out theFind out the row numFind out the row number from tnuclc sty tmp0 adc tmp0Add t clc sty tmp0 adc tmp0Add t+xovM
39 VPs'tW>A1=BvM
40 v>qy!u,\utzyk-q==vAt8 } }yC=l\text.h&7 a v 68W
41 'E V W X YK% ZDKK% [K% \STK% ]}~` ^B _33G `H a b ci d e fG gI hABI i I jyz k(QB*AuA-?bת2czV}BΪ#ܦQ37[}I3iuxdmbnL 
42  ڊ w  B  B ݒ5 
43  
44 
45 ] A
46  <>
47  AA AA    s OP c w J !!В NQ@  F TUE5  Pf \\  ' A  7< !23{ "A #B $JJ %VVS &22 'ئ (c )jkǫ *tu +fg ,rr% -<= .W /s 0 1 2 3s 4)*mw 522O 6 7B 8h 9RSl :fT ;m <
48 6 = > 
49  IMmec$ pC DZ!30"%bMSWU B D A@
50 @@ DMTH%!! @u MNB` .M)AHF @ %`9MB P1E @ ;¥Ps8 4@  AB a B md m f abA B  m ffA
51 mk m eeBBAyBmBmm <L  * K "S 1 1 $ $$ / $f YYi  //l
52 l $`   ^^<x 1 xx !5
53 "Be #E5 $ %Q & '! (25 )Pf *pp +s , -st0 .< /$7 0 A 1QN 2EEB 3kk 42f| 5ZZ" 6_# 7B 8//M5 9v; :< ;9 <//  =tt  >ZZ.mig@ x*1  `Zx@ @sbMS[YW@hhH @@QMTH%  @u sfMNB` .M)ARO@@"@@" P C(DbMB P1E @ ;¥Ps8 4@  A >BMBm <7Mmk C"P @@@ @$ $@$  @IM]  b8M7M)) @ @=M@pTM!'&  @@|bM
54 1huuvM
55 v>qy!u,\uthyzk-q==vAti } }yC= } }yC=i } }yC=     M
56    M
57  M
58  M
59  M
60  M
61  //M
62  35M
63  M
64  uwM
65  jjM
66    !'' " # $ % &> ' (68V9 ) *,/h +h ,  e  -e  .e  /e  0e  1e  2e  3e  4e  5::e  6e  7dde  8lle  9e  :e  ;e  <xye  ={{e  >e  ?
67  ڊ ~$U=<w<pm*K5S11b=/9t${- /tsǥǮ2$fi Gl
68 $`cYw2JВ<B1@5BBFE5{CCoEB HyuH3Q2eP|[q+r B1leDDWDm!25{m/*6PfBd| ga='A{OjXWN(2L{0Fݒ<z z$7.(z'=A`K=;/Qw2F GaB2hnG|G(mkO/88}@GXeym{:2f jGkqyئcǫ!MRCYz &|M"h>_#Bā%VRM5v;o<Wzczss\9a a#ahx 9 S~-A" 7 ~ t9{5mbOLtUnuODc~ea #h>CHMRW\lfymJamdR[Lj6pBpm'k,|CLD|%CW<~{/lTmb|Qӎ>bmԭ|. O]CEDDEEnrEED#EDFDeEDE
69 E5EEEFg~EDEDDREM  q%l=
70 v4Gd$*sJ/@/|/3yuB*~qzl>Nz$/`mE0y0*Im 8Q=l>{22V9Zaa?aax3n2~a<>e J9s#TH\ff=K%`#]z<3G33y#2DB;#bIGHoAm<# GjK/-4 iA~WGI?=c%9~;BظyGľ_?mHOpJg?#bbd|Z !p}EN957o8!!<.`P o?):!  @*@!  B
71 @B@  @D$ %'=%V9pb 9[\9XxD1Ho&Yz
72 6?=D czGn/E`_ȉkhCA~`Q= D 9U=qzKokW0B*S-AH
73 El=D1!L1lIB` zN2sk#E=G M  9*CuRg5E(VL.J=W( 9xl8%pSDE=ca
74 ~ B~ ,*  Dqj RE% t -XB| eE$`G %Y I2O7K. rE~z.4Q/H> -!MG~E zN d> goFe{-C
75 n2 R{|/kEH E2 w2M R 2 W ;#XZ"K\ B  B   AA ' A |M $&] *
76
77 l &+I $BA!B%c2%>d ns\9F !!7 Lj } 8_ V90 !!9 !!G B(~A39`BN"2B8qF7l8p9`AAѮ,֥VEqqq84zB6Y'/qf,ohz5Azz1/1/Ao/3`M)%t,h3E~h
78 8 ~YEBd+e @IOA @?A E c*_#9 O kos8% 2RA E2hlM* Դs#U 6|M  B 42-mdfl" JpE"Ph:B z s1 E{:(h/-z X+ /`z/l}2QS#_E  bN/@NCF( 2#`ڊfs
79 F>;/#H(he bit n clc sty tmp0 adc tmp0Add the bit num clc sty tmp0 adc tmp0Add the bit number clc sty tmp0 adc tmp0FitheFind outbit number clc sty tmp0 adc tmp0numFind out the columnnumberSave index ldyMUST PMUST PRESERVEMUST PRESERVE REGXldyVariabVariablesgaVariablesSomeSome gamevariablesvis_colCoiluColumColumn andColumn and rowColumn and row ofColumn and row of tileColumn and row of tile inColumn and row of tile in visColumn and row of tile in visible arColumn and row of tile in visible area coColumn and row of tile in visible area coordiColumn and row of tile in visible area coordinatesSamSameinSame butSame but inSame but in skoolcoordinagtcoordinagecoordinatestile_coSame but in skool coordinatestile_colfirstSome game variablesfirst_colcoIndexColuwColumnwhicLefLeftmostcolyumcoluvisiblecolumnLeftmost visibleinside the SBR and regldatab_div5inside thevisvis_rowback_bufferBBackbuBackbufferjustone tiletileudg_skoolutggraphicsdumbdumpdump_budump_bufferJumpsJumps theJumps the backbuJumps the backbuffer ontJumps the backbuffer onto th eJumps the backbuffer onto the sdump_buffSepSetuppointerscrSetup pointer torow ldaofGenerate multipledataoffset_TableDiv6tmp0adress clc ldaoffset data lda sta_HiresAddrHigh_HiresAddrLowTableTables_GenerateTablesGenerate screen offset data lda statab_tab_coltab_colYtab_colYcoordtab_rYcoordtab_rowYcoordtab_row2Ycoordtab_row2YUnUndUnforUnfortunatelUnfortunatelytherescanlefttmscan left ldatmpascan left lda tmp clcadcscan left lda tmp clc adc stabcscan left lda tmp clc adc sta tmpnocascan left lda tmp clc adc sta tmp bccnocarryscan left lda tmp clc adc sta tmp bcc nocarry incsta tmp ldaasl asl asl tay ldaUsing a t asl asl asl tay ldawillUsing a tablesa asl asl asl tay ldasavesave cycles asl asl asl tay ldascan left lda tmp clc adc bcc nocarry incdrawdraw_skoodraw_skooldraw_skool_tileDrawDraws theDraws the skoolDraws the skool tileonto the backbu 3I-
80  3`7 t;  R 5{ӎ>pBi{ǥ)- aTo>a')-w<3 Q3<xaS([3{*G3#aU$exkВ$7M L# Wݒ x{?a.
81 xn'1"Ze$L|s/Q{%& ZaG "/PMtga,@By -ԭ,|p3 /!AB aeU a\ygP|%C8n F9aC0t JHF3N<v;k~eF Iw} ba;!$! I&  ؠ>N >] GBXazF G:7GD$Mac D|Tm~v RCHJdbm|.;K8E0(l[34G !)|S pm O@GB2m=( h O?
82 8l
83 ئCq
84 9m" y0Vmm7m {#Jl
85 AnGp]
86 
87 m
88 |G?Opk0 8 G3yF l
89  m$fGaJCie$Ǯ,m2f7qkK%H{C5key q{PfhmbxK'n@` m<b3"5Gj &2LjkD'4dD&81*<&m6blfl;N0H蠴< 2D1C<k XW/y<=Q'c(PoLDru^yXk+r԰WD(xVTyF5<"8yAfc25*uR8j0=
90 THA?l #E5DfV M5Wv4D<z9<ǫ
91  uH!āJ z:/9 D# OL](z<H @PD!i Q ~=*O{5B9PH /Q    1lh(A*W>.K :%<4' hefO$ ijkgP% c`aYQR[Wd  fferof onto the backbufferof coordina onto the backbufferof coordinates onto the backbufferbackbufferonto theskoGet theskoolGet the skoolUDGdeydata asl asl asl tayisitdraw_spritesdumjsr draw_sprites jsrjsr draw_sprites jmpNbNo moreclebitsclearand regbyte staSRlooprotlda bneint de voidint dela voiddelayunsigned intasl tay ldatay ldatay ldx vis ldatab ldatab_m ldatab_mul7 ldatab_mul8$1234First screen render jmp render_screenFirst screen render js render_screena ldac adcckl adccl adcclc adclda staEric_Eric_anim_Eric_anim_stateEric_anim_state0as000_120x2m185RowTIlRowTiRowas002_120x2m185as001_120x2m185as003_120x2m185children_tilesanim_stateCharactCharacter infCharacter informatiCharacter informationDLoopsthcharacterLoops through theandLoops through the character listupdateLoops through the character list andupdatesLoops through the character list and updatesbnacbabacjbubackbufferspritethatcharacter sprite attilcharacter sprite at thatatcharacter spritetiback buffer with corresthe character spriteback buffer with correspondingthe character spritedraw_spCheck rtsCheckpos_rows ldx current_sprite lda tile_row sec sbcstart with ldx current_sprite lda tile_row sec sbcrow ldx current_sprite lda tile_row sec sbcseclda tile_colpolda tile_col sec sbcpos_colskbmicmskicmp bcsco lda tile_col sec sbccolumn lda tile_col sec sbcoverlapsThis spriteststtowstrowst_rowcolumn ldx current_sprite lda tile_row sec sbcrow lda tile_col sec sbccolumn ldx current_sprite lda tile_col sec sbclda tile_row sec sbcrow lda tile_row sec sbcasl aslsm_rowsmc_rowoff asl asloffset in asl asloffset in reg asl asloffset in reg X asl asltaxtayoffset in reg Y asl aslXas_pointer_highlda a ldalda as_poin ldalda as_pointer_l ldaas_pointer_lownowGoodmaskgraphic andgraphic and mask stagraphic and mask sta tmpgraphic and mask sta tmp ldagraphic and mask sta tmp lda stagraphic and mask lda stalsrsllgraphic and mask ldx stxstxstyCarrmusCarrysetCarry must bestgalsr tmplsr tmp staadc staadc sta tmp0graphic_pldx current_sprite lda tile_col sec sbcldx current_sprite staldx current_sprite lda tile_row sec sbccol lda tile_col sec sbcr lda tile_col sec sbcIf itoffset in reg Y aslclc adc staC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\params.hdefinitions"params""params.h"""First screen render lda jmp render_screenFirst screen render lda s jmp render_screenFirst screen render lda sta vis_ jmp render_screenFirst screen render lda sta vis_col jmp render_screenC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\graphics.sGraphicschildren_masksunsighed voidunsign voidunsigned char_scroll_leftScroScrollScroll the scrScroll the screen datScroll the screen dataScroll the screenUpdate tUpdate the SRUpdate the SRBUpdate the SRB ldxUpdate the SRB ldx lUpdate the SRB ldx loop3Update the SRB ldx loop3 ldUpdate the SRB ldx loop3 ldyUpdate the ldaat the right side cmpsetdest1and bne turnit correct decgetdownstairsdownNeed to use the reachable stair to gorightstairinccur_commandMark com lda staMark command as lda staMark command as finished lda staAd incAdvance incAdvance the command incAdvance the command pointer inccur_command_highKeep tay ldasmc_commandKeep pointer p tay ldaKeep pointer prepared f tay ldapreparedKeep pointernounisubcommandsusmc_cont_jumpbeq notyet2 jmp change_direction notyet2 jmpThe spe ldaThe spectr ldaThe spectrum versio ldamak ldach ldabutMaybe ldalaterMaybecont_subcomm_highdonis lda stais ever res lda stais ever reset lda staresetis everresettedmain_counterLeftmost visible columnTimeTimetabTimetablesTimetabletaitimetatimetableWACKERMRROCKITTWITHITCREAKLIBRARYREVISIONPLAYTIMEMain timetableDINNERACKERROOMMR EXAMf225$ffint_subcommandReRETURNDO NOT SIMPLYreadydutyDinnerWanderBoyboardsWrite on theThis one does not endboyFlag littleSC_TELLANGELFACjsr update_SRB_sp lda animaand beq turnit correct jsr update_SRB_sp lda animatory_and beq turnit correct jsr update_SRB_sp lda animatory_stateand beq turnit correct jsr update_SRB_sp lda anim_staterolrol brol bccrol bcc onlysterol bcc onlysteprol bcc onlystep onlsrol bcc onlystep onlystepstep_crol bcc onlystep onlystep jmpand beq turnit correct ldarol bcc onlystep jsr update_SRB_sp inconlystep jmpand beq correct bne turnit mustfaceright ldaand beq turnit correct de ldaand beq turnit correct dec var ldaand beq turnit correct decror bcc onlystep jsr update_SRB_sp incbeq ldabm ldabmne ldabne ldabne doit ldabne doit doit ldabeq doit ldabeq _isc doit ldabeq termi_isc doit ldabeq terminate_isc doit ldabeq terminate_isc ldabne incp ldaEntr ldynoincpos jmpEntry poin ldyEntry point wh ldyEntry point when ldyEntry point when update ldyEntry point when update_ ldyEntry point when update_SRB_ ldyEntry point when update_SRB_sp has b ldyEntry point when update_SRB_sp has been ldyEEThen to a randommain_timetableescapeWalk around the firehimGiveWalkaboutintocontinuesgymWalk around theLookpeaCollect theRestart the commandMrSignal thatGo somewhere tripping people up on theboardrepeatstartedRestart until dinner hasThis continuesStampedecommand_list198Restart the command listcommand_list196command_list194command_list188Move about until the bell ringscommand_list190LibraryGo to the left end of the RevisionoverMove about until playtime isAngelfaceTell him aboutwindowWalk around the bigStafffire the catapult now andwalkaboutMumpsWaitroomGo to the stafffastPut a command making him walkHeadANGELFACETell ERIC aboutgameend theEricFindmumpshallGo to the table in the dinnertoldSignal that he has beencommand_list200headGo to the doorway of theMove up &command_list208command_list206command_list204command_list202timesMove about tencheck_reset_clrestart_nodinnerThis is the same aslessonRestart command list until it is time to sta pointer to command in the list ldadest_ydest_xs_get_paramupMake a character stands_goto_ex2destinationIs the character at the same floor as theSC_GOTOSC_GOTORANDOMTRIPSC_WALKUPDOWNSC_TELLEINSTEINSC_WRITEBLCKBOARDSC_FLAGEVENTSC_CTRLEINSTEINCL2SC_CTRLEINSTEINCL1SC_NOPSC_TELLANGE6LFACESC_FOLLOWBOY1TRIPSC_RESTARTLISTSC_MSGSITDOWNSC_WRITEBLCKBOARDCSC_MOVEUNTILSC_FINDERICSC_TELLBOYWANDERcommand_lowSC_ENDGAMESC_DOCLASSSC_DINNERDUTYSC_2000LINESERICSC_RESTIFNOLESSONSC_UNFLAGEVENTSC_FINDSEATSC_RESTIFNODINNERSC_SETCONTSUBSC_GOTORANDOMs_isc_waitEinsteins_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrides_isc_int_destColliCollisionmahasItfloorIs the character on the bottomhasnleftsideSend it to the staircasesetdestbccisnSend it to the staircase jmp s_use_stairsi_subcom_highi_subcom_lowByteldy styvar3smc_rout$deadpha lda stasta tmp lda staJump to the routine smc_rout jmpsta tmp pla setdestex stavar4Jump to the routine smc_routLimit tLimit the amounLimit the amount of timetimeLimit the amount ofunder ccontrolundercontMake the contMake the high contMake the high part o contMake the high byte of contMake the high byte of the contMake the high byte of the interru contMake the high byte of the interruptible contMake the high byte of the interruptible subcom contsubcommandMake the high byte of the interruptibleroutine controutine ze contt contterminate contterminate it contterminate it lda contterminate it lda st contterminate it lda sta contterminate it lda starts contHas itHas it reachedHas it reached the deHas it reached the destinatioIf carry ithenthe characthe righthe right of thethe right of the destinatrightgoleftIs the ch goleftIs the charact goleftIs the character fa goleftIs the character facing goleftIs the character facingchange_direction facingleft goleftwayIt was looking the otherAdvanc goleftAdvance goleftAdvance jsr update_S EST MAK cmp bcc doit1 rts doit1 clc adc bpl doit2 rtsTODO ESTO EST MAL cmp bcc doit1 rts doit1 clc adc bpl doit2 rts_initjsr update_SRB_sp lda counter_sp cmp beq end inc counter_sp bne loop2 end jsr render_screen dec counter bpl loop rtsdec counter bpl loop rtsFirst screen render jmp_getdoit2 rtsbplGet keyGet key bplGet key bpl endGet key bpl end endGet key bpl end end ldaGet key bpl end end lda taxGet key bpl end tax end lda taxGet key bpl end tax rts end lda tax_getcchar *Move sprites lda sta counter_sp loop2 ldx counter_sp jsr update_SRB_sp ldx counter_sp lMove sprites lda sta counter_sp loop2 ldx counter_sp jsr update_SRB_sp ldx counter_sp ldaMove sprites lda sta counter_sp loop2 ldx counter_sp jsr update_SRB_sp ldx counter_sp ldypause_ end jmpiblblankwebnesmc_pinformationCharacterAnimatorygraphicgraphic and mask ldy stymask_pIareIf tilesarraIf tiles arearrangeedIf tiles are arrangedsmartlsmartlycanstatescolfirst_coldoitbmi endme cmp bcc doit endme rtsbmie SRB ldx loop3 ldy ldUpdate the SRB ldx loop3 ldy loUpdate the SRB ldx loop3 ldy loop4Update the SRB ldx loop3 ldy loop4 ldUpdate the SRB ldx loop3 ldy loop4 ldaUpdate the SRB ldx loop3 ldy loop4 lda SRBUpdate the SRB ldx loop3 lsrUpdate the SRB ldx loop3 lsr SRBdexdex bpdex bplSet tSet the bitsset toUpdate the SRB ldx loop3 ldadex bne loop3dex bpl loop3ora dex bpl loop3ora sta S dex bpl loop3ora stabpl loop3dex de bpl loop3dex dex dex bpl loop3dex dex dex dex bpl loop3dex dex dex dex dex bpl loop3loop3dex dex dex dex dex bplCall tCall the redrCall the redrawingCall thetile_col sec sbctile_row sec sbcjsr _getchar jmpscroll_rightscroll_leftiny smc_sp2 stasmc_sp1dey dey cpy bcs loop2 ldacpy bcs loop2 ldacpybcs loop2 ldabcs loop2 b ldabcs loop2 bpl lo ldabcs loop2 bpl loop2 ldasp2 ldaupdate_SRB_spUpdatesUpdates the SmarkingUpdates thetilestiles which neeone scan left ldatotiles which needbebe redrawbe redrawnredrawnonon his anon his animatoryon his animatory statestatedex bpl loopskip dey bpl loopMark the skip dey bpl loopMark the correspo skip dey bpl loopMark the corresponding bit skip dey bpl loopbitMark the correspondingSkSkipFirst ldasmc_as_pGet the ldat ldathe anim ldathe animatoy st ldasta tmp0 ldaldy smc_as_p ldabeq$1235skip inc tmp0 bne nocarry incsp_rowtmp1adc sta tmp1 lda adc staGet poi ldaat ldaat the corre ldaat the correct ldaat the correct byte ldaand als ldaat the correctand also the ldaand also the corre ldaand also the correct bi ldaand also the correct bitmask ldaasl asl adcMove sprites lda sta counter_sp loop2 ldx counter_sp jsr update_SRB_sp incMove sprites lda sta counter_sp loop2 ldx counter_sp jsr update_SRB_sp ldx incMove sprites lda sta counter_sp loop2 ldx counter_sp jsr update_SRB_sp ldx coune incMove sprites lda sta counter_sp loop2 ldx counter_sp jsr update_SRB_sp ldx counter_sp incMove sprites lda sta counter_sp loop2 ldx counter_sp jsr update_SRB_sp ldx counter_sp decbmi enbmi end jmendldlda dbuglda dbug beq dbugsta counter_sp loop2 ldx counter_sp jsr update_SRB_sp ldx counter_sp decMove spritesbc adc sta tmp1 lda adc stabcc adc sta tmp1 lda adc stabcc kk adc sta tmp1 lda adc stabcc kk inc adc sta tmp1 lda adc stabcc kk inc smc_ adc sta tmp1 lda adc stabcc kk inc smc_t adc sta tmp1 lda adc stabcc kk inc smc_t kk adc sta tmp1 lda adc stabcc kk inc smc_t kk adc sta tmp1 lda sm adc stabcc kk inc smc_t kk adc sta tmp1 lda smc_t adc stasmc_tbcc kk incadc sta tmp1 lda smc_t adc staskip2adc sta smc_srbp lda adc staadc sta smc_srbpl lda adc stasmc_srbplPre ldaPrepare poin ldaSR ldaadc sta tmp1 lda smc_srbph adc stadoit2cmp bcc doit1 rts doit1 clc adc bpl doit2 rtsTODO EST cmp bcc doit1 rts doit1 clc adc bpl doit2 rtsTODO ESTO ESt cmp bcc doit1 rts doit1 clc adc bpl doit2 rtsTODO ESTO ES cmp bcc doit1 rts doit1 clc adc bpl doit2 rtsTODO ESTO EST cmp bcc doit1 rts doit1 clc adc bpl doit2 rtsTODO ESTO EST M cmp bcc doit1 rts doit1 clc adc bpl doit2 rtsTODO ESTO endme bcs end cmp bcc doit endme rtsbmi endme bcs endme cmp bcc doit endme rtsstep_characterPerPerform thePerform the steppingsteppingChange lda eorflagsChange the f lda eorChange the direc lda eorChange the direction flag lda eornotyetcpy bcsdbug beq dbug ldabase_as_pointer_highbase_as_pointer_lowand beq r2l ldaand beq r2l jmp end r2l ldaflagcpy bcs notyet ldabeq r2l ldaand bnedbug beq dbugSome mainCHARACTCHARdefiDegDefiniDefinitionsGChaF ldaFor child ldaFor children thi ldachildrenForfieldCharacter flags flagsCharacter flagst1_inverted_anim_statesAnimatAnimatory statteacher_tilesteachersgrouptechange_directiontab_otab_offset_tab_offset_invtab_offset_invhinvltab_offsettabtab_tilestab_masksnotyet2and beqcpxbcs teacher jsrjmpteacherand bne notyet jsrend_skool_udgsudg_skool2udg_skool3dey asl asldey asl asl aslasl asl aslst asl asl asltmp asl asl asludg_skool4dey dex bpl loop jmpdey ldy stdey ldy styblank_tile$1200ldxdey ldx stxdey
92  '
93     
94 $=6 2&=  >h  
95  . 
96  B,?jJC  X?:' c# BE(@6) 
97 WXYZ]K` EOT651$     &$ JS<7@ E$_D# U)0\C >5( 2/"TUV C@4w [\]^^L>C-+I\+KLB <Ib0#M   F/5  # %;6! +Dm5m {#Jl
98
99 @nGׯ`]
100 
101 m
102 |G?Opk008 G3y? l
103  m$fGaJ8Cie$Ǯ,m2f6qK% Ckheyq Pfmb`
104 K'n88 m<^3".Gj &+LjD'4`D&81pE*<&m6b/fl;N0H0< 2D1 <0 XW/yP
105 <<Q'cj LDru^yP +rWD(xVRy 
106  =  B  B 6B = j EEey hh  kk
107
108 Q= = <e aaA     ef  >>U= $$< !! 5 =
109 th [^s  gg5 qqC <<on suy ::q FJ+r 24/ 0= !''< "gg$7 #
110 '= $A %B &{{nGr ';; ( ){{X *{: +AEk ,q -NUn .KNyB /ئ 0 1& 2&'h 366 4 5;;M5 6v; 7s 8OS  9  :ff t ;VXd <88 = 
111  @KNy ALj B Cl= D E3y Fmo GV9 HZ[3s I\ Jyz KK% Ly M79b NGE O7:I P?= QB=C==AC[== ^=AtuM
112 ovM
113 VxdFW>A1=BM
114 FP
115 i
116 y3u\9, \ut$zk&q==vAtړ]  } }yC= fpB g
117  hUVp i jm kgk' lk m,| nEGC oLD p| q% rC sW t\] u_`< v wYZ~ xgh yPP{ z/l {Tm |b }rt as_flag_events_unflag_event s_write_bl_c s_move_untils_restart_nolessons_end_game s_2000lines_eric s_tell_enistein s_tell_angelface s_tell_boywander s_find_eric s_follow_boy1 s_goto_random_trip s_goto_random s_dinner_duty s_restart s_restart_nodinner s_write_bl s_ctrl_einstein1 s_ctrl_einstein2 s_find_seat s_do_class s_msg_sitdownIf carry iss_set_csubcoms_walk_updownasOr the followingTerminate and stopsteps_endlastuse theidentifiersScript eventDestinationsdirectlytimetable by accessingSubcommandsSignal that Mr Wacker ishas been told about BoyGo to a randomGo to the end of the firePut next command ininside the readingto go home and end theMove about until Einstein grassed onringsMove about until the bellcommand_list186SC_ENDCommand listcommand_list_tablePersonalper_timet_erics_use_stairsSend it to the staircase jmpSend it to the staircase jmp take_right_stair_downmovedLast character we haveChChangeChange theleChange the currentchange_leChange the current lesso de ldx stxdey dex ldx stxdey dex txa ldx stxdbug beqPrepar dex txa ldx stxPrepara a p dex txa ldx stxPrepare a dex txa ldx stxPrepare a pointer t dex txa ldx stxthe UD dex txa ldx stxdex txa ldx stxi dex txa ldx stxwhichbpl loop jmptxa ldx stxui dex txa ldx stxis co dex txa ldx stxcodegotit clc adcdifferentsets arecolumnsmoveWe mayudIfudgkIf udglistsallingedpageonlneedttfa pagepartneed the highneed the high part of thedex bpl loop jmpI dex txa ldx stxIf we dex txa ldx stxIf we move the d dex txa ldx stxWe can dex txa ldx stxWe can save the d dex txa ldx stxWe can save thedraw_spriteAlso we are again multiplyingroutinethe table would also speedup the otherthe table would also speed up the other_scroll_rightEEngineEngine functionsEngine main functionsfunctionsEngine maingraphic and masktattab_mutaOptionsCoConditionacompiConditionalConditional compilingoptimizConditional compiling andoptimizationoptimizationstab_multab_mul8himultiplying inchange_lessonRingbellRing theRing the bellRing the bell ldxRing the bell ldx bell_pingRing the bell ldx bell jsrRing the bell ldx bell jsr _pingRing the bell ldx bell jsr _ping dexbelRing the bell ldx bell jsr _ping dex bplReset theReset the lessonclockReset the lesson clockReset the lesson clock ldamain_cloReset the lesson clock lda stamain_clockTIcTTicTickslesTicks to changelelessonTicks to change thecurrent_lessonLesson clocklesson_clockCurrent lesson from the main timetableIndex of the current lesson in the main timetablecurrent_lesson_indexIn inc current_lesson_index ldx current_lesson_index ldaIncrement inc current_lesson_index ldx current_lesson_index ldaIncrement current inc current_lesson_index ldx current_lesson_index ldaIncrement current lesson inc current_lesson_index ldx current_lesson_index ldaIncrement current lesson inccurrent_cmpsta current_lessonsta current_lesson cmpnobellsta current_lesson cmp bcsnoRing the bell ldx bell jsr _ping dex bpl bendexPartsuppPartialsupportTrigetTries toTries to get ridunneceTries to get rid ofunnecessaryjrTries to get rid of unnecessaryinstrucTries to get rid of unnecessary jsrinstructionsSubsSubstitutesmuSubstitutes themultiplyiSubstitutes the multiplyingmultiplyingSubstitutes the multiplying withbigSubstitutes the multiplying with atablenotoptimuchthougmuch optimizationthough_test_loop2L jsr update_SRB_sp ldx counter_sp ldyand beq notyet2 jsr change_direction notyet2 jmpLetand beq notyet2 jsr change_direction notyet2 jsr step_character lda counter_sp cmp beq end inc counter_sp bne loop2 end jmp render_screenlast_char_movedldx last_char_moved jsr move_char ldx last_char_moved jsr move_char ldxmove_ch ldx last_char_moved jsr move_char ldx last_char_moved jsr move_char ldxmove_chars ldx last_char_moved jsr move_char ldx last_char_moved jsr move_char ldxmove_charsThis ldx last_char_moved jsr move_char ldx last_char_moved jsr move_char ldxThis routiThis routine mThis routine mimmiThis routine mimicsThis routine mimics theThis routine mimics the SpeccyThis routine mimics the Speccy versionversionapapparentlapparentlychecksfraframemust_movethe walkingthe walking speed cothe walking speed counterthe walking speedTestalligatorsee you laterwe areTKlsb of VIAgeneratorA real randomyetrandom enoughT2Lagainwill it be $deadseedget old lsb ofbeforesame comment thanENABLEDINTERRUPTS MUST BEcounter_sp ldyFirst screen render jmp render_screen ldxFirst screen render jmp render_screen ldx loop dexFirst screen render jmp render_screen ldx loop dex bplSetIf bpl finish pla pla rts new_pace jsr randgen asl rol tmp and clc adc ror staspeed_counterfinishIf not work bpl finish pla pla rts new_pace jsr randgen asl rol tmp and clc adc ror staIf not wwaa bpl finish pla pla rts new_pace jsr randgen asl rol tmp and clc adc ror staIf not walkin bpl finish pla pla rts new_pace jsr randgen asl rol tmp and clc adc ror staIf not walking s bpl finish pla pla rts newB  B jl 
118 t* XXA% c HI2#  
119 IJ4 rs* 78| @A(`  e _`Ai 2h BC kl e 34j 67R  -/ h  S< YZ; _` INb OV0 PPv5 !#$ "m #XXE0` $cs\ % ! &I '!"/ (XXW )efBAe/3XBr_by\[b-O-O3 4  5z 6EF z 7]^. 8)+(z 9&'A :k2 ;O <++/ = >jj C  nnP HH- FF rrG B  B (t IIYz NNE
120 12D !"D "#E ()E nU rE -.E  D #E ,-D F *+D +,eE DE 
121 E 565E &'E '(E F  !g /0~E 01D ./E !)*D "%&D ##$RE $$% %UWA & '?@ǥ (=> )>? *ABǮ +<=2 ,@AJ - .DFC /o 0Z[E! 145[ 2DDq 3!"+r 4 !e, 5 6  7z 8KL z 9cd. :)+(z ;&'A <k =O >++($Skool - Win32 DebugSkool - Win32 ReleaseC:\Archivos de programa\Microsoft Visual Studio\Common\MSDev98\Bin\win32.ncbC:\Archivos de programa\Microsoft Visual Studio\Common\MSDev98\Bin\crt.ncbC:\Archivos de programa\Microsoft Visual Studio\Common\MSDev98\Bin\mfcatl.ncbC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\Main.cmainvoidC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\engine.s_teint_test_mesSBRSBSRBScrScreen refScreen refresh bScreen refresh buffeScreen refresh buffermTilefroTile mapmapcolcolumnrrowC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\data.sfileDatascFirstrenFirst screenrenderjsrFirst screen renderFirst screen render jsrrender_scrrender_screerender_screenloopFirst screen render jsr render_screencounterFirst screen render jsr render_screen loopFirst screen render jsr render_screen loop dec coFirst screen render jsr render_screen loop dec counter bFirstnd fo jsrs jsrspeake jsrspeakercont sty bubble_col lda bubble_loc_p sec sbc bcs nodech decspeaker and rem jsr remove_speech_bubble ldx cur_speaking_char lda staspeaker and remove the spe jsr remove_speech_bubble ldx cur_speaking_char lda staspeaker and remove the speech bub jsr remove_speech_bubble ldx cur_speaking_char lda staspeaker and remove the speech bubble jsr remove_speech_bubble ldx cur_speaking_char lda staTickHiValuehiValue of theValue of the highValue of the high byteseparateValue of the high byte thatseparatesValue of the high byte that marksmultiplying with aValue of the high byte that marks whenValue of the high byte that marks when the teacherValue of the high byte that marks when the teacher startsteachingasksValue of the high byte that marks when thetellsValue of the high byte that marks when the teacher tells theseiValue of the high byte that marks when the teacher tells the kids toValue of the high byte that marks when the teacher tells the kids to sitlda st_pace jsr randgen asl rol tmp and clc adc ror staIf not walking slowly bpl finish pla pla rts new_pace jsr randgen asl rol tmp and clc adc ror stafinish pla pla rts new_pace jsr randgen asl rol tmp and clc adc ror staIf not walkingslowlyFirst screen render jsr render_screen ldxTables with base pointers tooffsetsTables withcountdec count bne loop rtsdec count bne loopscroll1rightscroll1_rightC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\auxiliar.sAuxiliaryVersionThe OricgmailenguitaDazeSkoolChemaC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.sroutinesScriptingC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.hcodesmaiMaindefiniCommandsFor implementing"script.h"command_highCommand token tableThe character is passed in reglocationMake a character go to a givens_returns_gotoget_paramGet one param from the command listwalk ldaResetsavxSave reg x stxcommand_list_highPreparea current_lesson_index lda sta lesson_clock lda sta45ݒH;|$)<)r%pEOyu\ptu,jyI"¯amd2{1=q,`X-A{8fw2H(L_8;LAjj&@$4ď]a->QgLj[aZ"OO$ZQIffFJ8b /v w" lP[1*8r5f 5lav"75D? G46`bm&-1!c3"2+Et X9a ky$My03КD qi"'Nu<)
122 J3" 32DcƊj1\OJ( j]60gi4G="ڍd0e"6+HszJ +~D{58fv`vgIZa[Sxb-CNGp
123 _ [n;9 RB_sp jsr change_direction jsr update_SRB_sp goleftupdate_SRB_sp goleftnoisubcommandbcspcommandGet params inclda dbug beq dbug ldabeq nocommandlist staGet params ldyinyiny staterminate itfigureoutmoveincrementing theAdvance jsr update_SRB_sp jsr step_character jmp update_SRB_spNOT ldalistPrepare pointer to command in theldx counter_sp jsr update_SRB_sp ldx counter_sp ldyloop2Move sprites lda sta counter_spjsr update_SRB_sp ldx last_char_moved ldyand beq notyet2 jmp change_direction notyet2 jmpjsr update_SRB_spjmp update_SRB_spMove sprites lda sta counter_sp loop2 ldxMove sprites lda sta counter_sp loop2 ldx counter_sp ldyStStarStairsBottombotTheThe bottomtopThe bottom andcolsThe bottom and topThe bottom and top colsqeyThe bottom and top cols are alleqyaeqequalFor st s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrideFor stairs fir s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrideFor stairs first chec s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrideFor stairs first check s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrideFor stairs firstthe s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstridethe pos s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstridethe position s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstridethe position of the cha s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstridethe position of the char s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstridethe position of the charand find s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrideand find out s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrideand find out the dir s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrideand find out the direction he s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrideand find out the direction he whould be s_isc_up_stair s_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstridefacingand find out the direction he whould beand find out the direction he should bes_isc_up_stairs_isc_down_stair s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrides_isc_down_stairs_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak1 s_isc_speak2 s_isc_findEric s_isc_movemidstrideMThe charThe characterThe character must fThe character must facelda flagxand band beq correcand beq correctand beq correct correctand beq correct IS_FACING_RIGHT correctand bne turnit correctand bne turnit mustf correctand bne turnit mustface correctand bne turnit mustfaceleft correctand bn correctand beq correct jmp turni correctand beq correct jmp turnit correctand beq correct jmp turnit mustface correctand beq correct jmp turnit mustfaceleft correctand beq correct jmp turnit mustfaceri correctand beq correct jmp turnit mustfaceright correctand correctand bne correctand beq turnit correctAdvancejsr update_SRB_sp jsr step_character jmp update_SRB_spjsr update_SRB_sp jsrfacingleftjsr update_SRB_sp jmpand beq turnit correct jsr update_SRB_spand beq turnit correct jsr update_SRB_sp ldaand beq turnit correct Xbe*rv5*"->f /4 u^D^$8& #l
124 G@B _53 :fK;h7jtOZɂFh>Q!fBy2"I}iQ=O-@'l*.kB#]~zh]`9CcY5e>iʌ=X_Ϩk2 cBBd :H t$8\uϦ#2T5fY\(LK0XU2U=Z&OJGjr  u vXhh&d3N hve - :>"@Hz1mHѡMu)5~k<e/zN8&n?=pl=8T01uv9W>% v!xqHmh%8buhئP1#[b3_\8.Y{ygΩ}Hgh68v%anoi#vsf Q{7 L^w 7}2vg/xujqmYE!\#Tf)ct 5Kg=5v8"N:7L"cNԭ(x$4GvуRE0$IYEo#qEzCq‚:PY;'[>XkjHkkhkg^AZd8khnuHfJ<u%ǦKʚFllalCleargaClear allotherint &mattersdescrGet the lessondescriptorfrom thePutftePut the name oPut the name ofin the lessonboxNowNow updatechaNow update allcharavtcharactersNow update all charactersNow update all characters ldxNow update all characters ldx loopNow update all characters ldx loop ldaRESET_COMMAND_LISToraPicPickupPick up the command listsbclda current_lesson secFixpertimGet the personalfoGet the personal timetable codeGet the personal timetabletehNow getpointNow get theNow get the pointer toNow get the pointer to the commandNow get the pointer to the command list ldaNow get the pointer to the command list tay ldadeWe arewithWe are dealingherWe are dealing with Ericl_clockInitiInitiaInitializecurrent lessonpersonal timetablelesson clock lda stacommand listcommand list tay ldaInitialize theclock lda stasta counter_sp loop2 ldx counter_sp ldyInitialize the lessonInitialize the lesson lda staInitialize the lesson lda sta current_le
125 ~ veJKn3|Lak@GݫO2&'<W}Jhpc6 |M"~%'µX B 9#!pm"Cc\5bzcg[1߀xJH)2#;o0gߩs$ܴDEQ#!H~&%[bnI#ޚot bby a;FZ1hz_rM6Ra-=q+Hp9BF77l|U.4`mu1OP
126 7t5Ax+oe`4|!ل=l52>w. s|G3/G  } 7Y7+r[\=a5g_#fYLTm5@R3b?R56PV^eku!Mq(iC/|Rt)CsF}hneI;/r _i *5> u/b$c/1*c5M|Qbd GI
127 atTp|%p,5 C-356Xlq}cڊjթ<Atpba @s</=L \lXY>Vo"LK1;#vY%vt Ik,uop`lQ29M~mmAGq V(*-yNuHz3t8gao=(j9c-AnH}++, 938M߭kPs228زmS xvPsson_indexchangeInitialize the lesson lda sta current_lesson_index jsrrtInitialize the lesson lda sta current_lesson_index jsr change_lessonin the lesson boxin the lesson box ldain the lesson box lda dbugin the lesson box lda dbug beqand bne otherdir deccpx dbug beq dbug ldaUpdate the SRB ldx loop3 lda stasmc_ptimetableldy current_lesson txa clc adc staLastNow the commands staReset all the game flags ldy lda loopf stait in the lessonuni_subcom_highlesson_statuscont_subcom_highreset_flagsmatters jsrResets the game flagsfree_r7free_r8game_statusLesson status flagsSpecial playtimeLocationsnextKeep thespecial_playtimeStampede control signalsstampede_signalsGame status flagsGenerate a randomto set incMake a character go to a randomnearbyeors_restartclock cmp bcsEntrys_msg_sitdowns_2000lines_eric s_tell_enistein s_tell_angelface s_tell_boywander s_find_eric s_follow_boy1 s_goto_random_trip s_write_bl s_find_seatcommandtab_locss_restart_nodinnerdinnerorget an entry 3_$-] ˁo"5/KK7B= &D "2Fn>bf%2C~E3xNN bFgT5t .V7{mX2Rp1BDS^E#8zU 8kyl:tR* 1jD> *+Fd^]1 ]q 2bw/Ң}D yB^6M onyF7n)o"ntry point when update_SRB_sp has been call ldycalledEntry point when update_SRB_sp has beenstep_character_exjmp step_character_ex onlystep jmpopeNooperations_s_nopStep ldanoisubcommand ldabeq noisubcommand staStepSte ldacommand_list_lowgobottomfloorjmp setdestnotatstair2notatstair1notatstair3Not on the sametake_left_stair_upcmp bcctakeThis iseasyIs the char alreadyrightsidetake_left_stair_downtake_right_stair_uphaveBut they are not reachable fromreachto figure out how toInterpreInterpretdecodPreparacommand in thePrepara pointerexPrepara pointer to commandexecutionPrepara pointer to command execution andparamsPrepara pointer to command execution and gets_stand_upGethas been ldyhas been set by ldyhas been set by the caller ldycallerhas been set by thesta tmp0 lda stalda jmp setdestTell him to go upstairs lda staShould take stairs at STAIRLBOTTOM ldatake_right_stair_downcmp bne midfloorror bcs onlystep jsr update_SRB_sp decFigure out which stair to us/ ? @nn{: A"#q B ǫ CKK> D||o E#%cz F%%-A GWWb H. Iqz J() KGH LJKz M'($2 N/ O2 PEF2 Q]^n Rnn: Ss# T??f U#  V- W,.BAѮ,֥VJEqqq84zB6Y'/qf,ohz5Azz1/1/Ao/3Ak/N@N*M8OL]4z7l-VCv{5AO7 z8I[pk(z:$f
128  /2kkFmOS(~@F!CP8_uu q=Cz g`<OO2_A)/Y'g`Ehl o1qzdڠy,ZYD> <$gz}i
129 bb`hB~!*8T*e%0ms5qWYOyGd(gJA^ ]tq@ ='ӓ%a!V
130 _Wnd bne notyet jmps_sit_char notyetstanduos_sit_char notyet rtss_sit_char notyet rts standups_sit_char notyet rts standup jmpcharacter needs to turn round bne notyet lda E jmpcharacter needs to turn round bne notyet lda Eric_ jmpcharacter needs to turn round bne notyet lda Eric_flats jmpcharacter needs to turn round bne notyet lda Eric_flags jmpcharacter needs to turn round bne notyet lda Eric_flags ora jmpcharacter needs to turn round bne notyet lda Eric_flags ora sta Eri jmpcharacter needs to turn round bne notyet lda Eric_flags ora sta Eric_fl jmpcharacter needs to turn round bne notyet lda Eric_flags ora sta Eric_flg jmpcharacter needs to turn round bne notyet lda Eric_flags ora sta Eric_flgag jmpcharacter needs to turn round bne notyet lda Eric_flags ora sta Eric_flags jmps_sit_char notyet rts standup lda Eric_flags ora sta Eric_flags jmps_sit_char notyet rts standup lda Eric_flags and sta Eric_flags jmpC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\init.sSecminis_mini_walkaboutThbeen raisedreachable fromThis is notdirecThis is not directlyurelaThis is not directlyThis is not directly related toscripThis is not directly related to anyThis is not directly related to any scriptusbut usedbut used bys_walks_walk_updopointer incDoDonecomthsis_find_seatcoordsValid seats in evenfacing_rightora bneZReturnsit lda stanoturnsitme notyet bccThe character faceschairbeside acharisstaircasemaybe1cmp ppp bcss_2000lines_eric s_tell_enistein s_tell_angelface s_tell_boywander s_find_eric s_follow_boy1 s_goto_random_trip s_write_blrmpmiddle_floorpppthe otherseatMake a character find aexam_roomnoret1We are in the reading room cmp bccnoret2We are in the map room cmp bcccheck_chairTrick to reusenoretin the roomwallWe are to the right of the map rooms_usc_lchairroundTurn himWe are facing right ldaWe are in the reading roomppp bcsbcc noret1 bccbcc noret1 bcsbcs maybe1 bcsbcs maybe1 bccbcc exam_room bccbcc exam_room bcstor to read lda ldyoverlayLoad everything intoSndStopjsr _init_irq_routine jsr _init_tine jsr _init_print restart jsr SndStop inc silence_sfx jsr InitMusic jsr _init_screen2 dec silence_sfx jsr _init_irq_routine jsrLoop_init_randgrammar that goes toLoadOverlayActivate overlay ram jsr _init_disk jsrfpIncrement addressreg0reg1reg2reg3reg4reg5reg6playerUpdate galaxy and planet based onreg7_jumpAnd now go to current planet lda _currentplanet sta _dest_num jsr _infoplanet jsr _makesystem jmpdonegalGo to current galaxy ldx _galaxynum dex beq donegal stx galcount ldx stx _galaxynum loop2 jsr _enter_next_galaxy dec galcount bne loop2excepttablesNumber of sectors to read Just the originalmodelsInit_DoubleBuffOffjsr load_mission ldx stx escape_pod_launched stx game_over stx _numlasers stx _ecm_counter stx righton ldx stx player_in_control stx _docked stx _planet_dist jsr InitPlayerPos jsr InitPlayerShip jsrreadingRoutine to increment diskmusicprocedureink_test_loopjsr _init jmppaBj  B   A j --A
131 ;/ v w2 
132 
133 B
134 s ..n2j 
135 
136  -<3j ?AG3 =A3j BA,B,,,is documentos\Personal\oric\mios\sd\Skool\data.s/ncb/target/Skool - Win32 Debug/ncb/target/Skool - Win32 Release/ncb/versioninfo/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\params.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\graphics.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\auxiliar.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\c.mig@ x*1  `Zx@ @sbMS[YW@hhH @@QMTH%  @u sfMNB` .M)ARO@@"@@" P C(DbMB P1E @ ;¥Ps8 4@  AfrombitmaskGet flag byte ands_goto_randomSet it oras_get_flagbyteand store in y and acur_command_lowMain ScriptPrepare a pointer to command execution lda stas_unflag_eventsmc_bitmasks_write_bl_cs_dinner_duty s_do_class s_end_game s_ctrl_einstein1 s_ctrl_einstein2Now the commands lda starts new_pace jsr randgen asl rol tmp and clc adc ror staplapla rts new_pace jsr randgen asl rol tmp and clc adc ror staphprandseedcli ldabeq new_pace ldajsr randgen asl rol tmp and clc adc ror starorTryingOTrying to avoidOricutronflagxnosettestmeAvoidOriupassed in regwithinorigin cmpThe signal has not been raisedfind out the direction he should besoaboutThe time has come to stop movings_move_untilbne turnit correct decidentifier beqterminateoccursneedshas come to stop movingdown a few times or until a certaincommand pointer incMini ldyMini wa ldyMini walka ldyMini walkabouts ldyMini walkabouts to perfo ldyMini walkabouts to perform ldyThis is alwayss_moves_move_until_exB  B  A  
137  A   BA2B|bc-.345<=>;?EGHM9:PQRS7\68DFVZd`pqrxyz{|klmnwtuv}~"012@AKTU^_%)*'(a, #!$&+/C] xV{$7p BrECul TH` ~E` jho 
138 V<;#x{*< E2~zpmmge "uH!m $)>Вئ&{Em
139 H ݒe$#=_#83B B a B m m f abA B  m ffA
140 md mk eeBBAyBmBmmm~YE?=0zOQ.] ,|pH> I 
141 
142 =1E!Cs'Q=2h=/U=  ?{:Ab\mC0Key F#[oE/_N/?P|%1!E4`l=1XRcAs,2 ~eE *0 Fv[7= #G;/R9@ F C   B B `a B  ^^j 
143  A  c
144 ~  $   8: @@* >> ZZ1 ??1 <={ DDc << [\  () aa5 B { VWH uH 3 2 !e "P| #D $efD %WD & '{ (Bd )ga *(({ +&( , 
145 XW -YYN .L /PQ0 0F 1 2$7 3A 4` 5%(K 6JKF 7KK G 8QQa 9B :2h ;oonG <|G = > ?@G @hh AG Bimk Cy D!M ERC F  G\\ā H% IV J KPPz L M N=? O Pa Q a R"##a S>?x T9 U  V~ Wef" X9 Y(b Z<<OL [u \D ] ^12c _-. `KQa aJ b=>a c
146  md dR e6 fpB g
147  hUVp i jm kgk' lk m,| nEGC oLD p| q% rC sW t\] u_`< v wYZ~ xgh yPP{ z/l {Tm |b }| ~Q ӎ > bm 56ԭ ry|   mmC qrq 
148  4G @Ad gh J | LL~   >  VWI {  Za ((a ?a a ~ ^^ qsa XY> e  J == deTH 34 <<   pp  ::    y # 2D ,,;# ABH np  o   K EEA~ G wxG 8<G @CG 
149 G G I ?=  CC`|BAA3~e
150 uzM
151 M
152 u|ވWD~}H:l|M
153 ib{Zr~1,B`E0FF/aaM
154 M
155 FWok!|{z- isztbu{ZB>a`Z yBuY;|33{{߭$v13<GM
156 ƊM
157 7]3RaZ%/{mbybM
158 M
159 M
160 M
161 M
162 bʌ5D3~M
163 M
164 M
165 g
166 xdCuʌƊ%VRM5v;o<Wzczss\9a a#ahx9 S~-A" 7 ~ t9ent positionpositionat the currentindicatedand wthe subscanand patpatldx savY ldysimply rotate the pattern to the rightnew_colsimply rotate the pattern to the right jsrnew_columnst_new_columnprint_speech_bubbleUsed by the routinethe carry flagoffabout to speak ismomentspeaking at thes_isc_speak1Used byUsed by theroUsed by the s_isc_speak1passeregis passed onis passed on regT sec ldavisibleCjh sec ldaCheck sec ldaonscreeonscreenbubble_lip_colFor the speech bubbleis onscreen ldais onscreen lda bubble_lip_colfreeis onscreen lda bubble_lip_col bneAsAs bubble_lip_col cannotsomeAs bubble_lip_col cannot besomeosomeonespspeakingis onscreen lda bubble_lip_col beqNonNoonespeakinNoone isletNoone is speaking sospotN ldynoinccpx beq noinc inyNo idea why ldyNo idea why the specc ldyNo idea why the speccy ver ldyNo idea why the speccy version does thi ldyNo idea why the speccy version does the ldyNo idea why the speccy version does the following ldyfollowingNo idea why the speccy version does thecpx beq noinc iny noinccpx beq noinc iny noinc stygeCaCalculatespeof thespeechbubbleof the speechof the speech bubble ldaof the speech bubbleof the speech bubble deyof the speech bubble dey deyof the speech bubble dey dey styspeech_bubblspeech_bubble_bubble_rbubble_rowof the speech bubble dey dey sty bubble_rowpos_coof the speech bubble dey dey sty bubble_row ldabubble_and stabubble_coland sta bubble_colReturnzindsucindicatingsuccessand car indicatingand carry indicatingand carry s indicatingand carry flear indicatingand carry clear indicatingCalculate theto screenCalculate the pointer ldxand sta bubble_col stxCalculate the pointer tax ldyStore itDump theCalculate the pointer tax sty ldyCalculate the pointer ldx ldyCalculate the pointer ldx bubbl ldyCalculate the pointer ldx bubble_row ldyand dld sta bubble_col stxsta bubble_col stxa sta bubble_col stxadc sta bubble_col stxlipspeech_bubble_lipOpen d ldx ldy loop ldainxendlldx ldy loop ldaOpen the bub ldx ldy loop ldaadc cmp sta bubble_col stxadc cmp bcc sta bubble_col stxadc cmp bcc nothing sta bubble_col stxadc cmp bcc nothing sec scb sta bubble_col stxadc cmp bcc nothing sec s sta bubble_col stxadc cmp bcc nothing sec sbc sta bubble_col stxadc cmp bcc nothing sec sbc nothing sta bubble_col stxs_isc_speak2 s_isc_findEric s_isc_movemidstrides_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_speak2 s_isc_findEric s_isc_movemidstrides_write_bls_2000lines_eric s_tell_enistein s_tell_angelface s_tell_boywander s_find_eric s_follow_boy1 s_goto_random_tripis onscreen lda bubble_on beqreturnmeis onscreen lda bubble_on bneis speakingis onscreen lda bubble_on bne returnmebubble_onRow of the bubble lipThere is a bubble onscreenbubble_loc_pof the bubblebubble_lip_rowColumn of the bubble lipdex dex dex dex dex bpl loop3 lda bdex dex dex dex dex bpl loop3 lda bubble_dex dex dex dex dex bpl loop3 lda bubble_on bedex dex dex dex dex bpl loop3 lda bubble_on beqdex dex dex dex dex bpl loop3 lda bubble_on beq skipdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble skipbdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble skipbubdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bub skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bub skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_l skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_lco skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_loc_ skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubbl  ڊ w  B  B ݒ 
167  
168 
169 ] A
170 N <>
171  AAB AAB    ss OP c w J !!В NQ@  F TUE5  Pf \\  ' A  7< !23{ "A #B $JJ %VV &22 'ئ (c )jkǫ *tu +fg ,rr% -<=5 .WS /s 0 1 2 3 4)*m 522O 6 7 8h 9RSl :f ;m <
172 6 = >bcc noret2 bccbcc noret2 bcsppp2sitmebcc noturn bccbcc noturn bcsbcc noturn bcbcc exam_room bcbcc noret1 bcWe are in the reading room cmp bcscmp ppp bccWe are in the map room cmp bcsWe are in the reading room cmp bccmp bccmp ppp bcxcmp ppp bcWe are to the right of the map room walldbuWe are to the right of the map room wall ldybeqqWe are to the right of the map room wall ldy dbugWe are to the right of the map room wall ldy dbug beqWe are to the right of the map room wall a ldy dbug beqWe are in the map room cmp bcs noret2dbug beq dbug stasaWe are in the white room cmp bcs noret2chairsPosition ofReadingbcc nocarry incupdate_SRBnocarry jsrnocarry jbase_as_pointer_j incadChange animatory state lda stasec adc stasec sbc stajsr update_SRB_sp ldaAuxiliarsfunAuxiliarTerminate uninterruptible subcommand lda stas_siot notyet bccs_sit_ notyet bccs_sit_char notyet bccdecCheck whether a character is beside aGet the direction the character is facing ldanotyet4 jmpReturns with the zero flagcoordinates ldanotyet2 cmp jmp pppWe are on the topcmp bcs notyet cmp jmp ppp2 notyet cmp jmpas thes_check_chairnotyet bccs_sit_chars_knock_and_sitthe right side cmpout of the chair next to the characterout of thenext to the characterW next dey bplWe next dey bplWe foun next dey bplThere i next dey bplThere is one next dey bplThere is one alr next dey bplThere is one already h next dey bplnext dey bplde next dey bplDeth next dey bplDethrone him next dey bplDethroneHe next dey bplHe was not s next dey bplsatHe was notC next dey bplthatsallnext dey bpl loopIt aws next dey bpl loopIt was E next dey bpl loopIt was Eric next dey bpl loopIt wasdey bpl loopsignalhas not been raisedAgo to a randomfacesis facing ldafind aA character wasdethronedA character was dethroned and itA character was dethroned and it was notPforwardstep forwardsavystep forward savystep forward savy ldystep forward savy ldy savxPlacecharacter is facing ldawhite room cmp bcs noret2zero flagreading room cmp bcsmap roomcorresPlace theunPlace the correspondantuninterrubuninterrupsubPlace the correspondant uninterruptiblePlace the correspondant uninterruptible subcommandPlace the correspondant uninterruptible subcommand lda stauni_siuuni_subuni_subcom_hiuni_subcom_lowisErTerminate uninterruptibles_usc_dethroned1beendethronvar7Deal with a character who has beencharacter needs to turn round bne notyet jmp s_sit_char notyet bccor down aGuide a character to an intermediateDelay timer before rising lda staThe nex lda Eric_flags ora sta Eric_flags bne s_sit_char next dey bpl loopThe next won lda Eric_flags ora sta Eric_flags bne s_sit_char next dey bpl loopwonThe nexts_usc_dethroned2standustandupstandup jsrupdate_Supdate_SRB_step_characteoncecpbmestepitbme stepitclcThis code ldaThis code is bec ldaThis code is because we ldaThis code is because we c ldaThis code is because we cannot ldaThis code is because we cannot inc m ldaThis coC ?5< @w AJ B C')/ DRTT E]] F/ G**l Hpq I J K L> M N>@V9 Oe  Pe  QkkJ RAA Szz Tgh UBB V W X YK%S ZSTK% [}~K% \DKK% ]` ^B _33G `H a b ci d e fG gI hyzI5 i I jAB kB*Au-bת2czV17BΪ#sܦNQ3s_SI3uxd(bnL inc bubble_loc_p bne noinch incIt got out of sight jmp skipbubble cont sty bubble_col lda buble_loc_p sec sbc bcs nodech decIt got out of sight jmp skipbubble cont s inc bubble_loc_p bne noinch incIt got out of sight jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incbubremove_sremove_speech_InIndicateetab_bit8Second row ldauys_dinner_duty s_end_game s_ctrl_einstein1 s_ctrl_einstein2s_do_classinx cpx bne nonbyte iny ldx nonbyte dec tmp bnetmp1 ldatmp0 ldatmp0 inctmp0 b inctmp0 bcc noinc inctmp0 bcc nocarry inctmp1 bcc nocarry incmaybe1 cmp bcslist until it is time to start aTerminate aexecution lda stabytesroutine address fromby theoriginfromroutine addressFill interminate_commandspeakMake a characters_isc_speak2 s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_findEric s_isc_movemidstrides_isc_speak2s_isc_wipe1 s_isc_wipe2 s_isc_write s_isc_findEric s_isc_movemidstridevar5normallyvar6 whichhold the address of the nextvar6usedwaitingstopavobeabovefree2speakJumps alwayss_terminas_terminatetermina lda staterminate_sub lda staterminate_subcommand lda staterminate_subcommandTerminate a commandTerminate an interrTerminate an interrubtiblTerminate an interrubtible subthe character is to theto stopto thea few times or until a certainMake a teacher tell the kids to sitMove t incMove to the incMove to the next com incMove to the next command incPrepare jmpPrepare every jmpPrepare everything jmpPrepare everything to make the jmpPrepare everything to make the characetr jmpPrepare everything to make the character jmpspeak jmpPrepare everything to make theor to the next speakchMake astandindex in X temporary stxwas dethroned and it was notmalkeMake a character speakmakemake_charmake_char_speakMake a character speak the messamessageMake a character speak thepointepointedpointed by tmpointed by tmp0Thipointed byThis iThis is partThis is part of routinThis is part of routine Make a teacher tell the kids to go to a certain page in their booksThis is part ofto a certain page in their bookss_make_char_speakget_nexget_next_charof a message being spoken or written Used by the routinesUsed by the routineswrittenof a message being spoken orbeingof a messagespoken orspoken or written Used by the routinesin AGet poiGet pointer toGet pointer to sGet pointer to striTODOspeechbThe speechonscreis onscreensec sbc tax ldaGet teh c sec sbc tax ldaGet tehe sec sbc tax ldaGet the sec sbc tax ldaGet the characte sec sbc tax ldaScroll the message one pixel ldaScroll the message one pixel smc ldaScroll the message one pixel smc_pc ldaScroll the message one pixel smc_pco ldaScroll the message one pixel smc_pcol ldapscreenasl loop_s_row rolasl ldy loop_s_row rolasl ldy loop_s_row ldanormalrolloop_s_rowdey cpy bnesmc_pcolinc tmp1 dey cpy bneinc tmp1 bne dey cpy bneinc tmp1 bne nocar dey cpy bneinc tmp1 bne nocarry dey cpy bneinc tmp1 bne nocarry iu dey cpy bneinc tmp1 bne nocarry inc dey cpy bnetmp1 e_loc_p skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_loc_p b skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_loc_p bne no skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_loc_p bne noinch skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_loc_p bne noinch inc skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_loc_p bne noinch inc bubb skipbubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_loc_p bne noinch inc bubble_loc skipbubblebubble_locpdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble inc bubble_col inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny c inc bubbde is because we cannot incmemP stxPut the cha stxPut the character in stxPut the character index in stxPut the character index in X stxPut the character index in X temporar stxPut the character index in X temporary stxbeq isEric lda staisEriccpy bnecpy beqtofloorSeekthiEndstand jsrothersenotyet4 jmp pppothersetcmp jmpnotyet3 cmp bcs othersetnotyet3 cmp bcs otherset cmp jmp pppnotyet3 cmp bcc otherset cmp jmp pppInitialize the lesson lda sta current_lesson_index lda sta tmp0 lda staC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\charset.schar_widthsCharacter widthsGet next char inc cur_char ldy cur_char bne loopst endnext lsr pat bne notnewscan inc tmp bne skip2 inccharset_col1Fontloopcharsta patsta col_now stxprint_string2Print ldx ldy loop_col asl col_now bcc noprint1tmp bcc nocarry inccol_now stxPrint the pi ldx ldy loop_col asl col_now bcc noprint1Print the pixels ldx ldy loop_col asl col_now bcc noprint1pixelsPrint theAdvanAdvance oneAdvance one column ldaAdvance one columnAdvance one column incAdvance one column inc tmp0loopst endAdvance one column inc tmp0 bnenocarry2Advance one column inc tmp0 bne nocarry2 incf inc tmp0 bne nocarry2 incfirst the inc tmp0 bne nocarry2 incfirst the basic inc tmp0 bne nocarry2 incfirst the basic pointer inc tmp0 bne nocarry2 inclsr pat bne notnewscan inc tmp bne skip2 incNow the p lsr pat bne notnewscan inc tmp bne skip2 incNow the patter lsr pat bne notnewscan inc tmp bne skip2 incNow the pattern lsr pat bne notnewscan inc tmp bne skip2 incsimply the pattern lsr pat bne notnewscan inc tmp bne skip2 incsimply rotat the pattern lsr pat bne notnewscan inc tmp bne skip2 incsimply rotate the pat the pattern lsr pat bne notnewscan inc tmp bne skip2 incsimply rotate the pattern to the pattern lsr pat bne notnewscan inc tmp bne skip2 incsimply rotate the pattern to the rig the pattern lsr pat bne notnewscan inc tmp bne skip2 incsimply rotate the pattern to the right the pattern lsr pat bne notnewscan inc tmp bne skip2 incsimply rotate the pattern to the right lsr pat bne notnewscan inc tmp bne skip2 incsimply rotate the pattern to the right lsr pat bne notnewscan inc tmp0 bne skip2 incI inc tmp0 bne skip2 incnotnewscansimply rotate the pattern to the right lsr pat bneIf it bec inc tmp0 bne skip2 incIf it becomes zer inc tmp0 bne skip2 incIf it becomesadvainc tmp0 bne skip2 incadvancethe b inc tmp0 bne skip2 incthe basic poin inc tmp0 bne skip2 incthe basic pointer inc tmp0 bne skip2 incDecremDecrement thecoluimncoluncouDecrement the coluncounteDecrement the colun counterDecrement the colun counter decDecrement the colun counter dec countcounter dec countcounter dec count bplloop_loop_charNotPreparenexPrepare pointer to thecolumPrepare pointer to the nextlda clc adcend_charcounter dec count bnecounter dec count bcounter dec count bmiWefinishedWe haveWe have finishednenow get thenow get the nextnow get the next one innow get the next one in thestringnow get the next one in the stringcur_char ldy cur_char bne loopst endcur_cnow get the next one in the string inccol_nowcur_charend_stnow get the next one in the string inc cur_charnow get the next one in the string inc cur_char end_stnow get the next one in the string inc cur_char b end_stnow get the next one in the string inc cur_char bne end_stnow get the next one in the string inc cur_char bne loop_ end_stloop_stnow get the next one in the string inc cur_char bneAlways end_stAlways jump end_stldy cur_charGet the ldy cur_charGet the next ldy cur_charGet the next charac ldy cur_charGet the next character in sc ldy cur_charGet the next character in screen ldy cur_charGet the next character in screen ldy cur_char smc_Get the next character in screen ldy cur_char smc_pstriGet the next character in screen ldy cur_char smc_pstringloop_char ldaGet the next character in screen ldy cur_char smc_pstring lda$12sta col_now lda tmp0 sta tmp ldaGet the next character in screen ldy cur_char smc_pstring ldxbeq e loop_char ldabeq end loop_char ldabeq end_st loop_char ldasimply rotate the pattern to thebut fir inc cur_char bnecur_char bnea inc cur_char bneputa b inc cur_char bnea blank col inc cur_char bneinc cur_char bnelsr pat bnelda dbug beqGet the next character in stri ldy cur_char smc_pstring ldxGet the next character in string ldy cur_char smc_pstring ldxloop_st lda dbug beqGet the next character in string ldy cur_char smc_pstring ldaloop_st lda stacounter dec count bmcounter dec count beqlsr pat ls bnelsr pat lsr pa bnelsr pat lsr pat bneblablank_cola blank column ldxsmc_pstringlda tmp0 staPreserve lda tmp0 staPreserve registe lda tmp0 staPreserve registers s lda tmp0 staPreserve registers stx lda tmp0 staPreserve registers stx sav lda tmp0 staPreserve registers stx savX lda tmp0 stasavXPreserve registers stxprint_charPrintPrint a characPrint a character at thePrint a character at the current pPrint a character at the current positionat the currbne nocarry inc dey cpy bnetmp1 clc adc bne nocarry inc dey cpy bnetmp1 clc adc s bne nocarry inc dey cpy bnetmp1 dey cpy bnetmp1 bc ldatmp1 bcc nocarr ldatmp1 bcc nocarry ldatmp1 bcc nocarry1 ldatmp1 bcc nocarry1 inc m ldatmp1 bcc nocarry1 incretcdbug beq dbug jsr get_next_char bne notzero retc sec rts notzero ldy bubble_on beqslide_char_bubbletext windowtextldx clctmp1 bcc nocarry1b incsmc_initmessage one pixeltmp1 smc_ ldatmp1 smc_init ldatmp1 smc_initp2 ldasmc_initp2smc_initpldx ldasmc_pcharWe notsubm ldaWe are ins notsubm ldaWe are inside a sub notsubm ldaWe are inside a submessage notsubm ldanotsubmWe are inside asubmessageWe are inside a submessage ldasmc_pcharsbeq end notsubm ldaGet beq end notsubm ldaGet next cha beq end notsubm ldabeq notsubm notsubm ldaIf we havejumpbne nocarry incendsubmnocarry rts notsubm ldanocarry rts en notsubm ldanocarry rts endsub notsubm ldanotsubm ldaM notsubm ldaS notsubm ldaZero t notsubm ldap notsubm ldapoin notsubm ldapointer notsubm ldapointer lda notsubm ldapointer lda s notsubm ldavar notsubm ldas notsubm ldav notsubm ldaAnd notsubm ldaAndGeMoveMove tocharacCCHeckChewhsymbolwhich refers to an entry in onedatenottokenpointer in thquestioquestionStoStore it in tvvarsubmessage processingsubmessage processing jmpsubmessage processing jmp process_submreturorigversioThe originalThe original version usesThe original version uses codescodes<constantcodes<constant(codes<constant(constantandcodes<constant(constantandconstant)proprocessedIUthinkI think I willtoketokenPrLook itnamesStoreproceprocessingjprocessprocess_subprocess_submand processed by theLook up the pointer in thejmp process_submC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.sstringsTextC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.hdefinestab_stab_sit_stab_sit_mstab_sit_msgapproprmesGet the appropriatetxaseCHAR_FIRST_TEACHER"toinch incIt got out of sight jsr render jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incTime before nextProtect the speechWe are inside a submessage stabitmaskssrb_bitmaskloop oraeor stamessage one pixel smc_initp lda sta tmp1 smc_initp2 lda stainx cpx bne nonbyte sta srb_bitmask ldx txa nonbyte dey bne loop ldx srb_bitmask bne set2 sta srb_bitmask lda set2 eor sta srb_bitmask2 lda srb_bitmask eor stalda bubble_row asl asl adc bubble_row sta tmp lda bubble_col lsr lsr lsr clc adc tmp sta srb_offset lda bubble_col and tax ldy lda sta srb_bitmask loop orabitmask_bubbleBitmaskOffset of thesrb_offset_lipOffset of the first byte in the SRBThis is to protect against corruptionIdemBitmasksEach entryThe room is identified byRoomBitsdescriptorsLessonTeacherlesson_descriptorsBits RoomIs it sta current_lesson cmp bcsIs it playtim sta current_lesson cmp bcsplaytimeIs itRing the bell jsr _pingcont sta current_lesson cmp bcsgame_modeSpecial playtime flagsindicatorGame modeA cont sta current_lesson cmp bcsAre we in cont sta current_lesson cmp bcsAre we in demo mode cont sta current_lesson cmp bcsmodeAre we in demoSe cont sta current_lesson cmp bcsSelect a cont sta current_lesson cmp bcsSelectG cont sta current_lesson cmp bcsGet the cont sta current_lesson cmp bcsGet the old cont sta current_lesson cmp bcsGet the old identifie cont sta current_lesson cmp bcsGet the old identifier cont sta current_lesson cmp bcswhereIndicates who is teaching Eric andGet the old identifier cont statxa clc adc staGet teh e cmp bcsGet the l cmp bcsGet the lesson des cmp bcsGet the lesson descrip cmp bcsGet the lesson descriptor cmp bcsGet the lesson descriptor clc cmp bcsGet the lesson descriptor sec cmp bcsGet the lesson descriptor sec sbc cmp bcsGet the lesson descriptor sec sbc tax cmp bcsGet the lesson descriptor sec sbc tax lda cmp bcsGet the lesson descriptoDFM
173 M
174 i By2-#@
175 1huu#E HB 3"b<0gR<<! 5E8acN0'DEJd-`_K8pBiTm~
176 RE%*6 cXڼ(M Kbmu^uP0eE{] ~~ xV{$7m6rECul G( THf~E  jHW  V< ;# {*< E1~zm mmge 6 >BMBm <7Mmk C"P @@@ @$ $@$  @IM]  b8M7M)) @ @=M@pTM!'&  @@|bM D22~eN E p F==# Gf Hww Ir JM  K  Lh M* Ngi@ O/5 P||u QMMB* R77$ SE0 Ty0 UI V W_a~f X Yiie  Z<=s [ \//K% ]NR# ^;# _;# `m< a/ b||4 cG5 dG eIt f`a gByyAk M
177 M
178 ^^u$7%+`2<9U6<5c/k0.7BE!8f "g#GR5  5xueK"#f
179 $ w%@/<#X0e $wGvM
180 per jsr _init jmp$f214ink lda sta $2e1 jsrC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\keyboard.sSet Z flag correctlyeventclc adc tmprow tax ldaoricskeeping it high hangs on someReadKeyboardKeyBankClear relevant bank lda staProcess keyboard jsr ReadKeyboard jsrlda sav_X ldx sav_Yirqkey read and timersav_APreserve registers statab_asciiphaTwilighteAYTellCB2rtiEnd of IRQACR lda sta $0303 lda sta $0302 lda sta $030b lda sta $0245 lda sta $0246 lda sta $fffa lda sta $fffb lda sta $0306 lda sta $0307 clizpTemp01Used in musicThe IRQ routine will runperiodtimerhas alreadyPittyBitloadirq_Asetupirq_Xirq_YClearBankAYRegDumphandler_init_irq_routine$0304Clear IRQ event lda$030fWrite Column Register Number to PortA lda staWriteDDRADDRBCarry should be clearpaper jsr _init_irq_routine jsr _init jmpACR lda sta $0303 lda sta $0302 lda sta $030b lda sta $0245 lda sta $0246 lda sta $0306 lda sta $0307 cliProcess keyboard jsraddressesRomAttrib_beq endw smc_pbeq endw smc_pcolumbeq endw smc_pcolumncode sec sbccharset_widthsloop_s_col aslsgta t loop_s_col aslst loop_s_col asltmp loop_s_col aslbeq endw jsrbeq endw jsr slide_cbeq endw jsr slide_charpreserpreservebeq endw jsr slide_char jmp loopwCorreCorrectbeq endw jsr slide _char jmp loopwCorrcercerntcenteNow centerNow center thetmp2tmp2 lsrloopctmp2 lsr taxtmp2 lsr tax loopcbeq endw jsr slide_col jmp loopwsliloopc jsrslide_colloopc jsr slide_colloopc jsr slide_col dexloopc jsr slide_col dex bplloopztraKeepthe columnscharet_widthsdey bpl loop ldadey bpl loop lda dbug beqdey bpl loop lda dbug beq ddey bpl loop lda dbug beq dbugbeq endw stysavjsslidedbug beq dbug jsrslide_coldy iny jmp loopwRecover tmp1 to old value lda tmp1 sec sbc sta tmp1 ldaRecover tmp1 to old value pla sta lda tmp1 sec sbc sta tmp1 ldaRecover tmp1 to old value pla stabeq printit lda sta tmp0 lda staNow dump the buffer into the screen lda sta tmp1 lda stacharacter inallIf we used themThe character is passed on regline lda ldy loopso weGet next character beqscroll the wholethe zero flagpagesAs char bitmaps rely on differentpixel bits passed inwith the carry flaginsertingSlide a message character intoGet he pixel value into the carry asldump_text_bufferincrementinto aslide_col_bubblenext character incadc sec sbc first_col bcs maybe1 sec returnme rts maybe1 cmp bcsnocarry2 smc_pchar ldasta tmp smc_pcol ldamemorynext character of a messageenoughloop_s_colDumps a textBufferwidthThis always jumps notnone and clc adc printit ldx stx tmp0 ldx stxM lda sta tmp0 lda staIs it lda sta tmp0 lda staIs it the libra lda sta tmp0 lda staIs it the library lda sta tmp0 lda stalibraryIs it theisplaytime lda sta tmp0 lda staIt is isplaytime lda sta tmp0 lda staIt i isplaytime lda sta tmp0 lda staG isplaytime lda sta tmp0 lda staPoi isplaytime lda sta tmp0 lda staPoint to REV isplaytime lda sta tmp0 lda staPoint to REVISION isplaytime lda sta tmp0 lda staPoutesRom addresses *constantsGameAttributes *seeCharacter flags field Original Spectrum flags fieldidentified byink lda sta $2e1 lda sta $2e2 jsrink jsr _init_irq_routine jsr _init jmp$f210paper lda sta $2e1 sta $2e2 jsrpaper sty $2e1 sty $2e2 jsrpaper sty $2e0 sty $2e1 sty $2e2 jsrpaper ldy sty $2e0 sty $2e1 sty $2e2 jsrprocess_user_inputkey_routluser_keysKKeKemapKeyKeymap tablKeymap tableOk a key waspressedCall the routine jsrCall the routine jmpKeymap table user_keKeymap table user_keys2user_keys2_smc_routineSoSomekeSome keysSome keys must noSome keys shaSome keys shallSome keys shall be readSome keys shall be read with repeSome keys shall be read with repetitionsSome keys shall be read with repetitions cpxSome keys shall be read with repetitions cpx bcsSome keys shall be read with repetitions cpx bcs _smcSome keys shall be read with repetitions cpx bcs _smc_routSome keys shall be read with repetitions cpx bcs _smc_routineSome keys shall be read with repetitions cpx bcs _smc_routine ldSome keys shall be read with repetitions cpx bcs _smc_routine ldxSome keys shall be read with repetitions cpx bcs _smc_routine ldx staSome keys shall be read with repetitions cpx bcs _smc_routine ldx sta oldKeySMCI jsr ReadKeyNoBounce beqIf SHIF jsr ReadKeyNoBounce beqIf SHIFT is pre jsr ReadKeyNoBounce beqIf SHIFT is pressed jsr ReadKeyNoBounce beqIf SHIFT is pressed pr jsr ReadKeyNoBounce beqIf SHIFT is pressed process al jsr ReadKeyNoBounce beqjsr ReadKeyNoBounce beqelsIf SHIFT is pressed processalwaysjumps isplaytime lda sta tmp0 lda staclc adc tmprow tay ldabeq loopbne loopbne foundbne found foundbeq contseabeq contsearchCall the routine ldx jmpSome keys shall be read with repetitions cpx bcs _smc_routine ldx sta oldKey ldxSome keys shall be read with repetitions cpx bcs _smc_routine ldx sta oldKey ca ldxSome keys shall be read with repetitions cpx bcs _smc_routine ldx sta oldKey call ldxSome keys shall be read with repetitions cpx bcs call ldx sta oldKe(H|\Gc !sM &%a<G8_8oAn4dKLgj?r3~j!!3b,g|Fx
181 6zg# z<o('t3' B  "mM @rhtHM4ZuYդyQ ! *q+|#Zj8Ϊd/x<7pj57ވCyGi !$d7OGThK;\u}hGA@BrE7^~bXL2 [}sju7{u"syDL WIi q^q%QnsM/VV!|xjdh11f[hkKؐho7mI`Gb*n2YP%=c *VTD$r %[n`hXWgJn`:mE0 -6iFiic'/$ ic9hnd֥C]ga(4q[ t: ϋm@[JO>f{ȶR*pw/_3i/tvsQB*7zQtc }M*ISu19WY{`] m*2A] 5AT Q#gNKMrU ^A^gp"P|qG7В
182 Kje5}\/="n3,0,Vio1K>le_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy b inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont con inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont cont inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont jsr cont inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont jsr remove cont inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont jsr remove_ cont inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont jsr remove_bubble cont inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont jsr remove_speechbubble cont inc bubble_loc_p bne noinch incdex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont jsr remove_speech_bubble cont inc bubble_loc_p bne noinch incIt got cont inc bubble_loc_p bne noinch incremove_speech_bubbledex dex dex dex dex bpl loop3 lda bubble_on beq skipbubble ldy bubble_col iny cpy bcc cont jsrIt got out of cont inc bubble_loc_p bne noinch incIt got out of sight cont inc bubble_loc_p bne noinch incIt got out of sight jmp cont inc bubble_loc_p bne noinch incIt got out of sight jmp noinch cont inc bubble_loc_p bne noinch incIt got out of sight jmp skipbubble conte""text-h""text.""text.h"SearchesSearchFound thePreserve reg x tax bne cont rts cont ldy loopoutsavexPreserve reg x tax bne cont ldxlda sta tmp0 lda staGet charGet char beqzeIf it ismessagesSit downTokenextrasNames and somemc jmpclc jmpsec jmpsec sbc jmpsec sbc ldy jmpsec sbc ldy s jmpsec sbc ldy st jmpsec sbc ldy sty tmp0 jmpsec sbc ldy sty tmp0 ldt jmpsec sbc ldy sty tmp0 ldy jmpsec sbc ldy sty tmp0 ldy stt jmpsec sbc ldy sty tmp0 ldy sty tmp jmpsec sbc ldy sty tmp0 ldy stybne nocarry2 incSave the and asl rol tmp and clc adc ror staror tmp bcc noset lda oraSave the carry f and asl rol tmp and clc adc ror staSave the carry flag and asl rol tmp and clc adc ror staSave the carry flag and clc asl rol tmp and clc adc ror staSave the carry flag and clc adc asl rol tmp and clc adc ror staSave the carry flag and clc adc ror asl rol tmp and clc adc ror staSave the carry flag and clc adc ror staIt got out of sight jsr jmp skipbubble cont sty bubble_col inc bubble_loc_p bne n
183  ڊ ~$U=<w<pm*K5S11b=/9t${- /tsǥǮ2$fi Gl
184 $`cYw2JВ<B1@5BBFE5{CCoEB HyuH3Q2eP|[q+r B1leDDWDm!25{m/*6PfBd| ga='A{OjXWN(2L{0Fݒ<z z$7.(z'=A`K=;/Qw2F GaB2hnG|G(mkO/88}@GXeym{:2f jGkqyئcǫ!MRCYz &|M"h>_#Bā%VRM5v;o<Wzczss\9a a#ar sec sbc tax ldasta le cmp bcssta lesson_des cmp bcssta lesson_descriptor cmp bcsGet th lda sta tmp0 lda staGet the teach lda sta tmp0 lda staGet the teachers lda sta tmp0 lda staGet the R lda lesson_descriptor cmp lda sta tmp0 lda staGet the room lda lesson_descriptor cmp lda sta tmp0 lda staAdd length to pointer iny tya clc adc tmp0 bcc nocarry incconsecuconsecuticonsecutivezerosSkip consecutiveSkip consecutive zerosloopsSkip consecutive zeros loop2loSkip consecutive zeros loop2 inyAdd length toiny tya clc adc tmp0 bcc nocarry incAdd length to pointer tya clc adc tmp0 bcc nocarry incWnWrilineWrite alineotext intographtext into atext into a graphicceand centerwrite_twrite_textFirst clearbuffeFirst clear theline ldaline lda lline lda ldyaddreaddress isaddress is storedaddress is stored intext indey bplNumpixelavaipixel columnsavailablepixel columns availableloopwendwwnbeq endwednwenwfrom here and processed by theAdvance the pointer incbeq endw smchx 9 S~-A" 7 ~ t9{5mbOLtUnuODc~ea #h>CHMRW\lfymJamdR[Lj6pBpm'k,|CLD|%CW<~{/lTmb|Qӎ>bmԭ|. O]CEDDEEnrEED#EDFDeEDE
185 E5EEEFg~EDEDDREM  q%l=
186 v4Gd$*sJ/@/|/3yuB*~qzl>Nz$/`mE0y0*Im 8Q=l>{22V9Zaa?aax3n2~a<>e J9s#TH\ff=K%`#]z<3G33y#2DB;#bIGHoAm<# GjK/-4 iA~WGI?=c%9~;BظyGľ_?mHOpJg?#bbd|Z !p}EN957o8!!<.`P o?):!  @*@!  B
187 @B@  @D$ %'=%V9<b 9[\9XD1o&Yz
188 6?=D czGn/E`_(ֱA~Q= D 9U=qzKoW0B*S-AH
189 El=D1!L1lIB` zN2s8#E=G M  9*hCuRg5EVL.J=W( 908%xSDE=ca
190 ~ B~ ,*  Dqj RE% t -XB(| eE$`G %Y I2O7K. rE~z.4Q/H> -!MG~E zN d> goF`{-C
191 n2 R{|/kEH E2 w2M R 2 W ;#Z"K\ %t,h3E~G
192 8 ~YEBd+e ȞIpCOA A %E c*_#9 O kos8% 2RA E2hhoM* ps#U 6|M  B 42-mdfl" JsE"Ph:B Pz s1 E{:/( X+ //l}2QS#_E  bN/@NCF( 2#`ڊȟfs
193 F>;/#H(int to REVISION lda sta tmp0 lda staprintit2Point to REVISION bneThis always jumps isplaytime lda sta tmp0 lda staPoint to REVISION l bnePoint to REVISION lda bneprintit"tex"SeemidstrideDo we have to moveC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\eric.sfacingright2Move him up a stair jmp up_a_stairjump_Ericwrite_Ericis on aleft_EricPerfectdown_a_stairfire_Ericmustis_on_staircasenotstaircaselda flags and bneIs he on the bottom floor ldaup_a_stairFacing right doit2 jmpschoolIs he at the right of thefacingrightTurn him jmp change_directionmiddlebottomlda flags and bne notstaircaser jmp notstaircaselmiddletopjmp doit2Routines to deal withhit_Ericcan perform aIs he on the top floor cmp bne middle cpy bne proceed rts middle cpy bne otherwall rts otherwall cpy bne proceed rts proceed jmpobstaclethere is nonotleftstaircaseHe is at the middle or bottom floors lda pos_col cmp bneIf so turn him round jmpterminate_isccharacter needs to turn rou 3I-
194  3`7 t;  R 5{ӎ>pBi{ǥ) aT>a')-w<3 Q3<xaS(H[02{*`G3#aU$xeВ$7M L# Wݒ x{?a.
195 '1"Ze$L|s/Q{%& ZaG "/PMtga,@By ԭ,|p3 /!AB aeU a\gP|%C(n F9aC0t J8F3N<v;H~eF Iw} ba;!$! I&  X>N >h] GBxF G:7GD$Mac D|Tm~v RCHJdbm|.;K8E0[34G !)|S pm O@GB2m= h O?
196 8l
197 ئCq
198 9m" y0Vmm7m {#Jl
199 AnG]
200 
201 m
202 |G?Opk0(@ G3yF l
203  m$fGaJ@CPie$Ǯ,m2f7q`pK%C5key qPfmbK'n@ m<b3"5Gj &2LjD'4dD&81*<&m6bfl;N0H < 2D10<@ XW/yP<=Q'c`xLDru^y+rWD(xVTyF5"8yAfc25*uR8j =
204 THA?8 #E5HDfV M5XWv4D<hz9<ǫx
205  uH!āJ z:/9 D# OL](z<H @PD!i Q ~=*O{5B9PH /Q    1lh(A*W>.K :%<4' hefO$ ijkgP% c`aYQR[Wd  
206  '
207     
208 $=6 2&=  >h  
209  . 
210  B,?jJC  X?:' c# BE(@6) 
211 WXYZ]K` EOT651$     &$ JS<7@ E$_D# U)0\C >5( 2/"TUV C@4w [\]^^L>C-+I\+KLB <Ib0#M   F/5  # %;6! +D#]z<3G33y#2DB;#bIGH
212 Am<# GjK/-4 iA~WGI?=c%9~;BظyGľ_?mHOpJg?#bbd|Z %pEN957o8!!<.`P o?):! @ (@!  @B
213 @@  @D$ %'=&V9xb 9[\9XxD1輂o&Yz
214 6?=XD czGn/E`_Lp,tA~دQ= D 9U=qzKoW0MB*S-AH
215 El=F1!L1lIB` zN2sV#E=G ,0 M=/names/ncb/targetinfo/ncb/moduleinfo/ncb/storeinfo/ncb/iinstdefs/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\Main.c/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\engine.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\data.s/ncb/target/Skool - Win32 Debug/ncb/target/Skool - Win32 Release/ncb/versioninfo/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\params.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\graphics.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\auxiliar.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\cv"lʎ#VgE\LU9"xdשv;'5']qA/.w#6c(L m^${UEX}\/)|k0x#qu ab#aa@C:i\gGWJ,(\!!!H&,|LY
216 $FbF<kJ<N<H:pB8C z_}UuL*cE]Ӊ-(^\#!~;!uXKN"WN+ՙz/ #U sB4JwK"_ܦx6<Pf h ]N-7B
217 G OLD}O[N9txJ\9gg\t2{wNƎ!ښ{1eEƒ;e3S$,H6aj`s|amey
218 ^a7u`:o,d~#FA1gsX[*ioX0A[>${M ,w/l+ --4#y7N!/u\^G*:Bm3#&Mhs#Atqe3c6h%
219 Da
220 K%o?=o7 
221 harset.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\eric.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\init.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\keyboard.s&w qa v 68W
222 'E  X, 8/0/l}2QS#_E  bP/@NCF( 2#`ڊ~fs
223 F>;/#Hcc<0S:Q17p^P%Cv {5h}1t,js"tuA~$Be Nv1l*! "),)7cgi0tNocNE92{j 3C
224 ,J?,#"#R$70Dzd09hSD2!czQ!~eJt")$a(6tA`9 qhj-o#HD_]qDvM =n1w.kıe9D=e%ׁDGK[Q
225 t<Ge`oI`|)u fWoo`qte/9$2hubǫuXתQu 4$%hqnqt-!#?a/36NnH#E9u!v!jk,t<b @\gR2fCvr/2 [ 9g0z42n܊!g]yoAXiQR]~A5<e/a(~r/]zi%4 (fc%M5~sj~/V
226 ^W[=S`N 2}$zFw|Bl<3YC/V}_qP.L"#b4h$}Eby#]1$5KIT.
227
228 <m1X39 v%-Дd-jkQ{~D&!tͿ:oK7o^3L0~8f$a#"}?|-#1 C N-o}{:=m<A}T"& f;/hyTHfvgL>-f /!N' ~!A cD/ ,[G3BVAAgfKxkV ~bTɟ\n %-36b#,e %e`b<G+ ]ovEb1D
229 "ړ2$ɋ|qC#eL$=yreG=Zāl!~DZ[C)+ DCJ q6 2.2`#<#HK:uW?.5}L<8?cJi'D%*!JJQjYnggSw1i;Hg8)F(#x T'\8,HXhx@\D|4P(8K-.345<=>;?EGHM9:PQRS7\68DFVZd`pqrxyz{|klmnwtuv}~_aLNOTUWXY[^IcJ]BCbghijfos+etВ$7 M L# Wݒ x{?a0
230 'L3"Ze$L|s/Q{%& Za~~I "/PMtga,@By gԭ,|p3 /"ABv aeU a\FgP|%Cn F9aC0t J̰F3N>v; ~eF Iw} ba;!$! I&  ~>N >N] GBCF G:7GD$Mac DP~|Tm~v RCHJdbm|.;K8E0[34G !)|S pm O@GB2m= N h O?
231 8l
232 ئ[Cq
233 9m" y0Vmm7~m {#Jl
234 AnG]
235 
236 m
237 |G?Opk0Nu G3yH l
238  m$fGaJpC ie$Ǯ,m2f7qpWK%xC5ktey qPJPfmb`ԃK'nB  m<b3"7Gj  E&4LjVD'4dD&81 Ӄ*<&m6bgfl;N0Hp~< 2D1<(ѱ XW/y<=Q'cMFLDru^y+rMWD(xVTyF5"8yCfc@25*uR8j?
239 THAA8 #E5DfV M5Wv6D<z9<ǫ 
240  uH!āJ z:/9 D# OL](z<H @PD!i Q ~=*O{5B<JP /S    1lh+(AW>.K : (%<4$ Qhef % Rijkgc.E`aYQR[Wd  
241    '
242    
243  '$=62 = >h  
244  . 
245  -B  E?jJ<X?# ' cGB(*@6 
246 MWXYZ] `EOT6%51     &$ LS9< @E$_D# U2)\ C)>5 #2/TUV C@ 4 wN[\]^^>/C+I\+KLD <Ib$0O   1F!5 # %8;! +DgE\LUxdשv;'
247 ']qA/.w6c(L m^${EX}/)|k0x#qu ab#aa@C:i\gGWJ,(\!!!H&,|LY
248 $FbF<kJ<N<H:pB8C z_}UuL*cE]Ӊ-(^\#!~;uKNWN+ՙz/ U sB4wK"_ܦx6Pfh ]N-Hmhh [0'V9Bv˫m"+X1fJFbm_nNtSz ulabw25M
249 ݝdF|yfqOh.QJ2@xbLDF(z!^7~"D4=xNjsm5 (i{T/rqnGBOHM'= BE !I_wy_f2-՛`_A4zU6$By% pnY4~C=  >bLѮI!i$*u!$ w `8vi1/N)_kqǥ #TN\z-g$v3 ݆CJtr~Yw`.~s۩k$f*YH4ؘ!=RSk# [.egejJ0) ~8i j>q/RC3`2`O7E5=e=1^Gdv(\5EpYzSi Fow02mn5lMK|m!B7 8DE]\xS~$`|N Npz zsLn2WD8-pdm3ypWf>F>|d.pH\e6( B<N! W1.7+`dCflc96fi[~""D#:JPAӎj IdJKf4R!!E/1/# _# gvF<m-S<5j!I`1@fj3z|dwJI\bA_aDgg{wl
250 EhǮq
251 *L^4 5']qA/.w6c(L m^${UEX}\/)|k0x#qu ab#aa@C:i\gGWJ,(\!!!H&,|LY
252 $FbF<kJ<N<H:pB8C z_}UuL*cE]Ӊ-(^\#!~;uKNWN+ՙz/,0 M</names/ncb/targetinfo/ncb/moduleinfo/ncb/storeinfo/ncb/iinstdefs/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\Main.c/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\engine.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\data.s/ncb/target/Skool - Win32 Debug/ncb/target/Skool - Win32 Release/ncb/versioninfo/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\params.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\graphics.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\auxiliar.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\c!Skool - Win32 DebugSkool - Win32 ReleaseC:\Archivos de programa\Microsoft Visual Studio\Common\MSDev98\Bin\win32.ncbC:\Archivos de programa\Microsoft Visual Studio\Common\MSDev98\Bin\crt.ncbC:\Archivos de programa\Microsoft Visual Studio\Common\MSDev98\Bin\mfcatl.ncbC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\Main.cmainvoidC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\engine.s_teint_test_mesSBRSBSRBScrScreen refScreen refresh bScreen refresh buffeScreen refresh buffermTilefroTile mapmapcolcolumnrrowC:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\data.sfileDatascFirstrenFirst screenrenderjsrFirst screen renderFirst screen render jsrrender_scrrender_screerender_screenloopFirst screen render jsr render_screencounterFirst screen render jsr render_screen loopFirst screen render jsr render_screen loop dec coFirst screen render jsr render_screen loop dec counter bFirsty call ldxIf RIGHT SHIFT is pressed processTime lda sta $276 lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp do_lessonclock noscrollr cmp bne do_lessonclock jsr _scroll_left do_lessonclock lda lesson_clock sec sbc sta lesson_clock bcs nocarry decTime the lda sta $276 lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp do_lessonclock noscrollr cmp bne do_lessonclock jsr _scroll_left do_lessonclock lda lesson_clock sec sbc sta lesson_clock bcs nocarry decTime thelda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll notzero jsrDeal with lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll notzero jsrDeal with the less lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll notzero jsrDeal with the lesson timer lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll notzero jsrDeal with the lesson timer do_lessonclock lda lesson_clock sec sbc sta lesson_clock bcs nocarry decDeal with the lesson timer lda lesson_clock sec sbc sta lesson_clock bcs nocarry declda lesson_clock sec sbc sta lesson_clock bcs nocarry decDeal with the lessonDecrement lda lesson_clock sec sbc sta lesson_clock bcs nocarry decDecrement it by o lda lesson_clock sec sbc sta lesson_clock bcs nocarry decDecrement it by one lda lesson_clock sec sbc sta lesson_clock bcs nocarry decIs it time to change thedescriptor sec sbc tax ldajsr change_lesson notzero lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll jsrIt s jsr change_lesson notzero lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll jsrdoipressed processnotzerojsr change_harset.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\eric.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\init.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\keyboard.s&w qa v 68W
253 'E t")$a(6tA`9 qhj-o#HD_]qDvM =n1w.kıe9D=e%ׁDGK[(#x T'\8,HXhx@\D|4P(8K-.345<=>;?EGHM9:PQRS7\68DFVZd`pqrxyz{|klmnwtuv}~_aLNOTUWXY[^#$%& '()*,/012@J]!"Abghijfos+e2 [ 9g0z42n܊!g]yoAXiQR]~A5<e/a(~r/]zi%4(fc%M5~sj~/V
254 ^W[=S`N 2}$zFw|Bl<3Y/V}_qP.#b4h$}Eby#]1$5KIT.
255
256 <m1X39 v%-Дd-jkQ{~D&!tͿ:oK7o^3L0~8f$a"}|-#1 C N-o}{:=m<A}T"f;/hyTHfvgL>-f /!N' ~!A cD/ ,G3BVAAgfKxkV ~bTɟ\n %-36b,e %e`b<G+ ]ovEb1D
257 "ړ2$ɋ|qC#eL$=yreG=Zāl!~DZ[C)+ DCJ q6 2.2<#HK:uW?.5}L<8?cJi'D%*!JJQjYnggSw1i;Hg8)FHmhh [0'V9Bv˫m"+X1fJFbm_nNtSz ulabw25M
258 ݝdF|yfqOh.QJ2@xbLDF(z!^7~D4=xNjsm5 (i{T/rqnGBOHM'= B!I_wy_f2-՛`_A4zU6$By% pnY4~C=  >bLѮi$*u$ w `8v1/N)_kqǥTN\z-g$v3 ݆CJtr~Yw`.~s۩k$f*YH4ؘ!=RSk.egejJ0) ~8i j>q/RC3`2`O7E5=e=1Gdv(\5EpYzSi Fow02mn5lMK|m!B7 8DE]\xS~$`|N Npz zsLn2WD8-pdmlessonlda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll jsrNow move lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll jsrNow move the cha lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll jsrNow move the characte lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll jsrNow move the characters lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll jsrnoscrollNow move the characters lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_leftNow move the characters jsr move_chars lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_leftlda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_leftNow move the characters jsrNow mov lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_leftNow move Eric lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_leftNow movedeal_with_Ericold identifier cont staroutine jmpscreen lda sta tmp1 lda stato the midstrideavoidEricScrol lda pos_col sec sbc first_col cmp bne noscrollr jsr _scroll_right jmp noscroll noscrollr cmp bne noscroll jsr _scroll_left noscroll jsr process_user_inputW nomidstride jsr process_user_inputjmp avoidEric nomidstride jsr process_user_inputDonThime jsr process_user_inputTi jsr process_user_inputTime to che jsr process_user_inputTime to check the ke jsr process_user_inputTime to check the keyboar di jsr process_user_inputTime to check the keyboar dinput jsr process_user_inputTime to check the keyboard jsr process_user_inputTime to check the keyboard input jsr process_user_inputReloaEricsReloadREHHere theverHere the originaloHere the original version doessomethingstrangeHere the original version does somethingErimain actionappappropriatevalueto the appropriateset_Erset_Eric_timset_Eric_timerAsscaAssume weAssume we canAssume we can move andAssume we can move and putbottom floor ldatop floor cmp bne middle cpy bne proceed rts middle cpy bne otherwall rts otherwall cpy bne proceed rts proceed jmpmiddle or bottom floors lda pos_col cmp bnecorAssume we can move and put thecorrectTurn him lda jmp change_directionTurn him lda sta jmp change_directionTurn him lda sta Eric_t jmp change_directionTurn him lda sta Eric_timer jmp change_directionup a stair jmp up_a_stairTurnjmp change_directionround jmpjmp turnEjmp turn_Erijmp turn_Ericjmp turnEricIniti ldxInitia ldxInitialize ldxInitialize game va ldxInitialize game variables l ldxInitialize game variables lda ldxInitialize game variables lda sta ldxInitialize game variables lda sta last_char_moved ldxInitialize game variables lda staLEssonLesstimingInitialize the lesson lda sta current_lesson_index lda sta lesson_clock lda stadey bpl loopfspeaks slowly lda staCurrent speakingcur_speaking_charIt got out of sight ldx jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_s jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_speaking jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_speaking_char jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_speaking_char jsr te jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_speaking_char jsr terminat jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_speaking_char jsr terminate_comma jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_speaking_char jsr terminate_command jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_speaking_char jsr terminate_sucommand jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_speaking_char jsr terminate_subcommand jsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incIt got out of sight ldx cur_speaking_char lda stajsr render_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incit jsrIt go jsrIt got out of jsrldx cur_speaking_char lda staIt got out ofrender_screen jmp skipbubble cont sty bubble_col inc bubble_loc_p bne noinch incsightthe sub jsrthe subcomma3ypWf>F>|d.pH\e6(B<N! 1.7+`dCflc96fi[~""D#:JPAӎj IdJKf4R!!E/1/# _# gvF<m-S<5j!I`1@fj3z|dwJI\bA_aDgg{wl
259 EhǮq
260 *L^4U uments and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\eric.s&w a v 68W
261 'E nd fo jsrs jsrspeake jsrspeakercont sty bubble_col lda bubble_loc_p sec sbc bcs nodech decspeaker and rem jsr remove_speech_bubble ldx cur_speaking_char lda staspeaker and remove the spe jsr remove_speech_bubble ldx cur_speaking_char lda staspeaker and remove the speech bub jsr remove_speech_bubble ldx cur_speaking_char lda staspeaker and remove the speech bubble jsr remove_speech_bubble ldx cur_speaking_char lda sta45ݒH;|$)<)r%pEOyu\ptu,jyI¯amd2{1=q,`X-A{8fw2H(L_8;LAjj&@$4ď]a->QgLj[aZ"OO$ZQIffFJ8b /v w" lP[1*8r5f 5lav"75D? G46`bm&-1!c3"2+Et X9a ky$My03КD qi"'Nu<)
262 J3" 32DcƊj1\OJ( j]60gi4G="ڍd0e"6+HszJ +~D{58fv`vgIZa[Sxb-CNGp
263 _ [n;9 Xbe*rv5*"->f /4 u^D^$8& #l
264 G@B _53 :fK;h7jtOZɂFh>QfBy2"I}iQ=O-@'l*.kB#]~zh]`9CcY5e>iʌ=X_Ϩk2 cBBd :H t$8\uϦ#2T5fY\(LK0XU2U=Z&OJGjr  u vXhh&d3N hve - :>"@Hz1mHѡMu)5~k<e/zN8&n?=pl=8T01uv9W>% v!xqHmh%8buhئP1#[b3_\8.Y{ygΩ}Hgh68v%anoi#vsf Q{7 L^w 7}2vg/xujqmYE!Tf)ct 5Kg=5v8"N:7L"cNԭ(x$4GvуRE0$IYEo#qEzCq‚:PY;'[>XkjHkkhkg^AZd8khnuHfJ<u%ǦKʚF
265 ~ veJKn3|Lak@GݫO2&'<W}Jhpc6 |M"~%'µX B 9#pm"Cc\5bzcg[1߀xJH)2#;o0gߩs$ܴDEQ#!H~&%[bnI#ޚot bby a;FZ1hz_rM6Ra-=q+Hp9BF77l|U.4`mu1OP
266 7t5Ax+oe`4|!ل=l52>w. s|G3/G  } 7Y7+r[\=a5g_#fYLTm5@R3b?R56PV^eku!Mq(iC/|Rt)CsF}hneI;/r _i *5> u/b$c/1*c5M|Qbd GI
267 atTp|%p,5 C-356Xlq}cڊjթ<Atpba @s</=L \lXY>Vo"LK1;#vY%vt Ik,uop`lQ29M~mmAGq V(*-yNuHz3t8gao=(j9c-AnH}++, 938M߭kPs228زmS xvP3_$-] ˁo"5/KK7B= &D "2Fn>bf%2C~E3xNN bFgT5t .V7{mX2Rp1BDS^E#8zU 8kyl:tR* 1jD> *+Fd^]1 ]q 2bw/Ң}D yB^6M onyF7n)o"2kkFmOS(~@F!CP8_uu q=Cz g`<OO2_A)/Y'g`Ehl o1qzdڠy,ZYD> <$gz}i
268 bb`hB~!*8T*e%0ms5qWYOyGd(gJA^ ]tq@ ='ӓ%a!V
269 _W(H|\Gc !sM &%a<G8_8oAn4dKLgj?r3~j!3b,g|Fx
270 6zg# z<o('t3' B mM @rhtHM4ZuYդyQ ! *q+|#Zj8Ϊd/x<7pj57ވCyGi !$d7OGThK;\u}hGA@BrE7^~bXL2 [}sju7{u"syDL WIi q^q%QnsM/VV!|xjdh11f[hkKؐho7mI`Gb*n2YP%=c *VTD$r %[n`hXWgJn`:mE0 -6iFiic'/$ ic9hnd֥C]ga(4q[ t: ϋm@[JO>f{ȶR*pw/_3i/tvsQB*7zQtc }M*ISu19WY{`] m*2A] 5AT Q#gNKMrU ^A^gpP|qG7В
271 Kje5}\/=n3,0,Vio1K>v"lʎ#VgE\LUxdשv;'5']qA/.w6c(L m^${UEX}\/)|k0x#qu ab#aa@C:i\gGWJ,(\!!!H&,|LY
272 $FbF<kJ<N<H:pB8C z_}UuL*cE]Ӊ-(^\#!~;!uXKNWN+ՙz/ #U sB4JwK"_ܦx6<Pf h ]N-7B
273 G OLD}O[N9txJ\9gg\t2{wNƎ!ښ{1eEƒ;e3S$,H6aj`s|amey
274 ^a7u`:o,d~#FA1gsX[*ioX0A[>${M ,w/l+ --4#y7N!/u\^G*:Bm3#&Mhs#Atqe3c6h%
275 Da
276 K%o?=o7 
277 cc<0S:Q17p^P%Cv {5h}1t,jtuA~$Be Nv1l*! "),)7cgi0tNocNE92{j 3C
278 ,J?,#"#R$70Dzd09hSD2!czQ~eJt")$a(6tA`9 qhj-o#HD_]qDvM =n1w.kıe9D=e%ׁDGK[Q
279 t<Ge`oI`|)u fWoo`qte/9$2hubǫuXתQu 4$%hqnqt-#?a/36NnH#E9uvjk,t<b @\gR2fCvr/2 [ 9g0z42n܊!g]yoAXiQR]~A5<e/a(~r/]zi%4 (fc%M5~sj~/V
280 ^W[=S`N 2}$zFw|Bl<3YC/V}_qP.#b4h$}Eby#]1$5KIT.
281
282 <m1X39 v%-Дd-jkQ{~D&!tͿ:oK7o^3L0~8f$a"}?|-#1 C N-o}{:=m<A}T"& f;/hyTHfvgL>-f /!N' ~!A cD/ ,[G3BVAAgfKxkV ~bTɟ\n %-36b,e %e`b<G+ ]ovEb1D
283 "ړ2$ɋ|qC#eL$=yreG=Zāl!~DZ[C)+ DCJ q6 2.2<#HK:uW?.5}L<8?cJi'D%*!JJQjYnggSw1i;Hg8)FHmhh [0'V9Bv˫m"+X1fJFbm_nNtSz ulabw25M
284 ݝdF|yfqOh.QJ2@xbLDF(z!^7~D4=xNjsm5 (i{T/rqnGBOHM'= BE !I_wy_f2-՛`_A4zU6$By% pnY4~C=  >bLѮIi$*u$ w `8vi1/N)_kqǥ TN\z-g$v3 ݆CJtr~Yw`.~s۩k$f*YH4ؘ!=RSk# [.egejJ0) ~8i j>q/RC3`2`O7E5=e=1^Gdv(\5EpYzSi Fow02mn5lMK|m!B7 8DE]\xS~$`|N Npz zsLn2WD8-pdm3ypWf>F>|d.pH\e6( B<N! W1.7+`dCflc96fi[~""D#:JPAӎj IdJKf4R!!E/1/# _# gvF<m-S<5j!I`1@fj3z|dwJI\bA_aDgg{wl
285 EhǮq
286 *L^4 ,0 M;/names/ncb/targetinfo/ncb/moduleinfo/ncb/storeinfo/ncb/iinstdefs/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\Main.c/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\engine.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\data.s/ncb/target/Skool - Win32 Debug/ncb/target/Skool - Win32 Release/ncb/versioninfo/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\params.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\graphics.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\auxiliar.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\script.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\charset.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\text.h/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\eric.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\init.s/ncb/module/C:\Documents and Settings\Chema\Mis documentos\Personal\oric\mios\sd\Skool\keyboard.s&w qa v 68W
287 'E #u(mT'[P,(8 H Xhx@D|4P-.345<=>;?EGHM9:PQRS7\68DFVZd`pqrxyz{|klmnwtuv}~_aJ]cbBCghijfos+eI

Properties

Name Value
svn:mime-type application/octet-stream

  ViewVC Help
Powered by ViewVC 1.1.26