;code du 1000d (version ST) traduit en rmac FLAG30=0;*T 0 ST,1 TT+68030 FLAGRY=0;*T 0 INTERPRETEUR, 1 RUN-ONLY FLAGTT=1;*T 0 TEST SUR PLACE, 1 DEFINITIF FLAG60=1;*T 1 TOUTES RESOLUTIONS, 0 RESOLUTIONS LIMITEES .68000 ; PROCESSOR FLAG30 NBLIGNE=120 NBCOL=160 TBUFLC=[NBLIGNE-4]*NBCOL P1:move.l 4(SP),BASEPAGE clr.l -(A7) move #$20,-(A7) trap #1 lea FIN,A5 lea 1000(A5),A0 move A0,USP lea 1000(A0),SP lea TRTOP,A6 ;MALLOC ;MALLOC:MACRO move.l SP,A0 move.l A0,(A6) move.l BASEPAGE,D0 sub.l D0,A0 move.l A0,-(A7) move.l D0,-(A7) clr -(A7) move #$4A,-(A7) trap #1 moveq #$48,D3 moveq #-1,D0 move.l D0,-(SP) move D3,-(SP) trap #1 subi.l #$4000,D0 add.l D0,(A6) move.l (A6),TRTOP1 move.l D0,-(SP) move D3,-(SP) trap #1 move.l D0,ZALLOC clr.b AESOK ;ENDM ori #$700,SR move.l (A6),A0 move.l A0,SP lea PILEUS,A0 move A0,USP andi #$23FF,SR bsr.w VDI100 move.l SP,D3 lea PILE+1000.L,A6 jsr MA95 jsr IMOORE0 bsr.s SETBREAK1 jmp OO.L SETBREAK1:moveq #$50,D4 add.l $4A2.W,D4 moveq #-1,D6 bsr.s GETSHIFT move D0,-(SP) S6683:moveq #$F,D6 bsr.s GETSHIFT S6684:addq #1,D4 move D4,A0 cmp.b (A0),D6 bne.s S6684 S6690:bsr.s GETSHIFT move D4,A0 cmp.b (A0),D6 bne.s S6683 S6696:dbra D6,S6690 move D4,SETBREAK2 bra.s S66A2 GETSHIFT:move D6,-(A7) S66A2:move #11,-(SP) trap #13 addq.l #4,A7 rts CARCOM="'" PILEINT=5 NBCANAUX=103 INDEXP=997 AESOK:dc.w 0;1 OCTET FICHOUV:dc.w 0 COLRES:dc.w 0,0,0 dc.w 0,0,0 dc.w 0,0,0 WIDTH2K:dc.w 3;| HAUT2K:dc.w 3;| MD842:dc.b 129,0,32,1,15,1,108,0,17,1,25,1,23,1,24,0 dc.b 104,1,22,1,106,0,13,0,39,0,20,1,18,1,0,0 SOURCEH:dc.l 0 SOURCEI:dc.l 0 SOURCEIF:dc.l 0 TDMAX:dc.l 0 TDBAS:dc.l 0 TDHAUT:dc.l 0 TDLGN:dc.l 1 TPINS:dc.l 0 TPINSL:dc.l 1 TPIA:dc.l 0 TPLA:dc.l 1 TPIB:dc.l 0 TPLB:dc.l 1 TPI:dc.l 0 TPL:dc.l 1 TPIC:dc.l 1 TPLC:dc.l 0 TPID:dc.l 0 TPLD:dc.l 1 TPI1:dc.l 0 TPL1:dc.l 1 TPIM:dc.l 0,1,0,1,0,1,0,1 TPIMF:dc.l 0,1 TPIMG: NBTPG=TPIMG-TPINS/8 TDF1:dc.w 4 TDF2:dc.w 0 TDF3:dc.w 0 TDPR:dc.w ".>" TDF4:dc.b ">" GAR39:dc.b 0 T3E1AX:dc.b "*.*",0 dcb.b 14,0 even NUMERO:dc.l 1,2,3,4,5,6,7,8,9,10,11,12,13 GEA58:dc.b "*.*",0 T3E1AA:dc.b "A:*.*",0 dcb.b 64,$FF GEP68:dc.b $1B,"Y",34 GEP69:dc.b " ",0 GEP72:dc.b $1B,"Y",34 GEP73:dc.b " ",0 GAH84:dc.b "¦¦¦¦",0 GAH86:dc.b 14,15,0 dc.b " Basic 1000d ",0 dc.b "------------------------",0 dc.b 49,0,50,0,51,0,52,0,53,0,54,0,0 dc.b "Basic",0 dc.b " Basic 1000d",0 dc.b " Edit source",0 dc.b "-------------",0 dc.b " Quit",0,0,0 GEV38:dc.b "§DESK" dc.b "§FILEs" dc.b "§HELPS" dc.b "§PRiNTER" dc.b "§Lbr/Hlp" dc.b "§Fnd/CHg" dc.b "§B_USER" dc.b "˜RUN" dc.b "§DeBuG" dc.b "§EDIT" dc.b "˜MERGE" dc.b "˜SAVE" dc.b "˜NEW" dc.b "§TOOLS" dc.b "˜˜˜" dc.b "˜RUN..." dc.b "§DeBuG..." dc.b "§EDit..." dc.b "˜˜˜˜˜˜˜˜" dc.b "§DeBuG+" dc.b "˜" HEA23:dc.b "INSERT" dc.b "¯¯®BASIC " GEQ70: dc.b "1000D" dc.b 0 GEW97:dc.b "B_USER",0 GEL80:dc.b "§DESK" dc.b "§FILEs" dc.b "§HELPS" dc.b "§PRiNTER" dc.b "§Lbr/Hlp" dc.b "§Fnd/CHg" dc.b "§B_USER" dc.b "˜RUN" dc.b "§DeBuG" dc.b "§BASIC" dc.b "˜MERGE" dc.b "˜SAVE" dc.b "˜NEW" dc.b "§TOOLS" dc.b "§BLoCK" dc.b "˜NO MeNU" dc.b "˜" SANOID:dc.b "INDenT " dc.b "˜RUN..." dc.b "§DeBuG..." dc.b "˜" SANIV:dc.b "T LEVEL" dc.b "˜ ",$7F,"=˜" dc.b "˜ K=˜" dc.b "§ D=˜" dc.b "§ M=˜" dc.b "§DeBuG+" dc.b "˜" dc.b "¯¯®EDIT SOURCE " GAU12:dc.b 0,"1234567",0 GEV94:dc.b "”Poke" dc.b "”Query" dc.b "”Copy" dc.b "”Fill" dc.b "”Comp" dc.b "˜˜˜”Quit" dc.b "”Mem map" dc.b "˜NEW" dc.b "”Old" dc.b "˜˜˜˜˜˜˜˜" dc.b "§¦¯" dc.b "®TOOLS",0 GEW17:dc.b "˜DIR" dc.b "”Kill" dc.b "˜LoaD IMG" dc.b "˜SaVe IMG" dc.b "”Verif" dc.b "˜MerGe,M" dc.b "˜SaVe,B" dc.b "˜MerGe,L" dc.b "˜LoaD,L" dc.b "˜LOAD" dc.b "˜˜˜˜˜˜" dc.b "˜SaVe,Ind" dc.b "˜MerGe,H" dc.b "˜LoaD,H" dc.b "˜§¦¯" dc.b "®FILES",0 GEW64:dc.b "§S->L" dc.b "§,M->L" dc.b "§L->S" dc.b "˜NeW,L" dc.b "˜˜˜" dc.b "˜MerGe,L" dc.b "˜LoaD,L" dc.b "˜" dc.b "§S->H" dc.b "§,M->H" dc.b "§H->S" dc.b "˜NOHeLp" dc.b "˜˜˜" dc.b "˜MerGe,H" dc.b "˜LoaD,H" dc.b "˜HELP" dc.b "®EDIT HELP¦®& " dc.b "LIBRARY " GAU10:dc.b 0,"1234567",0 GEW58:dc.b "˜AuTHor" dc.b "˜KeyBRD" dc.b "˜EDITING" dc.b "§ASCII" dc.b "˜PRiNTING" dc.b "˜NoSTalg˜˜˜" dc.b "˜NOHeLp" dc.b "˜˜˜˜˜˜˜" dc.b "˜MerGe,H" dc.b "˜LoaD,H" dc.b "˜HELP" dc.b "§¦¯" dc.b "®HELPS",0 GEQ65:dc.b "˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜˜PRiNT˜PRint,B˜˜˜§¦¯®PRINT SOURCE",0 GEW60:dc.b "°",0 GEZ65:dc.b "˜A LEvel" dc.b "˜C LEvel" dc.b "˜E LEvel" dc.b "˜˜pg UP" dc.b "˜pg DoWN" dc.b "˜Find T" dc.b "˜Fnd 1st" dc.b "˜pg IDem" dc.b "§BASIC" dc.b "˜B LEvel" dc.b "˜D LEvel" dc.b "˜F LEvel" dc.b "˜˜˜˜Again T" dc.b "˜Again" dc.b "˜Swap”P->S" dc.b "§¦¯" dc.b "®HELP",0 GEZ19:dc.b 21,"Z",23,32,0 GEX62:dc.b "˜DEFine" dc.b "˜DEFine" dc.b "˜EXG" dc.b "˜WHeRe?" dc.b "˜RePeaT" dc.b "˜DiSTinGo" dc.b "˜HOLD" dc.b "”Find" dc.b "”Find" dc.b "”Change" dc.b "¯” S" dc.b "” T" dc.b "”S-T" dc.b "”A" GEX63:dc.b "LL" dc.b "”" GEX64:dc.b "Y”" GEX65:dc.b "N”" GEX66:dc.b "Y" dc.b "” S" dc.b "” T" dc.b "”S->T" dc.b "˜˜˜˜˜˜˜˜˜˜¯" dc.b "®FIND CHANGE",0 GER50:dc.b "˜MarK A" dc.b "˜MarK B" dc.b "˜GoTo A" dc.b "˜GoTo B˜" GAV50:dc.b "HIDe" dc.b "˜˜SaVe,B˜" dc.b "˜SWAP PG" dc.b "˜PUSH PG" dc.b "˜DELete" dc.b "˜MOVE" dc.b "˜ReCoPY" dc.b "˜˜˜˜PRint,B˜" dc.b "˜Last MoD" dc.b "˜POP PG" dc.b "§¦¯" dc.b "®BLOCK a-b & MARKS",0 GAV52:dc.b "SHoW" GAV54:dc.b "HIDe" GEX67:dc.b "S=",0 GEX68:dc.b "T=",0 GEX71:dc.b "ENTRER LA CHAINE " GEX72:dc.b "Z ([a]S s‚parateur [a]F filler [a]Z z‚ro) >",13,0 GEX73:dc.b 8,10,0 even TAUTHOR:dc.b 12,13 TAUTHOR1:dc.b " Basic 1000d 1.20" dc.b " (freeware)",13 dc.b " J.J. LABARTHE 1990-2000 ",13 dc.b " 14 rue du Royaume ",13 dc.b " F91440 Bures sur Yvette ",13 dc.b " labarthe@lac.u-psud.fr ",0 even TAUTHORF: GEX22:dc.b 12,"Codes ATARI et [a] lettre",0 dc.b " ™ž°“®Ÿ ”’–¡¯¢¬£­š•¤‘¥ ¦ § ± ˜ " GEX29:dc.b 12,21,"EDITION, MARQUES et BLOC",23,32 dc.b "[s]=Shift [a]=Alt [c]=Control",13 dc.b "[s]",1,2,4,3," d‚but ou fin de src ou ligne",32,32 dc.b "[c]",1,2,4,3," d‚place par page ou mot",13 dc.b "DL=[ca]1 [s]BS [s]DL=[ca]2 [c]DL=[ca]3=[c]BS efface un, d‚but, fin, ligne",13 dc.b "(CLR=[ca]9 efface ligne ou page)",32 dc.b "UNDO=[ca]0 r‚crit alors la partie effac‚e",13 dc.b "[s]UNDO=[ca]U remet l'ancienne ligne",13 dc.b "TAB [c]TAB tabulations",32,32 dc.b "[s]TAB change r‚solution",13 dc.b "INS=[ca]CR insŠre ligne",13 dc.b "HELP [s]HELP aide [c]HELP -> label",13 dc.b "HOME=[ca]7 [s]CR haut, bas de page [c]CR cherche",13 dc.b "[s]INS=[ca]I insert/overwrite",13 dc.b "ESC [s]ESC retours Basic",13 dc.b 21,"Marques",23," [sc]",2,1," HELP UNDO=U entrer, sortir, ‚changer page, ultime modif",13 dc.b 21,"Bloc",23," [ca]",1,2," ou [ca]AB Met ligne A ou B (aussi bouton gauche appuy‚)",13 dc.b " [ca]",4,3," Va ligne A ou B",13 dc.b " [ca] D H M R S efface, cache, d‚place, copie ou montre",0 GEX43:dc.b 12,21,"Codes KEYTEST et KEYGET",23 dc.b " (0 si pas d'entr‚e pour KEYTEST)",13 dc.b 21,"1 … $FF",23 dc.b " Clavier, [a] nnn et (hexa) [a] Hnn",13 dc.b 21,"$101 … $176",23," Touches mouvements",13 dc.b 21,"$180 … $199",23," [ca]lettre",13 dc.b 21,"$200 + (4c+2a+s)*10 +k-1",23,13 dc.b "Touche de fonction k (de 1 … 10)",13 dc.b "s,a,c =0 ou 1 suivant Shift, Alt et Control",13 dc.b "Bouton gauche, si au dessus de la ligne CURSH",13 dc.b 21,"$280 $281",23," [c]+ [c]-",13 dc.b 21,"$50000+$100*s+p",23,32 dc.b "{[c] lettre} (p de 0 … 25, s de 0 … 255)",13 dc.b 21,"b*$10000+ x*$100 + y",23,32 dc.b "Souris dans la case de LOCATE y,x",13 dc.b "x de 0 … screen_x-1",13 dc.b "y de cursh … screen_y-1",13 dc.b "b=1 ou 2 (bouton gauche ou droit)",0 GER18:dc.b 12,"Codes 0-$1B actifs dans print",13 dc.b "0 CR 10 INS",13 dc.b "1 ",1,13 dc.b "2 ",2,13 dc.b "3 ",3," 13 BS",13 dc.b "4 ",4," 14 [s]BS",13 dc.b "5 HOME 15 VIDEO INVERSE",13 dc.b "6 DEL 16 [fin d'exposant]",13 dc.b "7 BELL 17 VIDEO NORMALE",13 dc.b "8 [s]DEL",13 dc.b "9 TAB 19 CARACTERE SUIVANT SANS MOUVEMENT",13 dc.b "A [s]",4,13 dc.b "B [s]",2," 1B d‚but des s‚quences ESCAPE",13 dc.b "C CLR",13 dc.b "D CR",13 dc.b "E [s]",3,13 dc.b "F [s]TAB",0 TNOST:dc.b 12,21,"NoSTalgia",23,32,"‚mulation de touches",13 dc.b 13 dc.b 21,"[sa]L",23," | ",21,"[sa]N",23," ",$7E," ",21,"[sa]/",23," \\ ",21,"[sa]?",23," ",$A8,13 dc.b 21,"[sa](",23," [ ",21,"[sa])",23," ] " dc.b 21,"[a](",23," ",$7B," ",21,"[a])",23," ",$7D,13 dc.b 21,"[ca]<",23," ^",13 dc.b 13 dc.b 21,"Pomme+Click",23," Bouton droit",13 dc.b 13 dc.b 21,"Control+Alt+pav‚ num‚rique",23,13 dc.b 21,"7",23," Home ",21,"9",23," Clr",13 dc.b 21,"4",23," [a]F2 ",21,"5",23," F5 ",21,"6",23," [a]F9",13 dc.b 21,"1",23," DEL ",21,"2",23," [s]DEL ",21,"3",23," [c]DEL",13 dc.b 21,"0",23," UNDO",13 dc.b 13 dc.b 21,"[ca]U",23," [s]UNDO ",21,"[ca]I",23," [s]INS ",21,"[ca]CR",23," Ins",13 dc.b 21,"[cs]U",23," [cs]UNDO",0 GAV10:dc.b "FIXE LE NOM DE LA SOURCE",0 GAV11:dc.b "NOM (. --> SANS NOM, CLICK --> ANNULE) >",0 GAV30:dc.b "CFG1000D.Z",0 GEX46:dc.b "¯¦®˜§”" GEV97:dc.b "[ .size (ctrl B/W/L) ] >",0 dc.b " [ ADRESSE ] >",0 GEV98B:dc.b ".B ",0 GEV98L:dc.b ".L ",0 GEV98W:dc.b ".W ",0 U3F713:dc.b "DEBUT>",0 U3F71A:dc.b "FIN>",0 GEV96:dc.b "LIGNE>",0 TDEBUG:dc.b "DEBUG...",0 TDRUNP:dc.b "RUN...",0 TDEDIT:dc.b "EDIT...",0 TDHEUR:dc.b "FIXE L'HEURE OU LA DATE",0 TDHEUS:dc.b "H:M[:S] ou M/N[/Y] >",0 GES76:dc.b " octets libres",0 GEW20:dc.b "ENTRER LE CHEMIN OU LIGNE VIDE ( EXEMPLE A:\\DOC\\ ) >",0 GEW52:dc.b "RELIT FICHIER ET VERIFIE",0 GEW53:dc.b "VERIF IMPOSSIBLE",0 GEW54:dc.b "OK",0 GEW55:dc.b " |OCTETS DIFFERENT",0 GEA38:dc.b "Une zone prgr de Help",0 GEW69:dc.b "Efface la|bibliothŠque",0 GAB24:dc.b " mots clef Q=",0 GEW75:dc.b "MERGE LIBRARY",0 GEW78:dc.b "DELETE & LOAD LIBRARY",0 GEW81:dc.b "DELETE HELP",0 GEW850:dc.b "DELETE OLD HELP|" GEW85:dc.b "LOAD " GEW86:dc.b "HELP.Z",0 GEW95:dc.b "MERGE " GEX13:dc.b "HELP",0 TDLOAM:dc.b "MERGE DEVANT M",0 GAL33:dc.b "NEW, LOAD & RUN",0 GEW80:dc.b "NEW & " TDAPP:dc.b "READ SOURCE",0 TDINP:dc.b "READ VERS MEMOIRE",0 TDFIL:dc.b "FILL MEMOIRE",0 TDMDM:dc.b "MODIF MEMOIRE ",0 TDCOP:dc.b "COPY MEMOIRE",0 TDOLD:dc.b "ANCIENNE SOURCE REMISE",0 TDNEW:dc.b "EFFACE LA SOURCE",0 TDWRI:dc.b "WRITE SOURCE",0 GC40:dc.b "WRITE INDENT SOURCE",0 TDWRBK:dc.b "WRITE BLOC",0 TDWRJ:dc.b "WRITE MEMOIRE",0 TDKIL:dc.b "KILL FILE",0 TDCHRS:dc.b "CHERCHE S",0 TDCHRT:dc.b "CHERCHE T",0 TDCHG:dc.b "CHANGE",0 TDCMP:dc.b "COMPARE MEMOIRE",0 TDEXM:dc.b "EXAMINE MEMOIRE",0 TDEXT:dc.b "QUIT BASIC",0 dc.b "MODIFICATION DE SOURCE|NON SAUVEGARDEE|" GEV88:dc.b "ETES VOUS SUR?",0 GEW10:dc.b " EFFACE|" GEW11:dc.b " LIGNES",0 GEV87:dc.b "OUI|ANNULER",0 GEO28A:dc.b "CARACTERE INTERDIT",0 GAR44:dc.b "MATH",0 GAR45:dc.b "STND",0 GEO87:dc.b "SOURCE TROP LONGUE",0 GEK30:dc.b " RECOUVRE|L'ANCIEN FICHIER",0 GAL58:dc.b " ] ",0 TDCLR:dc.b "CLEAR EFFECTUE",8,13,0 PD48:dc.b "...",0 HEA25:dc.b "I"+"O","N"+"V","S"+"E","E"+"R","R"+"W","T"+"R",0 GEQ50:dc.b "I"+"N","N"+"O","D"+"I","e"+"N","n"+"D","T"+"E"," "+"N"," "+"T",0 PD29:dc.b "NON LOCALISE",0,$1A GEQ42:dc.b "ERREUR|",0 PRM1:dc.b "MEMOIRE",0;0 PRM2:dc.b 8,"*ERREUR* ",0;1 PRM3:dc.b "**FIN**",0;2 dc.b "INSERTION INTERDITE",0;3 dc.b "OVERFLOW",0;4(-1) dc.b "NON NUMERIQUE",0;5 dc.b "NOM TROP LONG",0;6 dc.b "NUMERIQUE",0;7 dc.b "LABEL ABSENT",0;8 dc.b "BLOC",0;9 dc.b "LIGNE",0;10 dc.b "N.",0;11 dc.b "S_NAME TROP PETIT",0;12 dc.b "~",13,0;13 dc.b 0;14 POUR ERR dc.b "FATALE",0;15 dc.b "DEBUG",0;16 dc.b "S_VAR TROP PETIT",0;17 dc.b "FONCT/PROC QUI TERMINE DES BOUCLES",0;18 dc.b "EXPRESSION LOGIQUE",0;19 dc.b "NOMBRE REEL",0;20 dc.b "ADRESSE IMPAIRE",0;21 dc.b "AES/VDI",0;22 dc.b "DIVISION",0;23 dc.b "EXPONENTIELLE",0;24 dc.b "INCOMPATIBLE AVEC EXIT",0;25 dc.b "EXPOSANT TROP GRAND",0;26 dc.b "VALEUR TROP FAIBLE",0;27 dc.b 0;28 LIBRE dc.b "EXPRESSION ILLEGALE",0;29 dc.b "LIT/VAR DIMENSION NON DEFINIE",0;30 dc.b "TROP DE LIT/VAR",0;31 dc.b "ARGUMENTS DE FONCTION",0;32 dc.b "INDEX/ADRESSE",0;33 dc.b "INSTRUCTION ILLEGALE",0;34 dc.b "LABEL ILLEGAL",0;35 dc.b "NOM REPETE",0;36 dc.b "TYPE ILLEGAL",0;37 dc.b "COMPARAISON",0;38 dc.b "POLYNOME",0;39 dc.b "ENTIER*S",0;40 dc.b "SOURCE VIDE",0;41 dc.b "S_PRO TROP PETIT",0;42 dc.b "HORS DU TABLEAU",0;43 dc.b "NOM RESERVE",0;44 dc.b "MONOME/LITTERAL",0;45 dc.b "FOR/NEXT",0;46 dc.b "RACINE",0;47 dc.b "COND",0;48 TDPRPR:dc.b "SORTIE IMPRIMANTE",0;49 dc.b "DOMAINE DE DEFINITION",0;50 dc.b "INTEGRATION",0;51 dc.b "SIZE",0;52 dc.b "DEVELOPPEMENT EN X^-K",0;53 dc.b "DISQUETTE",0;54 dc.b "FICHIER PAS TROUVE",0;55 dc.b "PAS DE PLACE DISQUETTE",0;56 dc.b "EXCEPTION 680" X68000:dc.b "30",0;57 dc.b "READ/DATA",0;58 dc.b "NOMBRE D'INDICES",0;59 dc.b "RETURN SANS APPEL",0;60 dc.b "VALEUR APRES @",0;61 dc.b "S_XQT TROP PETIT",0;62 dc.b "@ DANS MAIN",0;63 dc.b "FIN DE SOURCE",0;64 dc.b "LIGNE DE DEPART",0;65 dc.b "LIMIT/HIMEM",0;66 dc.b "PILE VIDE",0;67 dc.b "CHAINE PRISE POUR VARIABLE",0;68 dc.b "DIM/SIZE MODIFIE",0;69 dc.b "NON RATIONNEL",0;70 dc.b "FLOTTANT INTERDIT",0;71 dc.b "NON ENTIER",0;72 dc.b "S_COND TROP PETIT",0;73 dc.b "LABEL REPETE",0;74 dc.b "NOMBRE NON PREMIER",0;75 dc.b "LOCAL",0;76 dc.b "TROP DE DONNEES",0;77 dc.b "INSERTION DE $19 OU $1A",0;78 dc.b "CHECK SUM",0;79 dc.b "FIN DE BOUCLE SANS DEBUT",0;80 dc.b "IMBRICATION DES BOUCLES",0;81 dc.b "INCREMENT DE BOUCLE",0;82 dc.b "REPERTOIRE",0;83 dc.b "FICHIER HELP SANS \\A",0;84 dc.b "PAS DE PROGRAMME",0;85 dc.b "APPEL AES AVEC UNE RESOLUTION AUTRE QUE CELLE DU BUREAU",0;86 dc.b "nomi DE TYPE CHAR",0;87 dc.b "nomi DE TYPE INDEX",0;88 dc.b "nomi DE TYPE VAR",0;89 dc.b "PILE PROC DETRUITE",0;90 dc.b "nomi INCONNU",0;91 dc.b "ENSEMBLE",0;92 dc.b "ENSEMBLE ILLEGAL POUR BOUCLE",0;93 dc.b "PERMUTATION",0;94 dc.b "GEMDOS #-" TTOS:dc.b "00",0;95 dc.b "R_FILES TROP PETIT",0;96 dc.b "CANAL DEJA OUVERT",0;97 dc.b "MEM_FILES TROP PETIT",0;98 dc.b "CANAL NON OUVERT EN LECTURE OU ",$22,"NUL:",$22,0;99 dc.b "CANAL NON OUVERT EN ECRITURE",0;100 dc.b "CANAL NON OUVERT",0;101 dc.b "CANAL SANS POINTEUR",0;102 dc.b "FIN DE FICHIER",0;103 dc.b "POINTEUR MEM:",0;104 GEO27:dc.b "LIGNE TROP LONGUE",0;105 dc.b "EOL DOIT ETRE 0 OU 13,10",0;106 dc.b "LONGUEUR DE CHAMP",0;107 dc.b "LONGUEUR D'ENREGISTREMENT",0;108 dc.b "NUMERO D'ENREGISTREMENT",0;109 dc.b "CANAL NON DE TYPE R",0;110 dc.b "FORME SOURIS",0;111 dc.b "MENU",0;112 dc.b "S_MENU TROP PETIT",0;113 dc.b "REMEMBER INTERDIT OU REPETE",0;114 dc.b "PLANTAGE EN VUE. REINITIALISER",0;115 dc.b "LITTERAL COMPLEXE NON DEFINI",0;116 dc.b "NOMBRE COMPLEXE",0;117 dc.b "NOMBRE REEL",0;118 dc.b "SUBSTITUTION INCOMPLETE",0;119 dc.b "APPELER PRFACT EN MODE DEVELOP",0;120 ERRMAX=120 WBIB16:dc.b "La source ",0 GEW91:dc.b "La source jusqu'… M (exclu) ",0 GEX17:dc.b "est d‚plac‚e dans la bibliothŠque",0 GEX19:dc.b "est d‚plac‚e dans HELP",0 GEX15:dc.b "Vider d'abord " WBIB18:dc.b "la bibliothŠque",0 GEX14:dc.b " est d‚plac‚e dans la source",0 U3F71F:dc.b "DEST>",0 U3F725:dc.b "DATA>",0 U3F75D:dc.b "FILENAME (CLICK-->FILESELECT) >",0 HR19:dc.b "FICHIER TROP LONG.FIN NON CHARGEE",0 dc.b $C U3F768:dc.b "PAGE ",0 U3F896:dc.b "Bspg ",0 dc.b "Help ",0 dc.b "Lbry ",0 dc.b "Src ",0 dc.b "Limit",0 dc.b "Himem",0 dc.b "Proc ",0 dc.b "Xqt ",0 dc.b "Fre ",0 U3F98F:dc.b "Pas fait",0 U3FA35:dc.b "Pas de fichier",0 ESC4:dc.b "BREAK",8,0 KEYRECT:dc.b 0 even GER35:dc.w $441 dc.w XUP-*;A dc.w XDOWN-*;B dc.w XRIGHT-*;C dc.w XLEFT-*;D dc.w XCLR-*;E dc.w $548 dc.w XHOME-*;H dc.w VMUI-*;I dc.w VMUJ-*;J dc.w XCLRL-*;K dc.w XINSRLG-*;L dc.w VMUM-*;M dc.w $59 dc.w VMUY-*;Y dc.w $162 dc.w VMUSB-*;b dc.w VMUSC-*;c dc.w $26A dc.w VMUSJ-*;j dc.w VMUSK-*;k dc.w VMUSL-*;l dc.w $170 dc.w VIDEOI-*;p dc.w VIDEON-*;q dc.w 0 GEV98:dc.w 2 dc.w GEV98B-* dc.w 12 dc.w GEV98L-* dc.w 23 dc.w GEV98W-* dc.w 0 GEU73:dc.l $48504D4B,$47C853D3,$FCBD0C7,$1CCD8F52,$E2610E8E,$74737762,$9CD2E1F4,$F3F70000 MOUSE0:dc.b 0 CURS0:dc.b 0 MOUSE1:dc.w 0 MOUSEXY:dc.l 0,0,0,0,0,0 GEU61:dcb.b 26,$FF GEU61F:dc.l $10302E20,$12212223,$17242526,$27311819,$1E131F14,$162F2C2D dc.w $1511 YSTRG1T:dc.b "S=" YSTRG1:dcb.b 48,0 YSTRG2T:dc.b "T=" YSTRG2:dcb.b 48,0 YSNLG:dc.l 0 YSNLG1:dc.w 0 TDMOD2:dc.l 0 YSPIL:dc.l 0 YSEND:dc.w $800 YSREP:dc.b 9 YSHLD:dc.b 0 YSDST:dc.w 0 YSTPI:dc.l 0 TCPREB:dcb.b 24,$FF TCPREA:dc.b 4,32,4,0 DFLOG:dc.w $C,$3E,8,$3FFF,$FFFF,$FFFF,$4243 dc.w $C,$3E,$8008,$1FFF,$FFFF,$FE3E,$8D36 dc.w $C,$3E,8,$1555,$5554,$A472,$B5F5 dc.w $C,$40,$8008,$3FFF,$FF91,$6AE0,$AFDD dc.w $C,$40,8,$3333,$2A13,$8922,$6978 dc.w $C,$40,$8008,$2AAA,$3532,$8506,$13C dc.w $C,$40,8,$248E,$5CC2,$37A1,$41D3 dc.w $C,$40,$8008,$1FE8,$7111,$CE77,$5AC7 dc.w $C,$40,8,$1C0A,$7F8F,$48A0,$7F4 dc.w $C,$40,$8008,$1845,$7803,$761A,$6B7 dc.w $C,$40,8,$13E9,$3CB1,$EAA9,$FE4F dc.w $C,$42,$8008,$3AAA,$EA59,$D2C0,$CB45 dc.w $C,$42,8,$246C,$4571,$1AB6,$6A31 dc.w $C,$44,$8008,$4714,$65F5,$A51D,$E0D1 dc.w $C,$46,8,$641F,$73B1,$F212,$BEB6 dc.w $C,$46,$8008,$1655,$FBE2,$C619,$43D3 dc.w $C,$4A,8,$259C,$8714,$4CCB,$9C6C dc.w 0 TCONSFL1:dc.w $3E,8,$4000,0,0,0 DFEXP:dc.w $C,$3E,8,$4000,0,0,0 dc.w $C,$3E,8,$3FFF,$FFFF,$FFF1,$82CE dc.w $C,$3E,8,$2000,0,$2A2,$1F21 dc.w $C,$40,8,$2AAA,$AAA9,$D813,$49C1 dc.w $C,$42,8,$2AAA,$AACD,$EAD3,$5BFD dc.w $C,$44,8,$2222,$1EA2,$DE76,$D9CF dc.w $C,$46,8,$16C1,$A3BB,$69D9,$F4E4 dc.w $C,$4A,8,$33FA,$5DC9,$CA7D,$9D0E dc.w $C,$4C,8,$1A3B,$B9C0,$FB47,$C814 dc.w $C,$50,8,$2A95,$B8A4,$59C4,$1C7A dc.w $C,$52,8,$1A8B,$3857,$F47A,$E38E dc.w 0 DFATN:dc.w $C,$3E,8,$4000,0,0,$55EB dc.w $C,$40,$8008,$5555,$5555,$57C0,$9000 dc.w $C,$40,8,$3333,$3333,$E24B,$90EE dc.w $C,$40,$8008,$2492,$4936,$5C1A,$7075 dc.w $C,$40,8,$1C71,$C7D7,$CC7E,$E2D9 dc.w $C,$40,$8008,$1745,$D1E2,$69D3,$4CFD dc.w $C,$42,8,$4EC3,$D4CC,$A8BC,$C4EE dc.w $C,$42,$8008,$4437,$18B5,$3E9F,$D4ED dc.w $C,$42,8,$3BE6,$C349,$E5B2,$EE62 dc.w $C,$42,$8008,$3474,$C6D7,$7D15,2 dc.w $C,$42,8,$2C51,$685E,$CF98,$1A55 dc.w $C,$42,$8008,$2240,$7148,$9927,$146F dc.w $C,$42,8,$16A1,$D91D,$A9A5,$6B3C dc.w $C,$44,$8008,$2F64,$4662,$595C,$9312 dc.w $C,$44,8,$11F5,$F886,$60B1,$C029 dc.w $C,$46,$8008,$113D,$FD6E,$4371,$4290 dc.w $C,$4A,8,$1F2A,$A272,$4213,$1ECB dc.w 0 DFTAN:dc.w $C,$3E,8,$3FFF,$FFFF,$FFFD,$851D dc.w $C,$3E,8,$1555,$5555,$59C1,$17B4 dc.w $C,$40,8,$2222,$221C,$E80C,$8CA3 dc.w $C,$42,8,$3743,$76A1,$33B1,$CCE1 dc.w $C,$44,8,$5993,$3F1A,$A743,$7F30 dc.w $C,$44,8,$2452,$EA60,$9C8C,$AE58 dc.w $C,$46,8,$3A66,$88A5,$A842,$6805 dc.w $C,$46,8,$1984,$D153,$8FDB,$595E dc.w $C,$48,8,$168A,$7E8F,$295,$2E67 dc.w $C,$48,8,$28CD,$8539,$D18C,$56EC dc.w $C,$4A,$8008,$450B,$DD4B,$1D4E,$D5D1 dc.w $C,$4A,8,$36F4,$9248,$CB12,$C7DA dc.w 0 T3FCB2:dc.l 0 T3FCEA:dc.b 0 T3FCEB:dc.b 0 TCONSTM:dc.w $C001 TCONST0:dc.w $4000 TCONSTU:dc.l 0 TCONST1:dc.w $4001 TCONST10:dc.w $400A TCONST200:dc.w $40C8 TCONSTH:dc.l 0,$60014002 TCONSTQ:dc.l 0,$E0014004 TCONST2:dc.w $4002 TCONST3:dc.w $4003 TCONST5:dc.w $4005 TCONSE8:dc.w 4 dc.l 100000000 TINCR:dc.b 0,0,3,-3,5,-2,7,-4,11,-8,0,0 TCONSP:dc.w 2,$3AA7 dc.l 0 TINCR1:dc.b 3,0,5,0,7,0,11,0,13,0,0,0 THNBN=5 GEM41:dc.w $103 dc.w SBCR-*;3 RIGHT dc.w SBCL-*;4 LEFT dc.w $307 dc.w SBDLT-*;7 DEL dc.w SBSDL-*;8 ^DEL dc.w SBTAB-*;9 TAB dc.w SBDEB-*;A ^LEFT dc.w $C dc.w SBCLR-*;C CLR dc.w $E dc.w SBFIN-*;E ^RIGHT dc.w $212 dc.w SBUND-*;12 UNDO dc.w SBCK1-*;13 BS dc.w SBSBS-*;14 ^BS dc.w $49 dc.w SBSTB-*;49 cTAB dc.w $155 dc.w SBCTR-*;55 cRIGHT dc.w SBCTL-*;56 cLEFT dc.w 0 GEM44:dc.w $101 dc.w SCUOP-*;1 UP dc.w SCDON-*;2 DOWN dc.w $105 dc.w SCHOM-*;5 HOME dc.w SCSUP-*;6 ^UP dc.w $B dc.w SCSDW-*;B ^DOWN dc.w $D dc.w SCCR-*;D CR dc.w $20F dc.w SCSTB-*;F ^TAB dc.w SCINS-*;10 INS dc.w SCSHLP-*;11 ^HELP dc.w $318 dc.w SCHLP-*;18 HELP dc.w SCSCR-*;19 ^CR dc.w SCSINS-*;1A ^INS dc.w SCSUN-*;1B ^UNDO dc.w $120 dc.w SCCCR-*;20 ESC dc.w SCSES-*;21 sESC dc.w $141 dc.w SCCUP-*;41 cUP dc.w SCCDW-*;42 cDOWN dc.w $146 dc.w XLISTF4-*;46 c^UP dc.w SCCDL-*;47 cDEL dc.w $4B dc.w XLISTM4-*;4B c^DOWN dc.w $4D dc.w SCCRET-*;4D cRET dc.w $51 dc.w XLALT4-*;51 c^HELP dc.w $157 dc.w SCSUP-*;57 cHOME dc.w SCCHLP-*;58 cHELP dc.w $5B dc.w SCCSUN-*;5B c^UNDO dc.w $161 dc.w SCACUP-*;61 c[a]UP dc.w SCACDW-*;62 c[a]DOWN dc.w $175 dc.w SCACRT-*;acRIGHT dc.w SCACLF-*;acLEFT dc.w $180 dc.w SCACUP-*;80 c[a]A dc.w SCACDW-*;81 c[a]B dc.w $83 dc.w SCACDL-*;83 c[a]D dc.w $87 dc.w SCACH-*;87 [ca]H dc.w $8C dc.w SCACMV-*;8C c[a]M dc.w $191 dc.w SCACRP-*;91 c[a]R dc.w SCACS-*;92 [ca]S dc.w 0 GEP15:dc.w $20F dc.w WBLOCK-*;15 dc.w SCMENU-*;16 dc.w SCINDT-*;17 dc.w $14 dc.w SCTOGN-*;20 dc.w $1E dc.w SCSINS-*;F30 dc.w 0 GEP38:dc.w $D01 dc.w DESK-*;1 dc.w WFILES-*;2 dc.w WHELPS-*;3 dc.w WPRSRC-*;4 dc.w WBIBLIO-*;5 dc.w WFIND-*;6 dc.w WUSER-*;7 dc.w WRUNR-*;8 dc.w WDEBUG0-*;9 dc.w HOT-*;10 dc.w S3DEF8-*;11 dc.w S3E1D6-*;12 dc.w XNEW-*;13 dc.w WUTIL-*;14 dc.w $112 dc.w WRUNP-*;18 dc.w WDEBUGP-*;19 dc.w $21B dc.w WEDITP-*;27 dc.w WEDITP-*;28 dc.w WGR-*;29 dc.w $622 dc.w WFIXNS-*;34 dc.w WFIXNS-*;35 dc.w WFIXNS-*;36 dc.w WFIXNS-*;37 dc.w WFIXHD-*;38 dc.w WFIXHD-*;39 dc.w WFIXHD-*;40 dc.w 0 GEQ57:dc.w $141 dc.w XTHOME-*;41 cUP dc.w XTBOT-*;42 cDOWN dc.w $47 dc.w XTCDL-*;47 cDEL dc.w $49 dc.w XTCTB-*;49 cTAB dc.w $255 dc.w XTCRT-*;55 cRIGHT dc.w XTCLF-*;56 cLEFT dc.w XTHOME-*;57 cHOME dc.w 0 GER51:dc.w $401 dc.w SCACUP1-*;1 c[a]UP dc.w SCACDW1-*;2 c[a]DOWN dc.w SCACLF1-*;3 acLEFT dc.w SCACRT1-*;4 acRIGHT dc.w SCACSH1-*;5 acH ou S dc.w 7 dc.w WRBLOB-*;7 SAVE,B dc.w $409 dc.w XLALT4P-*;9 c^HELP dc.w XLISTM4-*;10 c^DOWN dc.w SCACDL1-*;11 c[a]D dc.w SCACMV1-*;12 c[a]M dc.w SCACRP1-*;13 c[a]R dc.w 17 dc.w WPRINB-*;7 PRINT,B dc.w $113 dc.w SCCSUN1-*;19 c^UNDO dc.w XLISTF4P-*;20 c^UP dc.w 0 IEEE64:bsr.s IEEEA beq.s GAR10 move.l #1023,D0 add.l A1,D0 bmi.s GAR10 move #$800,A0 cmp.l A0,D0 bcc ERRDP tst D3 bpl.s GAR12 bset #11,D0 GAR12:moveq #3,D3 GAR14:add.l D6,D6 addx.l D5,D5 addx D0,D0 dbra D3,GAR14 move D0,(A6)+ move.l D5,(A6)+ swap D6 move D6,(A6)+ rts GAR10:clr.l (A6)+ GAP85:clr.l (A6)+ rts IEEEA:moveq #0,D5 moveq #0,D6 moveq #0,D4 sub.l A1,A1 sub (A0)+,A1 move (A0)+,D3 move D3,D5 bclr #15,D5 moveq #4,D0 bclr #14,D5 bne.s GAP82 move D5,D0 move (A0)+,D5 swap D5 move D0,D1 subq #2,D1 beq.s GAP82 move (A0)+,D5 subq #2,D1 beq.s GAP82 move (A0)+,D6 swap D6 subq #2,D1 beq.s GAP82 move (A0)+,D6 subq #2,D1 beq.s GAP82 move (A0)+,D4 GAP82:mulu #8,D0 add.l D0,A1 bset #0,D4 GAP84:subq #1,A1 add D4,D4 addx.l D6,D6 addx.l D5,D5 bcc.s GAP84 move.l A6,A2 cmpi #$4000,D3 rts IEEE32:bsr.s IEEEA beq.s GAP85 moveq #127,D0 add.l A1,D0 bmi.s GAP85 move #$100,A0 cmp.l A0,D0 bcc ERRDP lsr #7,D3 move.b D0,D3 moveq #6,D0 GAP86:add.l D5,D5 addx D3,D3 dbra D0,GAP86 move D3,D5 swap D5 move.l D5,(A6)+ rts WFIXHD:lea TDHEUR(PC),A0 bsr XPTET lea TDHEUS(PC),A0 bsr ZF3F9 bsr.s WSTMDT trap #3;HOT WFIXNS:lea GAV10(PC),A0 bsr XPTET lea GAV11(PC),A0 bsr ZF3F9 tst.b (A6) beq GEW25 lea FILEBUF,A0 moveq #98,D0 .1:move.b (A6)+,(A0)+ dbeq D0,.1 clr.b GAU12 bsr FNAMSR trap #3;HOT WSTMDT:bsr WDNCHK GWD001:move.b (A6)+,D1 cmpi.b #32,D1 beq.s GWD001 subq #1,A6 moveq #":",D5 cmp.b (A6),D5 bne.s GES42 moveq #24,D1 cmp.l D1,D0 bcc.s ERRRG1 move D0,D4 asl #6,D4 moveq #60,D6 bsr.s WDNCHK1 or D0,D4 asl #5,D4 tst.b (A6) beq.s GES39 bsr.s WDNCHK1 asr D0 or D0,D4 GES39:moveq #$2D,D5 GES40:move D4,-(SP) move D5,-(SP) tst.b (A6) bne.s ERRRG1 trap #1 addq #4,SP tst.l D0 bmi.s ERRRG1 GES41:rts GES42:moveq #"/",D5 move D0,D4 asl #5,D4 subq #1,D0 moveq #12,D1 cmp.l D1,D0 bcc.s ERRRG1 moveq #32,D6 bsr.s WDNCHK1 tst D0 beq.s ERRRG1 or D0,D4 move GTIMEY,D0 subi #1980,D0 tst.b (A6) beq.s GES43 move #2108,D6 bsr.s WDNCHK1 subi #1980,D0 bcc.s GES43 addi #1900,D0 bpl.s GES43 addi #100,D0 GES43:moveq #9,D1 asl D1,D0 or D0,D4 moveq #$2B,D5 bra.s GES40 WDNCHK:bsr WDN beq.s GES41 ERRRG1:moveq #50,D0;=ERRRG trap #15 WDNCHK1: GWD002:move.b (A6)+,D0 cmpi.b #32,D0 beq.s GWD002 cmp.b D0,D5 bne.s ERRRG1 WDNCHK2:bsr.s WDNCHK cmp.l D6,D0 bcc.s ERRRG1 rts WSDT:moveq #13,D6 moveq #"/",D5 bsr.s WDNCHK2 move D0,-(SP) beq.s ERRRG1 moveq #32,D6 bsr.s WDNCHK1 move D0,-(SP) beq.s ERRRG1 move #$7FFF,D6 bsr.s WDNCHK1 GWD003:move.b (A6)+,D1 cmpi.b #32,D1 beq.s GWD003 tst.b D1 beq.s KN20 asl #8,D1 move.b (A6)+,D1 GWD004:move.b (A6)+,D2 cmpi.b #32,D2 beq.s GWD004 tst.b D2 bne.s ERRRG1 ori #$2020,D1 dc.l $0C016164; cmpi.b #"ad",D1 beq.s KN20 dc.l $0C016263; cmpi.b #"bc",D1 bne.s ERRRG1 neg D0 KN20:move (SP)+,D2 move (SP)+,D1 jmp XTIMEA XPDAT:moveq #13,D0 pea TCDAT1-2 bra.s GES32 XPTIM:moveq #25,D0 pea TCTIM GES32:movem.l D3/A3,-(SP) lea TCURSA,A3 move (A3),D1 subq #1,D1 blt.s GER81A addi #32,D1 add TCURSC-TCURSA(A3),D0 lea TCTIM2+3,A3 move.b D0,(A3) move.b D1,-(A3) subq #2,A3 move.b MOUSE0(PC),-(SP) bsr HIDEM GER78:move.b (A3)+,D0 beq.s GES34 bsr PCONOUT2 bra.s GER78 GES34:move.l 10(SP),A3 GER79:moveq #0,D0 move.b (A3)+,D0 beq.s GER80 move SETBREAK2(PC),A0 btst #4,(A0) bne.s .1 lea TYPCAR,A0 btst #6,(A0,D0.L) beq.s .1 bset #5,D0 .1:bsr PCONOUT bra.s GER79 GER80:move INVERSE,D3 bsr VIDEOSET move.b (SP)+,D0 bne.s GER81 bsr SHOWM GER81:bsr XCURS GER81A:movem.l (SP)+,D3/A3 addq #4,SP rts SIDEL:cmpi.b #"I",SANOID bne.s GEK75 cmp.l A0,A1 bcc.s GEK75 bsr.s SIDELP add D2,D1 bra.s GEK69 GEK72:tst.b (A1)+ bne.s GEK72 GEK68:cmp.l A0,A1 bcc.s GEK74 bsr.s XANLGIR GEK69:cmpi.b #2,D0 bcc.s GEK72 bsr.s SIDELK tst.b D0 bne.s GEK70 sub D2,D1 bpl.s GEK72 GEK70:add D2,D1 bra.s GEK72 GEK74:bsr.s SIDELP sub D2,D1 bpl.s GEK75 add D2,D1 GEK75:rts XANLGIR:jmp XANLGI SIDELP:moveq #0,D2 cmpi.b #"I",SANOID bne.s GEK75 bsr.s XANLGIR btst #0,D0 bne.s GEK76 SIDELK:move D0,D2 rol #8,D2 ext D2 addq #1,D2 add D2,D2 GEK76:rts SAVER:tst.b SAFER bne.s GEK76 bra.s SAEND SAENDS:bsr SISORN SAEND1:clr.b (A6) SAEND:move #4,TCURSA st SAFER bsr PLMOD1 bra XCLRT SIENT:lea TPINS(PC),A3 SIENT1:move.l TDBAS(PC),A1 move.l (A3)+,A0 moveq #0,D1 bsr SIDEL move.l (A3),D0 SAVTH:movem.l D0-D2/A0-A2,-(SP) bsr HIDECM bsr XHOME bra.s GEL12 SAVTY:movem.l D0-D2/A0-A2,-(SP) bsr HIDECM bsr XCURS bra.s GEL12 SAVTJ:bsr.s SAVTY movem.l D0-D2/A0-A2,-(SP) moveq #"J",D0 GEL10:bsr HIDECM bsr XEMUL GEL12:movem.l (SP)+,D0-D2/A0-A2 rts SIX12:movem.l D0-D2/A0-A2,-(SP) bsr HIDECM bsr PCONOUT bra.s GEL14 SIX12I:movem.l D0-D2/A0-A2,-(SP) bsr HIDECM moveq #"p",D0 bsr XEMUL move.l (SP),D0 bsr PCONOUT moveq #"q",D0 bsr XEMUL GEL14:lea TCURSC-TBUF(A6),A0 move (A0)+,D0 cmp (A0),D0 ble.s GEL12 addq #1,(A0) bra.s GEL12 SALGM0:clr SACOZ-TBUF(A6) SALGM1:clr TCURSX-TBUF(A6) SALGM:lea SACOZ-TBUF(A6),A0 move TCURSX-TBUF(A6),D0 add (A0)+,D0 cmp (A0),D0 bcs.s GEL19 lea GEL37(PC),A0 bra.s SIELG GEL19:move.l A6,A0 add D0,A0 SIELG:movem.l D0-D3/A0-A3,-(SP) move.l A0,A3 bsr SAVTY lea TCURSC-TBUF(A6),A2 move (A2)+,D3 sub (A2),D3 bra.s GEL22 GEL20:move.b (A3)+,D0 beq.s GEL26 bsr PCONOUT GEL22:subq #1,D3 bpl.s GEL20 GEL24:move.b (A3)+,D0 beq.s GEL26 cmpi.b #32,D0 beq.s GEL24 moveq #3,D0 bsr PCONOUT bra.s GEL28 GEL26:moveq #"K",D0 bsr XEMUL GEL28:bsr XCURS movem.l (SP)+,D0-D3/A0-A3 rts SIALG1:bsr SATBK SIALG:movem.l D0-D2/A0-A2/A5,-(SP) clr TCURSX-TBUF(A6) bsr SAVTY moveq #32,D0 cmp D0,D1 bcs.s GEL29 move D0,D1 GEL29:tst D2 beq.s GEL30 cmpi.b #"S",GAV50 beq.s GEL30 moveq #5,D0 bsr SIX12I moveq #32,D0 bra.s GEL31 GEL30:bsr SIX12 GEL31:subq #1,D1 bpl.s GEL30 GEL32:move.l A0,A5 move TCURSX-TBUF(A6),-(SP) move.l A5,-(SP) bsr.s SAUTLBLR move.l (SP)+,A0 bra.s GEL35 GEL34:move.b (A0)+,D0 bsr SIX12I GEL35:cmp.l A5,A0 blt.s GEL34 bsr SIELG move (SP)+,TCURSX-TBUF(A6) bsr XCURS movem.l (SP)+,D0-D2/A0-A2/A5 rts GEL37:dc.w 0 SAVLAB:move.l A5,-(SP) cmpi.b #"L",SANIV bne.s GEL49 movem.l D0/D1/A0,-(SP) move.l A0,A5 bsr.s SAUTLBLR movem.l (SP)+,D0/D1/A0 beq.s GEL49 bsr.s SASUIV lea TPINS(PC),A5 move.l A0,(A5)+ move.l D0,(A5)+ GEL49:move.l (SP)+,A5 rts SAUTLBLR:jmp SAUTLBL SASUIV:movem.l D1-D3/A1/A5,-(SP) moveq #$1A,D3 cmp.b (A0),D3 beq.s GEL42 move.l A0,-(SP) move.l D0,D2 GEL38:bsr PTSUIV cmpi.b #"L",SANIV bne.s GEL39 cmp.b (A0),D3 beq.s GEL39 move.l A0,A5 move.l A0,-(SP) bsr.s SAUTLBLR move.l (SP)+,A0 bne.s GEL38 GEL39:move.l (SP)+,A1 move.l (SP)+,D1 move.l D2,-(SP) bsr SIDEL GEL41:movem.l (SP)+,D0/D2/D3/A1/A5 rts GEL42:movem.l (SP)+,D1-D3/A1/A5 rts SAPRE:movem.l D1-D3/A1/A5,-(SP) moveq #$1,D3 cmp.l D3,D0 ble.s GEL42 move.l A0,-(SP) move.l D0,D2 GEL43:bsr PTPRE1 cmpi.b #"L",SANIV bne.s GEL45 cmp.l D3,D2 ble.s GEL45 move.l A0,A5 move.l A0,-(SP) bsr.s SAUTLBLR move.l (SP)+,A0 bne.s GEL43 GEL45:move.l (SP)+,A1 move.l (SP)+,D3 move.l D2,-(SP) move.l A0,-(SP) moveq #80,D1 exg A1,A0 add D1,D3 bsr SIDEL move.l (SP)+,A0 sub D1,D3 move D3,D1 bpl.s GEL41 moveq #0,D1 bra.s GEL41 SATBK:moveq #0,D2 cmp.l TPIC(PC),A0 blt.s GEL47 cmp.l TPID(PC),A0 bge.s GEL47 moveq #1,D2 GEL47:rts SAPONT:move TCURSY-TBUF(A6),D2 SAPONT1:sub TCURSA-TBUF(A6),D2 move D2,A2 add D2,D2 add D2,D2 add A2,D2 add D2,D2 lea SAPG-TBUF(A6),A2 add D2,A2 rts SAPONTP:move TCURSB-TBUF(A6),D2 addq #1,D2 bra.s SAPONT1 SAPGJ:bsr SIENT SAPGH:bsr SAVLAB bsr SCCURS bra.s GEL52 GEL50:bsr SIACY ble.s GEL62 GEL52:bsr.s SAPONT cmp.l TPINS(PC),A0 bne.s GEL56 bsr.s SATBK tst.b SAMF-TBUF(A6) beq.s GEL53 move.l A0,(A2)+ move.l D0,(A2)+ move D1,(A2)+ bsr.s SIALV bsr SIACY ble.s GEL62 bra.s GEL56 SIALV:move.l A0,-(SP) lea GEL37(PC),A0 bsr SIALG bsr.s SILUM move.l (SP)+,A0 rts GEL53:cmpi.b #$1A,(A0) bne.s GEL54 bsr.s SIALV bra.s GEL56 GEL54:bsr SIALG bsr.s SILUM GEL56:move.l A0,(A2)+ move.l D0,(A2)+ move D1,(A2)+ cmpi.b #$1A,(A0) beq.s GEL58 bsr SIALG1 bsr SASUIV bra.s GEL50 GEL58:clr TCURSX-TBUF(A6) bsr SAVTJ GEL60:st (A2) lea 10(A2),A2 bsr.s SIACY bhi.s GEL60 st (A2) bra.s SACURS GEL62:bsr SAPONTP move.l A0,(A2)+ move.l D0,(A2)+ move D1,(A2)+ cmp.l TPINS(PC),A0 ble SANEWP SACURS:lea SACOY-TBUF(A6),A2 move (A2)+,TCURSY-TBUF(A6) move (A2)+,TCURSX-TBUF(A6) bra SAVTY SCCURS:lea SACOY-TBUF(A6),A2 move TCURSY-TBUF(A6),(A2)+ move TCURSX-TBUF(A6),(A2)+ rts SILUM:movem.l D0/D1/A0-A2,-(SP) bsr.s SCCURS clr (A2)+ move.l A6,A1 moveq #32,D0 cmp D0,D1 bcs.s GEL70 move D0,D1 GEL70:move.b D0,(A1)+ GEL71:subq #1,D1 bpl.s GEL70 move #3600,D1 GEL72:move.b (A0)+,(A1)+ dbeq D1,GEL72 beq.s GEL74 GEL73:clr.b (A1)+ GEL74:subq #1,A1 sub.l A6,A1 move A1,(A2)+ clr (A2)+ movem.l (SP)+,D0/D1/A0-A2 rts SIACY:movem.l D0/A6,-(SP) lea TCURSB-TBUF(A6),A6 move (A6)+,D0 cmp (A6),D0 ble.s GEL75 addq #1,(A6) GEL75:movem.l (SP)+,D0/A6 rts XLINP:lea TBUF,A6 moveq #0,D1 moveq #0,D2 bsr SIALG bsr.s SILUM st KEYRECT GER62:bsr ESCAPER movem.l A3/A4,-(SP) bsr SAVTY bsr.s SA3A bsr.s SCCURS movem.l (SP)+,A3/A4 tst D3 bne.s GER70 cmpi #$200,D0 bpl.s GER68 GER63:move.l A4,A0 GER64:bsr RELAD bne.s GER62 move.l A0,-(SP) bsr HLCLEF bra VMUSL GER68:addq #1,D0 move.l A3,A0 bra.s GER64 GER70:move #$80,D0 add D3,D0 bra.s GER63 SA3:clr.b KEYRECT SA3A:bsr CURSACT bsr VDKEY clr TCPREB+4 GEM20:bsr XKEY bsr HIDECM moveq #0,D6 move TCURSX-TBUF(A6),SACOX-TBUF(A6) clr.b SACOM-TBUF+1(A6) lea TCPREB+4(PC),A0 move (A0)+,(A0) clr -(A0) move.l D0,D3 swap D3 cmpi #5,D3 beq GEM60 tst D3 beq.s GEM32 move.b D0,D6 move D0,D5 lsr #8,D5 cmpi #1,D3 bne.s GEM30 lea TCURSY-TBUF(A6),A0 cmp (A0)+,D6 bne.s GEM30 cmp (A0)+,D5 beq.s GEM28 move D5,SACOX-TBUF(A6) GEM26:bsr SACURS GEM20R:bra.s GEM20 GEM28:bsr SBFIN bra.s GEM34 GEM30:rts GEM32:move D0,D1 subi #$100,D1 bcc.s GEM40 bsr SBX12 GEM34:bsr VDKEY lea TCURSX-TBUF(A6),A0 lea SACOX-TBUF(A6),A1 tst D6 beq.s GEM36 move (A0),(A1) bsr SALGM1 bra.s GEM26 GEM36:move (A0),D0 move (A1),D1 cmp D0,D1 ble.s GEM38 move D0,D1 GEM38:move D1,(A0) move D0,(A1) tst.b SACOM-TBUF+1(A6) beq.s GEM26 bsr SALGM bra.s GEM26 GEM40:subi #$100,D1 bcc.s GEM50 lea GEM41(PC),A0 bsr RELAD bne.s GEM43 jsr (A0) bra.s GEM34 GEM43:lea GEM44(PC),A0 bsr RELAD beq.s GEM30 GEM20R1:bra.s GEM20R GEM50:cmpi #$280,D0 beq.s GEM51 cmpi #$281,D0 bne.s GEM30 GEM51:move TCPREB+6(PC),D3 beq.s GEM20R1 move D0,-(SP) cmpi.b #"O",HEA23 beq.s GEM52 bsr SBCKS bra.s GEM54 GEM52:subq #1,D3 blt.s GEM54 bsr SBCL moveq #32,D0 bsr SBX12 bsr SBCL bra.s GEM52 GEM54:move.l TCPREB(PC),A0 move (SP)+,D0 cmpi #$280,D0 beq.s GEM55 bsr PRKYW bra.s GEM56 GEM55:bsr GEL83 GEM56:st D6 bra.s GEM62 GEM60:bsr SAKEYW GEM62:bsr SAKM move.l A0,A4 bsr GEO56 bra GEM34 SAREC:move.l A6,A0 moveq #32,D1 move.l A6,A1 GEO10:cmp.b (A1)+,D1 beq.s GEO10 subq #1,A1 move.l A6,A2 GEO12:move.b (A1)+,D0 beq.s GEO16 move.b D0,(A0)+ cmp.b D0,D1 beq.s GEO12 move.l A0,A2 bra.s GEO12 GEO16:move.l A2,A0 clr.b (A0) sub.l A6,A0 lea SACOT-TBUF(A6),A2 move A0,(A2) rts SBDEB:bsr.s SAREC clr -(A2) clr TCURSX-TBUF(A6) st D6 rts SBFIN:bsr.s SAREC move (A2),D0 addq #1,D0 lea TCURSC-TBUF(A6),A0 sub (A0)+,D0 bpl.s GEO20 clr D0 GEO20:move (A2),D1 addq #1,D1 sub D0,D1 beq.s GEO21 subq #1,D1 GEO21:move D0,-(A2) move D1,(A0) st D6 rts SBUT:move TCURSX-TBUF(A6),D1 lea SACOZ-TBUF(A6),A3 add (A3)+,D1 move.l A6,A0 add (A3),A0 move.l A6,A1 add D1,A1 bra.s GEO24 GEO22:move.b #32,(A0)+ addq #1,(A3) GEO24:cmp (A3),D1 bge.s GEO22 clr.b (A0)+ cmp.l #TBUF+3500,A0 bgt.s GEO26 rts GEO26:lea GEO27(PC),A0 SAERR1:bsr.s ALERT1R tst.b KEYRECT bne WHELP bra SANEWD GEO28:lea GEO28A(PC),A0 ALERT1R:bra ALERT1 SBX12:cmpi.b #$D,D0 beq.s GEO28 cmpi.b #$19,D0 beq.s GEO28 cmpi.b #$1A,D0 beq.s GEO28 bsr.s SBUT cmpi.b #"O",HEA23 beq.s GEO29 lea 1(A0),A2 GEO25:move.b -(A0),-(A2) cmp.l A1,A0 bgt.s GEO25 move.b D0,(A0) bra.s GEO30 GEO29:move.b D0,(A1)+ cmp.l A0,A1 blt.s GEO31 clr.b (A0)+ GEO30:addq #1,(A3) GEO31:move #-1,2(A3) SBCR:lea TCURSC-TBUF(A6),A0 move (A0)+,D0 subq #1,D0 cmp (A0),D0 ble.s GEO33 addq #1,(A0) rts GEO33:lea SACOZ-TBUF(A6),A1 add (A1)+,D0 cmp (A1),D0 bge.s GEO35 addq #8,-(A1) subq #7,(A0) st D6 GEO35:rts SBCL:lea TCURSX-TBUF(A6),A0 tst (A0) beq.s GEO37 subq #1,(A0) rts GEO37:lea SACOZ-TBUF(A6),A1 move (A1),D0 beq.s GEO41 moveq #8,D1 cmp D0,D1 ble.s GEO39 move D0,D1 GEO39:sub D1,(A1) subq #1,D1 add D1,(A0) st D6 GEO41:rts SBCK1:moveq #1,D3 SBCKS:bsr SBUT cmp D3,D1 bcc.s GEO43 move D1,D3 GEO43:tst D3 ble.s GEO50 move.l A1,A2 sub D3,A2 sub D3,(A3)+ GEO45:move.b (A1)+,(A2)+ bne.s GEO45 bra.s GEO48 GEO47:bsr.s SBCL GEO48:subq #1,D3 bpl.s GEO47 GEO49:move #-1,(A3) GEO50:rts SBDLT:bsr SBUT lea 1(A1),A2 subq #1,(A3)+ GEO52:move.b (A2)+,(A1)+ bne.s GEO52 bra.s GEO49 SBCLR:bsr SBDEB SBSDL:bsr SBUT move.l A1,A2 bsr.s SAVID clr.b (A1) sub.l A6,A1 move A1,(A3)+ bra.s GEO49 SAVID1:addq #1,A3 SAVID2:cmp.l A3,A4 bge.s GER55 move.b (A3),-(SP) clr.b (A3) bsr.s SAVID move.b (SP)+,(A3) GER55:subq #1,A3 rts SAVID:movem.l D0-D2/A0-A2,-(SP) lea TDEL,A0 moveq #32,D1 GEO81:cmp.b (A2)+,D1 beq.s GEO81 subq #1,A2 tst.b (A2) beq.s GEO85 move #3600,D0 bra.s GEO83 GEO82:cmp.b D1,D2 beq.s GEO84 GEO83:move.l A0,A1 GEO84:move.b (A2)+,D2 move.b D2,(A0)+ dbeq D0,GEO82 clr.b (A1) GEO85:movem.l (SP)+,D0-D2/A0-A2 rts SBSBS:bsr SBUT move.b (A1),D0 clr.b (A1) move.l A6,A2 bsr.s SAVID move.b D0,(A1) move D1,D3 bra GEO43 SBUND:lea TDEL-TBUF(A6),A4 GEO56:move.b (A4)+,D0 beq.s GEO58 bsr SBX12 bra.s GEO56 GEO58:rts SBTAB:move TCURSX-TBUF(A6),D0 add SACOZ-TBUF(A6),D0 move D0,D3 addq #8,D3 andi #$FFF8,D3 sub D0,D3 bra.s GEO61 GEO60:bsr SBCR GEO61:dbra D3,GEO60 rts SBSTB:move TCURSX-TBUF(A6),D0 add SACOZ-TBUF(A6),D0 move D0,D3 beq.s GEO65 subq #1,D0 andi #$FFF8,D0 sub D0,D3 bra.s GEO64 GEO63:bsr SBCL GEO64:dbra D3,GEO63 GEO65:rts SBCTR:bsr SBUT subq #2,A0 bsr.s SDELTR bra.s GEO61 SBCTL:bsr SBUT move.l A6,A0 bsr.s SDELTL bra.s GEO64 SDELTR:movem.l A1/A2,-(SP) lea TYPCAR,A2 moveq #0,D3 GEO67:cmp.l A0,A1 bgt.s GEO71 move.b (A1)+,D3 btst #1,(A2,D3.L) bne.s GEO67 GEO69:cmp.l A0,A1 bgt.s GEO71 move.b (A1)+,D3 btst #1,(A2,D3.L) beq.s GEO69 GEO71:subq #1,A1 move.l A1,D3 movem.l (SP)+,A1/A2 GEO72:sub.l A1,D3 bpl.s GEO73 moveq #0,D3 GEO73:rts SDELTL:movem.l A1/A2,-(SP) lea TYPCAR,A2 moveq #0,D3 GEO75:cmp.l A0,A1 ble.s GEO79 move.b -(A1),D3 btst #1,(A2,D3.L) beq.s GEO75 GEO77:cmp.l A0,A1 ble.s GEO79 move.b -(A1),D3 btst #1,(A2,D3.L) bne.s GEO77 addq #1,A1 GEO79:move.l (SP),D3 bsr.s GEO72 movem.l (SP)+,A1/A2 rts SCCR:bsr SCMOD beq.s GEQ14 bsr SAXINS bsr SCJOUR bsr SILAG bsr SIROL bsr SIBAS bra SIINS GEQ14:tst.b (A6) bne.s GEQ18 GEQ16:bsr SAXDEL bsr SILABT bsr SCJOUR bsr SIHAUT bra SILAG GEQ18:bsr SIRPL bsr SILABT bsr SCJOUR bsr SILAG bsr SIROL bra SILAG SCINS:bsr SCMOD beq.s GEQ22 bsr SAXINS GEQ20:bsr SCJOUR bsr SILAG bsr SIBAS bra SIINS GEQ22:bsr SIRPL st SAMF-TBUF(A6) bsr SILABT bra.s GEQ20 SCDON:bsr SISORL bne.s GEQ24 bsr SAPONTV move.l (A2),A0 cmpi.b #$1A,(A0) beq.s GEQ25 bsr SIROL GEQ24:bsr SILAG GEQ25:move SACPX-TBUF(A6),TCURSX-TBUF(A6) rts SCUOP:bsr SISORL move TCURSA-TBUF(A6),D0 lea TCURSY-TBUF(A6),A2 cmp (A2),D0 bge.s GEQ28 subq #1,(A2) bra.s GEQ24 GEQ28:bsr SAPONT move.l (A2)+,A0 move.l (A2)+,D0 move (A2),D1 bsr SAPRE bsr SAVLAB cmp.l -(A2),D0 bge.s GEQ24 movem.l D0/D1/A0/A2,-(SP) bsr SIBAS movem.l (SP)+,D0/D1/A0/A2 subq #4,A2 move.l A0,(A2)+ move.l D0,(A2)+ move D1,(A2) bra.s GEQ24 SCMOD:bsr SAREC bsr XMISF move.l TDHAUT(PC),A3 add SACOT-TBUF(A6),A3 addq #1,A3 cmp.l TDMAX(PC),A3 bge.s GEO88 lea SAMF-TBUF(A6),A0 tst.b (A0) rts GEO88:lea GEO87(PC),A0 bra SAERR1 SCJOUR:lea TDHAUT(PC),A0 lea SCVAR,A1 move.l (A0)+,D0 sub.l (A1)+,D0 move.l (A0)+,D1 sub.l (A1)+,D1 move.l (A1)+,D3 addq #6,A1 move (A1)+,D5 move (A1)+,D4 bsr SAPONT addq #8,A2 add D4,(A2)+ bpl.s GEO89 clr -2(A2) GEO89:sub D5,D4 GEO90:tst.l (A2) ble.s GEO92 add.l D0,(A2)+ add.l D1,(A2)+ bra.s GEO93 GEO92:addq #8,A2 GEO93:add D4,(A2)+ bpl.s GEO94 clr -2(A2) GEO94:bsr SIACY bhi.s GEO90 bra SACURS SILAG:bsr SAPONT bsr SAVTY tst.l (A2) ble.s GEO98 move.l (A2)+,A0 move.l (A2)+,D0 move (A2)+,D1 GEO950:lea TPINS(PC),A1 move.l A0,(A1)+ move.l D0,(A1) bsr SATBK cmpi.b #$1A,(A0) bne.s GEO95 bsr SIALV st (A2) rts GEO95:bsr SIALG bsr SILUM bsr SASUIV move.l A0,(A2)+ move.l D0,(A2)+ move D1,(A2)+ rts GEO98:move.l -10(A2),D0 bpl.s GEO980 GEO981:st 10(A2) rts GEO980:lea TDHAUT(PC),A1 move.l (A1)+,A0 cmp.l A0,D0 beq.s GEO981 move.l (A1)+,D0 move -(A2),D1 lea 12(A2),A2 bra.s GEO950 SIDUP:bsr SAPONTP move.l A2,A3 bsr SAPONT move.l A2,A0 move.l (A0)+,D0 move.l (A0)+,D1 move (A0)+,D2 GEP40:move.l (A0)+,(A2)+ move.l (A0)+,(A2)+ move (A0)+,(A2)+ cmp.l A3,A2 blt.s GEP40 lea SAPG-TBUF(A6),A2 tst.l (A2) bpl.s GEP41 move.l D0,(A2)+ move.l D1,(A2)+ move D2,(A2)+ GEP41:rts SIDWN:bsr SAPONT move.l A2,A3 bsr SAPONTP lea 10(A2),A0 GEP42:move.l -(A2),-(A0) move.l -(A2),-(A0) move -(A2),-(A0) cmp.l A3,A2 bgt.s GEP42 rts SIROL:bsr SIACY bhi.s GEP44 lea TCURSA-TBUF(A6),A4 move (A4)+,2(A4) bsr SAVTY bsr.s SIDUP moveq #"M",D0 bsr XEMUL move (A4)+,(A4) GEP44:bra SAVTY SIBAS:bsr.s SIDWN moveq #"L",D0 bra XEMUL SIINS:bsr.s SAPONTV move.l (A2)+,A0 move.l A0,A1 bsr SIDELP move.l (A2)+,D0 add D2,(A2) move (A2),D1 lea TPINS(PC),A2 move.l A0,(A2)+ move.l D0,(A2)+ bsr SATBK st SAMF-TBUF(A6) bra SIALV SAPONTV:bsr SAPONT tst.l (A2) ble SAT GEP45:rts SIHAUT:bsr SAPONT tst.l 10(A2) bmi.s GEP45 lea TCURSY-TBUF(A6),A4 move (A4),-(SP) bsr SIDUP moveq #"M",D0 bsr XEMUL move -2(A4),(A4) bsr SILAG move (SP)+,TCURSY-TBUF(A6) bra SAVTY SANIVT:lea SANIV(PC),A0 moveq #-$60,D0 sub.b (A0),D0 move.b D0,(A0) rts SILABT1:cmpi.b #"L",SANIV bne.s GEP48 bsr.s SANIVT cmp D0,D0 GEP48:rts SILABT:bsr.s SILABT1 beq SAT rts SAVIN:move.l A1,A0 bsr PTSUIV clr D1 bra SIDEL SAXINS:clr.l SACVR-TBUF(A6) bsr.s GEP57 move.l A1,-(SP) GEP55:bsr XINS1A GEP56:move.l (SP)+,A1 bsr SIDELP lea SACVR-TBUF+2(A6),A2 sub D2,(A2) bsr.s SAVIN sub D1,-(A2) rts GEP57:lea TPIMF(PC),A0 movem.l TPINS(PC),A1/A2 move.l A1,(A0)+ move.l A2,(A0)+ rts SAXDEL:bsr.s GEP58 bra XDEL1 GEP58:bsr.s GEP57 move.l A1,-(SP) bsr SIDELP lea SACVR-TBUF+2(A6),A2 move D2,(A2) bsr.s SAVIN move D1,-(A2) move.l (SP)+,A1 GEP60:rts SIRPL:tst.b SACOM-TBUF(A6) beq.s GEP60 bsr.s GEP58 move.l A1,-(SP) cmpi.b #$1A,(A1) beq.s GEP55 bsr XRPL bra.s GEP56 SALINS:tst TCURSA-TBUF(A6) beq.s GEP70 move SARES-TBUF(A6),D4 move.l TDMOD(PC),D0 moveq #1,D1 bsr.s SALIN move.l TDMAX(PC),D0 sub.l TDHAUT(PC),D0 moveq #10,D1 asr.l D1,D0 moveq #3,D1 bsr.s SALIN move.l TDLGN(PC),D0 subq.l #1,D0 moveq #5,D1 bsr.s SALIN move.l TPINSL(PC),D0 moveq #7,D1 SALIN:lea GEP69(PC),A0 lea 1(A0,D4.L),A1 mulu D4,D1 moveq #32,D2 add D2,D1 move.b D1,(A0)+ bsr PINTA GEP64:cmp.l A1,A0 bge.s GEP66 move.b D2,(A0)+ bra.s GEP64 GEP66:clr.b (A0) lea GEP68(PC),A0 bra X15G GEP70:rts WBLOCK:bsr SISORN lea GER50(PC),A2 lea GER51(PC),A3 bsr GEW14 bra SANEWD SADAM:tst TCURSA-TBUF(A6) beq.s GEP70 bsr DAMIN move D6,SARES-TBUF(A6) lea GEL80(PC),A2 bsr DAMGN SASIO:tst TCURSA-TBUF(A6) beq.s GEP70 move SARES-TBUF(A6),D4 lea GEP73(PC),A0 move D4,D0 mulu #9,D0 addi #32,D0 move.b D0,(A0)+ cmpi #4,D4 beq.s GEP74 moveq #6,D4 GEP74:lea HEA23(PC),A1 move.b (A1)+,D0 subq #1,D4 bra.s GEP77 GEP76:move.b (A1)+,D0 bset #5,D0 GEP77:move.b D0,(A0)+ dbra D4,GEP76 clr.b (A0) lea GEP72(PC),A0 bra X15G SCHOM:bsr SISORL move TCURSA-TBUF(A6),TCURSY-TBUF(A6) bra SILAG SCSUP:bsr SISORN move.l TDBAS(PC),A0 moveq #1,D0 clr D1 bra SANEWP SCSDW:bsr SISORN SCSDWA:lea TDHAUT(PC),A1 move.l (A1)+,A0 move.l (A1)+,D0 lea SAPG-TBUF(A6),A2 tst.l (A2) ble SANEWK move.l (A2)+,A1 move 4(A2),D1 move.l D0,D3 bra SANEWB SCSTB:bsr SISORN bsr XREST1 bra SANEWC SCSHLP:bsr.s KN43 beq.s KN44 move.l A6,-(SP) move.l A0,A6 bsr HLCLEF move.l (SP)+,A6 bsr SAENDS bsr KN40 bne.s KN42 bsr HLINIT KN42:bra HLFND1 KN43:bsr SBUT move.l A1,A0 move.l A6,A1 jsr GEY15A tst.b (A0) KN44:rts SCCHLP:bsr.s KN43 beq.s KN44 bsr.s KN45 bra WNUMMH KN45:bsr JPCLEF bsr SAENDS lea T3FDB6,A6 rts SCCRET:bsr.s KN43 beq.s KN44 bsr.s KN45 bra WSL1 SCHLP:bsr SAENDS bra WHELP SCSCR:bsr SISORL move TCURSB-TBUF(A6),D6 bsr SALAST bra SILAG SCSINS:bsr XTOGIO bra SASIO SCCUP:bsr SISORN lea TCURSB-TBUF(A6),A0 move (A0),D2 sub -(A0),D2 lea SAPG-TBUF(A6),A2 move.l (A2)+,A0 move.l (A2)+,D0 move (A2)+,D1 GEQ34:bsr SAPRE dbra D2,GEQ34 bra SANEWP SCCDW:bsr SISORN bsr SAPONTP bra SANEWA SCSUN:tst.b SAMF-TBUF(A6) beq SILAG bra SIINS SCCDL:bsr SBCLR lea SAMF-TBUF(A6),A0 tst.b (A0) beq GEQ16 clr.b (A0) bsr SIHAUT bra SILAG SCCCR:bsr SAENDS trap #3;HOT SCSES:bsr SISORN bsr SAEND move.l A6,A0 bsr X15 trap #3;HOT SCCSUN:bsr SISORN SCCSUN1:lea TPIMF(PC),A1 GEQ36:move.l (A1)+,A0 move.l (A1)+,D0 bra SANEWK SCACLF:bsr SISORN SCACLF1:bsr SILABT1 bsr.s SCASHOW lea TPIC(PC),A1 bra.s GEQ36 SCACRT:bsr SISORN SCACRT1:bsr SILABT1 bsr.s SCASHOW lea TPID(PC),A1 move.l (A1)+,A0 move.l (A1)+,D2 bsr PTPRE1 move.l D2,D0 bra SANEWK SCACDL:bsr SISORL SCACDL1:bsr XDELBK1 bra.s GAV58 SCACMV:bsr SISORL SCACMV1:bsr SILAG bsr XMOVE bra.s GAV58 SCACRP:bsr SISORL SCACRP1:bsr SILAG bsr XDIT GAV58:bsr.s SCASHOW bra SAT SCAHIDE:movem.l A0/A1,-(SP) lea GAV52(PC),A1 bra.s GAV56 SCASHOW:movem.l A0/A1,-(SP) lea GAV54(PC),A1 GAV56:lea GAV50(PC),A0 move.b (A1)+,(A0)+ move.b (A1)+,(A0)+ move.b (A1)+,(A0)+ move.b (A1)+,(A0)+ movem.l (SP)+,A0/A1 rts SCACS:bsr SISORN bra.s SCACS1 SCACH:bsr SISORN SCACH1:bsr.s SCAHIDE bra.s SANEWD SCACSH1:cmpi.b #"H",GAV50 beq.s SCACH1 bra.s SCACS1 SCACDW:bsr SISORN SCACDW1:bsr.s GEQ40 tst.b TSISORN-TBUF(A6) bne.s GEQ390 GEQ39:bsr PTSUIV GEQ390:lea TPID(PC),A2 bra.s GEQ38 GEQ40:bsr SAPONT move.l (A2)+,A0 move.l (A2)+,D2 rts SCACUP:bsr.s SISORN SCACUP1:bsr.s GEQ40 lea TPIC(PC),A2 GEQ38:move.l A0,(A2)+ move.l D2,(A2)+ SCACS1:bsr.s SCASHOW SANEWD:lea SAPG-TBUF(A6),A2 move.l (A2)+,-(SP) move.l (A2)+,-(SP) move (A2)+,-(SP) bsr SADAM bsr SAVTH move (SP)+,D1 move.l (SP)+,D0 move.l (SP)+,A0 bra GEP91 SCINDT:bsr.s SISORN lea SANOID(PC),A0 lea GEQ50(PC),A1 bsr HEA27 lea SAPG-TBUF(A6),A3 bsr SIENT1 move D1,SAPG-TBUF+8(A6) bra.s SANEWD SCMENU:bsr.s SISORN lea TCURSA-TBUF(A6),A0 subq #4,(A0) neg (A0) bra.s SANEWD SCTOGN:bsr.s SISORL bsr SANIVT bra.s SANEWD SISORL:bsr.s SISORN move D3,-(SP) beq.s GEP80 bsr SIHAUT bra.s GEP81 GEP80:bsr SILAG GEP81:move (SP)+,D3 rts SISORN:bsr SCMOD beq.s GEP54 clr.b (A0) tst.b (A6) bne.s GEP50 moveq #1,D3 bra.s GEP53 GEP50:bsr SAXINS GEP51:bsr SCJOUR GEP52:clr D3 GEP53:move.b D3,TSISORN-TBUF(A6) rts GEP54:tst.b SACOM-TBUF(A6) beq.s GEP52 bsr SIRPL bra.s GEP51 SALAST:lea TCURSY-TBUF(A6),A0 move D6,(A0) GEP88:bsr SAPONT tst.l (A2) bpl.s GEP89 subq #1,(A0) bra.s GEP88 GEP89:rts SANEWC:lea SAPG-TBUF(A6),A2 SANEWA:tst.l (A2) ble SCSDWA move.l (A2)+,A0 move.l (A2)+,D0 move (A2)+,D1 bra.s SANEWP SANEWK:move.l D0,D3 move.l TDBAS(PC),A1 moveq #0,D1 SANEWB:bsr SIDEL move.l D3,D0 SANEWP:movem.l D0/D1/A0,-(SP) bsr SADAM bsr SAVTH movem.l (SP)+,D0/D1/A0 lea TPINS(PC),A1 move.l A0,(A1)+ move.l D0,(A1)+ GEP91:move.l TPILE,SP bsr SAPGH bra.s GEP12 SAT0:lea TBUF,A6 bsr SILABT1 GEP10:clr.b SAMF-TBUF(A6) clr.b SAFER-TBUF(A6) SAT:move.l TPILE,SP bsr SADAM bsr SAPGJ GEP12:bsr ESCAPER bsr SALINS bsr SAVTY bsr SA3 bsr SCCURS lea SACPX-TBUF(A6),A1 move -(A2),(A1)+ clr.l (A1)+ addq #8,A2 movem.l TDHAUT(PC),D2/A3-A5 movem.l D2/A3-A5,(A2) tst D3 bne.s GEP18 cmpi #$200,D0 bpl.s GEP16 GEP13:jsr (A0) bra.s GEP12 GEP16:addq #1,D0 lea GEP15(PC),A0 bsr RELAD beq.s GEP13 lea GEP38(PC),A0 bsr RELAD bne.s GEP12 move.l A0,-(SP) bsr SAENDS move.l (SP)+,A0 jsr (A0) SAT1:lea TBUF,A6 bra.s GEP10 WRBLOB:bsr SAEND1 bsr WRBLOK bra.s SAT1 WPRINB:bsr SAEND1 bsr WPRINT1 bra.s SAT1 GEP18:subq #1,D3 bne.s GEP28 move D6,D2 bsr SAPONT1 sub 8(A2),D5 movem D5/D6,-(SP) bsr SISORL movem (SP)+,D5/D6 lea TCURSY-TBUF(A6),A0 beq.s GEP20 cmp (A0),D6 ble.s GEP20 subq #1,D6 GEP20:move D6,(A0) bsr SAPONT tst.l (A2) bpl.s GEP24 clr D5 GEP22:subq #1,(A0) lea -10(A2),A2 tst.l (A2) ble.s GEP22 bra.s GEP26 GEP24:add 8(A2),D5 bpl.s GEP25 clr D5 GEP25:addq #2,A0 cmp (A0),D5 bcs.s GEP26 move (A0),D5 subq #1,D5 GEP26:move D5,SACPX-TBUF(A6) bsr GEQ24 bra GEP12 GEP28:subq #1,D3 bne.s GEP32 move D6,-(SP) bsr SISORN move (SP)+,TCURSY bsr SILABT1 bsr SAPONT bra SANEWA GEP32:movem D5/D6,-(SP) bsr SISORN move (SP)+,D2 bsr.s GEP34 lea TPIC(PC),A2 move.l A0,(A2)+ move.l D2,(A2)+ move (SP)+,D2 bsr.s GEP34 bra GEQ39 GEP34:bsr SAPONT1 tst.l (A2) bpl.s GEP35 lea TDHAUT(PC),A2 GEP35:move.l (A2)+,A0 move.l (A2)+,D2 rts X9HL:bsr X9 HLMLG:move TCURSY,D0 lea THLPG-16,A2 add D0,D0 add D0,D0 add D0,A2 move.l A1,(A2) rts X19:movem.l D0/D6/A2/A3,-(SP) lea TCURSX,A3 moveq #32,D6 GEY84:bsr.s HLMLG move -4(A3),D0 cmp -6(A3),D0 beq.s GEY92 GEY85:move.l A0,A2 GEY86:move.b (A2)+,D0 beq.s GEY88 cmp.b D6,D0 bne.s GEY86 move.b (A2)+,D0 beq.s GEY87 cmp.b D6,D0 beq.s GEY87 move.b (A2)+,D0 beq.s GEY88 cmp.b D6,D0 beq.s GEY88 subq #1,A2 GEY87:subq #1,A2 GEY88:move (A3),D0 add D0,D0 cmp -2(A3),D0 bcs.s GEY91 move.l A2,D0 sub.l A0,D0 add (A3),D0 cmp -2(A3),D0 bcc.s GEY93 bra.s GEY91 GEY90:bsr X12A GEY91:move.b (A0)+,D0 cmp.l A2,A0 blt.s GEY90 bsr XC tst.b D0 bne.s GEY85 GEY92:movem.l (SP)+,D0/D6/A2/A3 rts GEY93:bsr X9HL moveq #1,D0 bra.s GEY92 HLTERM:tst.b (A0)+ beq.s GEZ20 subq #1,A0 GEZ20:lea THLMOD,A2 rts ALINEA:tst THLPAR beq.s GEZ22 moveq #7,D0 bsr XCK clr THLPAR GEZ22:rts HLPRL:movem.l D0-D6/A1-A3,-(SP) clr.l INDT GEY95:lea TCURSB,A3 move.l A0,A1 move.b (A0)+,D0 beq.s GEY980 cmpi.b #"\\",D0 bne GEZ17 bsr X9HL moveq #0,D0 move.b (A0)+,D0 cmpi.b #"P",D0 beq.s GEZ12 cmpi.b #"Z",D0 beq.s GEZ16 cmpi.b #"T",D0 beq.s GEY981 cmpi.b #"S",D0 beq.s GEY981 cmpi.b #"R",D0 beq.s GEY981 subi #"A",D0 cmpi #THNBN,D0 bcc.s GEZ170 add D0,D0 bsr XCK GEY97:cmpi.b #32,(A0)+ beq.s GEY97 subq #1,A0 bsr VIDEOI GEY96:bsr X19 bne.s GEY96 bsr VIDEON GEY980:bsr X9HL moveq #1,D0 GEY98:tst.b (A0)+ beq.s GEY98 subq #1,A0 bsr GEZ20 move.l D0,(A2) bra.s GEZ14 GEY981:moveq #0,D0 bra.s GEY98 GEZ12:bsr HLTERM move #1,(A2) GEZ13:cmpi.b #32,(A0)+ beq.s GEZ13 subq #1,A0 lea THLPRG,A2 tst.l (A2) bne.s GEZ14 move.l A0,(A2) GEZ14:move.l A1,THLFIN movem.l (SP)+,D0-D6/A1-A3 rts GEZ16:bsr HLTERM move.l #$20001,(A2) bra.s GEZ14 GEZ170:subq #1,A0 GEZ17:subq #1,A0 GEZ18:lea THLMOD,A2 move 2(A3),D0 cmp (A3),D0 bcc.s GEZ14 move (A2),D0 beq.s GEZ25 subq #1,D0 beq.s GEZ30 move.l A0,-(SP) lea GEZ19(PC),A0 bsr X15 move.l (SP)+,A0 GEZ25:bsr ALINEA GEZ26:bsr X19 bne.s GEZ18 bsr.s GEZ27 beq.s GEZ14 bra.s GEZ26 GEZ27:move.l A0,A1 lea TCURSB,A3 move 2(A3),D0 cmp (A3),D0 bcc.s GEZ28 move.b (A0),D0 beq.s GEZ28 cmpi.b #"\\",D0 beq.s GEZ28 cmpi.b #$1A,D0 rts GEZ28:clr D0 rts GEZ30:move.l A0,A1 bsr HLMLG lea TPI(PC),A1 move.l (A1),-(SP) move.l A0,(A1)+ move.l (A1),-(SP) clr.l (A1)+ lea TDF1(PC),A1 moveq #15,D0 move.l D0,(A1)+ clr (A1) bsr PLGN1 lea TPL(PC),A1 move.l (SP)+,(A1) move.l (SP)+,-(A1) bsr.s GEZ27 beq GEZ14 bra.s GEZ30 HLINIT:lea SOURCEH(PC),A1 move.l (A1)+,A0 move.l (A1)+,A2 subq #2,A2 lea THLA,A1 clr.l THLCOU1-THLA(A1) moveq #23,D0 moveq #"\\",D2 moveq #"A",D3 bra.s GEY80A GEY80:tst.b (A0)+ bne.s GEY80 GEY80A:cmp.l A2,A0 bge.s GEY81 cmp.b (A0),D2 bne.s GEY80 addq #1,A0 cmp.b (A0),D3 bne.s GEY80 subq #1,A0 move.l A0,(A1)+ dbra D0,GEY80 GEY81:move.l A2,(A1) addq.l #2,(A1)+ cmpi #23,D0 bne.s GEY82 moveq #84,D0 trap #15 GEY82:rts HLPR1:lea THLPG,A1 moveq #NBLIGNE-5,D0 GEZ77:clr.l (A1)+ dbra D0,GEZ77 move D6,(A1)+ move.l A0,(A1)+ clr.l (A1)+ move.l A0,(A1) bsr HIDECM moveq #12,D0 bsr X12B lea THLA-THLNIV-10(A1),A1 GEY83:cmp.l (A1)+,A0 bge.s GEY83 move.l -8(A1),A2 rts HLSOM:lea THLA,A3 moveq #0,D6 move.l D6,THLMOD move.l (A3)+,A0 bsr.s HLPR1 GEZ35:bsr.s HLPRF beq.s GEZ36 bsr HLPRL move.l (A3)+,A0 bra.s GEZ35 GEZ36:rts HLPRF2:move.l SOURCEI(PC),A2 subq #2,A2 cmp.l A2,A0 bge.s GEZ37 rts HLPRF:bsr.s HLPRF2 beq.s GEZ38 HLPRF1:lea TCURSB,A2 move (A2)+,D0 cmp (A2),D0 bhi.s GEZ38 GEZ37:clr D0 GEZ38:rts HLLOC:moveq #"\\",D0 moveq #"A",D1 add D5,D1 move.l A2,A1 moveq #0,D3 bra.s GEZ40 GEZ39:tst.b (A1)+ bne.s GEZ39 GEZ40:cmp.l A0,A1 bgt.s GEZ41 cmp.b (A1),D0 bne.s GEZ39 addq #1,A1 cmp.b (A1),D1 bne.s GEZ39 lea -1(A1),A2 moveq #1,D3 bra.s GEZ39 GEZ41:tst D3 rts HLSOMA:bsr.s HLSOM bra.s HLRET HLHL:move.l THLA,A0 moveq #THNBN,D6 bra.s HLNIVV HLPGD:move THLNIV,D6 move.l THLFIN,A0 HLNIVV:bsr.s HLNIV HLRET:move.l TPILE,SP bra GEZ67 HLCLCR:rts HLDECN:move THLNIV,D6 subq #1,D6 ble.s HLSOMA bra.s HLNIVX HLINCN:move THLNIV,D6 addq #1,D6 cmpi #6,D6 bge.s HLNIV5 bra.s HLNIVX HLNIV1:moveq #1,D6 bra.s HLNIVX HLNIV2:moveq #2,D6 bra.s HLNIVX HLNIV3:moveq #3,D6 bra.s HLNIVX HLNIV4:moveq #4,D6 bra.s HLNIVX HLNIV5:moveq #5,D6 bra.s HLNIVX HLNIVM:move THLNIV,D6 HLNIVX:bsr.s HLNIVS bra.s HLRET HLNIVS:move.l THLCOU,A0 HLNIV:bsr HLPR1 moveq #0,D5 GEZ42:cmp.l A0,A2 bge GEZ46 exg A2,A0 bsr HLPRL exg A2,A0 GEZ43:addq #1,D5 cmp D6,D5 bcc.s GEZ44 bsr HLLOC beq.s GEZ43 bra.s GEZ42 GEZ44:cmp.l A0,A2 bge.s GEZ46 move.l A0,THLFIN bsr PRLPT bra.s GEA29 GEA26:move #1,THLPAR clr D0 GEA27:move D0,THLMOD GEA28:tst.b (A2)+ bne.s GEA28 GEA29:cmp.l A0,A2 bge.s GEZ46 move.b (A2)+,D0 beq.s GEA26 cmpi.b #"\\",D0 bne.s GEA28 move.b (A2)+,D1 GEA290:cmpi.b #32,(A2)+ beq.s GEA290 subq #1,A2 move.l A2,THLPRG moveq #1,D0 cmpi.b #"P",D1 beq.s GEA27 clr.l THLPRG moveq #2,D0 cmpi.b #"Z",D1 beq.s GEA27 bra.s GEA26 GEZ45:move.l A0,A1 bsr X9HL bsr HLPRF1 beq.s ENCADR bsr HLPRL GEZ46:bsr HLPRF1 beq.s ENCADR bsr HLPRF2 bne.s GEZ47 lea PRM3(PC),A0 bsr X15N bra.s ENCADR GEZ47:cmpi #THNBN,D6 bcc.s GEZ45 moveq #"\\",D0 move.l SOURCEI(PC),A2 bra.s GEZ49 GEZ48:tst.b (A0)+ bne.s GEZ48 GEZ49:cmp.l A2,A0 bge.s ENCADR cmp.b (A0),D0 bne.s GEZ48 addq #1,A0 move.b (A0),D1 subi #"A",D1 cmp.b D1,D6 bcs.s GEZ48 subq #1,A0 bra.s GEZ45 ENCADR:lea TD000,A0 move -4(A0),D4 move -8(A0),D5 move -10(A0),D1 moveq #1,D0 add D4,D0 mulu D1,D0 add D0,A0 lea TYPCAR,A2 GEA16:moveq #0,D0 GEA17:lea THLCLE,A1 moveq #0,D2 move.l A0,A3 tst.b (A1) beq.s GEA22 GEA18:move.b (A1)+,D2 beq.s GEA24 cmp.b (A3)+,D2 beq.s GEA18 tst.b (A2,D2.L) bpl.s GEA20 bset #5,D2 cmp.b -1(A3),D2 beq.s GEA18 GEA20:addq #1,A0 addq #1,D0 cmp D0,D4 bcc.s GEA17 addq #1,D1 cmp D1,D5 bcc.s GEA16 GEA22:rts GEA24:move.l A3,D2 sub.l A0,D2 add D0,D2 subq #1,D2 cmp D2,D4 bcs.s GEA20 move D1,D3 bsr BOXT bra.s GEA20 HLPGU:lea THLNIV,A1 move (A1)+,D6 beq HLSOMA move.l (A1),A0 lea TCURSB,A3 move (A3),D5 subq #4,D5 asr D5 cmpi #THNBN,D6 bcs.s GEZ58 mulu 4(A3),D5 asr D5 sub D5,A0 move.l THLA,A2 GEZ53:cmp.l A0,A2 bge.s GEZ54 subq #1,D5 tst.b -(A0) bne.s GEZ53 addq #1,A0 move.b (A0),D1 beq.s GEZ55 cmpi.b #"\\",D1 beq.s GEZ55 tst D5 bmi.s GEZ55 subq #1,A0 bra.s GEZ53 GEZ54:move.l A2,A0 GEZ55:bra HLNIVV GEZ58:bsr HLPR1 cmp.l A0,A2 bne.s GEZ60 cmp.l THLA,A0 beq.s GEZ55 move.l -12(A1),A2 GEZ60:moveq #"\\",D0 moveq #0,D3 move.l A2,A1 bsr.s GEZ62 move.l A1,A2 neg D3 sub D5,D3 ble.s GEZ64 bsr.s GEZ62 GEZ64:bra.s GEZ54 GEZ61:tst.b (A2)+ bne.s GEZ61 GEZ62:cmp.l A0,A2 bge.s GEZ63 cmp.b (A2),D0 bne.s GEZ61 addq #1,A2 move.b (A2),D1 subi #"A",D1 cmp.b D1,D6 bcs.s GEZ61 subq #1,D3 bne.s GEZ61 subq #1,A2 GEZ63:rts KN40:lea GEZ65(PC),A2 bsr DAMGN move.l SOURCEH(PC),A0 cmpi.b #$1A,(A0) bne.s GEW90 bsr WOVERH GEW90:tst.l THLA rts HLSTAB:bsr XREST1 WHELP:bsr.s KN40 bne.s GEZ76 bsr HLINIT GEZ66:bsr HLSOM GEZ67:moveq #11,D0 bsr X12B lea THLCLE,A0 lea GEZ68(PC),A3 lea GER60(PC),A4 bsr XLINP GEZ72:bsr.s HLCLEF GEZ76:move.l TPILE,SP bsr HLNIVM bra.s GEZ67 JPCLEF:move.l A6,-(SP) move.l A0,A6 lea T3FDB6,A0 moveq #1,D3 bra.s GEZ70 HLCLEF:move.l A6,-(SP) moveq #0,D3 lea THLCLE,A0 GEZ70:lea TYPCAR,A2 GEZ71:cmpi.b #32,(A6)+ beq.s GEZ71 subq #1,A6 moveq #0,D0 moveq #24,D1 GEZ73:move.b (A6)+,D0 move.b (A2,D0.L),D2 btst #1,D2 beq.s GEZ75 tst D3 bne.s GEZ74 btst #6,D2 beq.s GEZ74 bclr #5,D0 GEZ74:move.b D0,(A0)+ dbra D1,GEZ73 GEZ75:clr.b (A0) move.l (SP)+,A6 rts HLSINS:bsr XTOGIO bsr SASIO bra.s GEZ76 HLSWAP:lea THLNIV,A1 lea THLNIV1-THLNIV(A1),A2 move (A1)+,D6 move.l (A1),A0 move (A2)+,D5 move.l (A2),D0 move.l A0,(A2) move D6,-(A2) tst.l D0 beq.s GEZ76 move.l D0,(A1) move D5,-(A1) bra GEZ76 HLBDR:lea THLPG-16,A2 add D6,D6 add D6,D6 add D6,A2 move.l (A2),A0 lea SOURCEH(PC),A2 cmp.l (A2)+,A0 bcs GEZ76 move.l (A2),A2 subq #2,A2 cmp.l A2,A0 bcc GEZ76 moveq #THNBN,D6 cmpi.b #"\\",(A0)+ bne.s GEZ78 move.b (A0),D0 subi #$40,D0 cmp.b D6,D0 bcc.s GEZ78 move.b D0,D6 move.l A0,A2 GEA35:tst.b (A2)+ bne.s GEA35 moveq #THNBN,D0 cmpi.b #"\\",(A2)+ bne.s GEA37 move.b (A2),D1 subi #$41,D1 cmp.b D0,D1 bcc.s GEA37 move.b D1,D0 GEA37:cmp D0,D6 bcc.s GEZ78 move D0,D6 GEZ78:subq #1,A0 bra HLNIVV RDCKW:lea TD000,A1 move TCURSC-TD000(A1),D1 addq #1,D1 mulu D6,D1 add D5,D1 jmp GEY15 HLBGC:bsr.s RDCKW move.l A0,A6 bra GEZ72 HLPRG:move.l THLPRG,D0 beq.s GEZ82 move.l D0,A0 move.l TDHAUT(PC),A1 move.l TDMAX(PC),A2 subq #2,A2 GEZ80:cmp.l A2,A1 bgt.s GEZ81 move.b (A0)+,(A1)+ bne.s GEZ80 move.b (A0),D0 beq.s GEZ81 cmpi.b #"\\",D0 bne.s GEZ80 GEZ81:clr.b -1(A1) move.b #$1A,(A1) bsr XCONVR lea GEA38(PC),A0 bsr XN15 lea GEX14(PC),A0 bsr X15 trap #3;HOT GEZ82:moveq #85,D0 trap #15 HLFND1:moveq #-1,D6 HLFNDA:move.l THLA,A0 bra.s HLFND HLFND2:moveq #0,D6 bra.s HLFNDA HLFND3:moveq #-1,D6 bra.s HLFNDB HLFND4:moveq #0,D6 HLFNDB:move.l THLFIN,A0 HLFND:moveq #0,D1 move.b THLCLE,D1 beq GEZ76 move.l SOURCEI(PC),A3 subq #2,A3 lea TYPCAR,A2 moveq #"\\",D3 moveq #0,D0 move D1,D2 btst #6,(A2,D1.L) beq.s GEZ84 bset #5,D2 GEZ84:move.l A0,A5 GEZ840:moveq #0,D5 cmp.l A3,A0 bcc.s GEZ92 GEZ85:move.b (A0)+,D0 beq.s GEZ84 subq #1,A0 cmp D0,D3 bne.s GEZ86 move.l A0,A5 addq #1,A0 move.b (A0)+,D4 subi #$40,D4 cmpi.b #THNBN+1,D4 bcc.s GEZ86 move.b D4,D5 GEZ86:tst D6 beq.s GEZ88 tst D5 bne.s GEZ88 GEZ87:tst.b (A0)+ bne.s GEZ87 bra.s GEZ840 GEZ88:move.b (A0)+,D0 beq.s GEZ840 cmp D0,D1 beq.s GEZ89 cmp D0,D2 bne.s GEZ88 GEZ89:move.l A0,A6 lea THLCLE+1,A1 GEZ90:move.b (A1)+,D4 beq.s GEZ92 move.b (A6)+,D0 btst #6,(A2,D0.L) beq.s GEZ91 bclr #5,D0 GEZ91:cmp.b D0,D4 bne.s GEZ88 bra.s GEZ90 GEZ92:move.l A5,A0 moveq #THNBN,D6 GEZ93:bra HLNIVV SETMS:move D0,-(SP) bsr.s SHOWMA move (SP)+,D0 beq.s S61A0 HIDEM:tas MOUSE0 bne.s S6170 movem.l D0-D2/A0-A2,-(A7) dc.w $A00A movem.l (A7)+,D0-D2/A0-A2 S6170:rts SHOWM:tst.b MOUSE0 beq.s S61A0 SHOWMA:movem.l D0-D2/A0-A2,-(A7) clr.b MOUSE0 move.l VDIPB+4,A0;INTIN move (A0),-(SP) clr (A0) move.l A0,-(SP) dc.w $A009 move.l (SP)+,A0 move (SP)+,(A0) movem.l (A7)+,D0-D2/A0-A2 S61A0:rts DEV404:movem.l D0/D5/A1/A3,-(SP) bsr SRESOL0 movem.l (SP)+,D0/D5/A1/A3 bsr.s SHOWMA jmp DEV404.L DEV405=*-4 X15G:movem.l D0-D2/A1-A3,-(A7) move.l A0,A3 bsr.s HIDEM I15GA:move.b (A3)+,D0 beq.s I15GB bsr PCONOUT2 bra.s I15GA I15GB:bsr.s SHOWM move.l A3,A0 movem.l (SP)+,D0-D2/A1-A3 rts SETCOL4:move #$FFF,D1 clr D0 bsr.s SETCOL moveq #1,D0 bsr.s SETCOL0 move D0,D3 moveq #3,D0 bsr.s SETCOL0 move D0,D4 moveq #15,D0 SETCOL0:move (A3)+,D1 SETCOL:move D1,-(SP) move D0,-(SP) move #7,-(SP) trap #14 addq #6,SP GEU11:rts RESOL:dc.w 0;| RESOLB:dc.w 0;| SETCED:movem.l D0-D7/A0-A6,-(SP) bsr HIDECM lea RESOL(PC),A0 move RESOLB(PC),D1 cmpi #2,D1 bge.s GEU101 andi #1,(A0) cmp (A0),D1 sne AESOK move (A0),D1 bra.s GEU102 GEU101:cmp (A0),D1 bls.s GEU10 andi #1,(A0) add D1,(A0) GEU10:moveq #2,D0 bra.s GEU114 GEU102:move D1,-(SP) moveq #-1,D0 move.l D0,-(SP) move.l D0,-(SP) move #5,-(SP) trap #14 addq #8,SP move #2,(SP) trap #14 addq #2,SP move.l D0,-(SP) move.l D0,-(SP) move #5,-(SP) trap #14 addq #8,SP move.l (SP)+,D0 GEU114:lea COLRES(PC),A3 mulu #6,D0 add D0,A3 bsr SETCOL4 move RESOL(PC),D0 moveq #40,D3 moveq #4,D1 moveq #16,D2 move #$4140,D4 cmpi #1,D0 bhi.s GEU12 bne.s GEU116 moveq #80,D3 moveq #2,D1 moveq #4,D2 move #$4280,D4 GEU116:lea RESOLPX,A0 move D4,(A0) move.b D1,RESOLPC-RESOLPX+1(A0) move.b D2,RESOLI-RESOLPX+1(A0) moveq #3,D1 moveq #3,D4 moveq #25,D2 bra GEU14 GEU12:dc.w $A000 addq #4,A1 move.l A1,A0 GEU120:tst.l (A0)+ bne.s GEU120 move.l A0,D1 sub.l A1,D1 asr #2,D1 subq #1,D1 moveq #0,D0 lea RESOL(PC),A2 movem (A2),D0/D4;RESOL,RESOLB lea 8(A1),A0 cmpi #6,D4 bne.s .1 addq #4,A0 .1:sub D4,D0 divu D1,D0 swap D0 add D0,D4 move D4,(A2) addq #1,D0 GEU121:move.l -(A0),A2 subq #1,D0 beq.s GEU126 GEU122:cmp.l A1,A0 bgt.s GEU121 GEU124:tst.l (A0)+ bne.s GEU124 subq #4,A0 bra.s GEU121 GEU126:move.l #$3FFF,D1 lea RESOLPX,A3 move (A3),D3 and.l D1,D3 move $34(A2),D5 move.b D5,RESOLCX-RESOLPX+1(A3) divu D5,D3 andi #$FFFC,D3 bsr GEU16 move RESOLPY-RESOLPX(A3),D2 and.l D1,D2 move $52(A2),D5 move.b D5,RESOLCY-RESOLPX+1(A3) divu D5,D2 move D4,D1 bsr GEU16 move #T1173-TD000,D6 divu D3,D6 cmp D2,D6 bcc.s GEU131 move D6,D2 GEU131:moveq #CONTRL-T1173,D6 cmp D2,D6 bcc.s GEU132 move D6,D2 GEU132:movem D1-D4,-(SP) movem.l VDIPB,A0/A1;CONTRL;INTIN move.l A2,(A1) move #5,(A0)+ clr.l (A0)+ move #2,(A0)+ clr (A0)+ move #102,(A0)+ move UAES0,(A0)+ jsr VDI movem (SP)+,D1-D4 GEU14:lea TCURSBM,A0 lea RESOLX+1,A3 move.b D3,(A3) move.b D2,RESOLY-RESOLX(A3) subq #1,D3 subq #1,D2 movem D1/D4,WIDTH2K move D2,(A0) move D2,TCURSB-TCURSBM(A0) move D3,TCURSC-TCURSBM(A0) moveq #0,D0 move D2,D0 divu #3,D0 sub D0,D2 move D2,TCURSBL bsr.s EMULNOR bsr DAMPR1 movem.l (SP)+,D0-D7/A0-A6 GEU15:rts GEU16:moveq #1,D6 moveq #0,D4 .1:cmp D5,D6 bcc.s GEU15 addq #1,D4 add D6,D6 bra.s .1 EMULNOR:movem.l D0-D3/A1-A3,-(SP) moveq #7,D3 lea T226,A3 .1:move.b (A3)+,D0 bsr PCONOUT2 dbra D3,.1 movem.l (SP)+,D0-D3/A1-A3 bra VIDEON VDIINIT:lea TEFFET,A0 moveq #1,D0 move.l D0,(A0)+ clr.l (A0)+ move D0,(A0)+ lea MD842(PC),A0 MD840:clr D3 move.b (A0)+,D3 beq.s MD841 move.b (A0)+,D0 ext D0 move D0,INTIN;OK clr INTIN+2;OK bsr.s VDIC bra.s MD840 MD841:lea PTSIN,A0;OK move.l #$10000,(A0) moveq #16,D3 bsr.s VDIC clr.l (A0) moveq #19,D3 bsr.s VDIC clr.l (A0)+ move #$4001,D0 move RESOLPX,(A0) sub D0,(A0)+ move RESOLPY,(A0) sub D0,(A0)+ move #129,D3 move #1,INTIN;OK VDIC:movem.l A0/A5,-(SP) lea MD94(PC),A5 move UAES0,D0 jsr VDIBA movem.l (SP)+,A0/A5 rts AESCM:bsr SHOWM AESC:movem.l A0/A5,-(SP) lea MD94(PC),A5 jsr AESB movem.l (SP)+,A0/A5 rts MD94:dc.w 0 VDI100:moveq #10,D3 bsr.s AESC moveq #77,D3 bsr.s AESC move AINTOUT,D0;OK move D0,UAPPL move D0,UAES0 lea INTIN,A0;OK moveq #9,D0 MD84:move #1,(A0)+ dbra D0,MD84 move #2,(A0) moveq #100,D3 lea VDIPB+12,A0 move.l #WORKOUT,(A0)+ move.l #WORKOUT+90,(A0) bsr.s VDIC move CONTRL+12,UAES0 bsr.s AESVDIPB RESOLM:moveq #102,D3 bsr VDIC lea RESOLPX,A1 move.l VDIPB+12,A0;INTOUT move 8(A0),D3 move.b D3,RESOLPC-RESOLPX+1(A1) lea WORKOUT,A0 move (A0)+,D0 addq #1,D0 mulu D0,D3 asr.l #3,D3 addi #$4000,D0 move D0,(A1) move (A0)+,D0 addq #1,D0 mulu D0,D3 addi #$4000,D0 move D0,RESOLPY-RESOLPX(A1) move 22(A0),D0 addi #$4000,D0 move D0,RESOLI-RESOLPX(A1) lea FSAUVG+556.W,A1 add.l D3,A1 lea YECRL,A0 move.l A1,(A0)+ asr.l #4,D3 subq #1,D3 move D3,(A0);YECRLD rts AESVDIPB:movem.l A0/A1,-(SP) lea UAES0,A0 move (A0)+,UAES lea CONTRL,A1 move.l A1,(A0)+ lea INTIN-CONTRL(A1),A1 move.l A1,(A0)+ lea PTSIN-INTIN(A1),A1 move.l A1,(A0)+ lea INTOUT-PTSIN(A1),A1 move.l A1,(A0)+ lea PTSOUT-INTOUT(A1),A1 move.l A1,(A0)+ lea CONTROL-PTSOUT(A1),A1 move.l A1,(A0)+ lea GLOBAL-CONTROL(A1),A1 move.l A1,(A0)+ lea AINTIN-GLOBAL(A1),A1 move.l A1,(A0)+ lea AINTOUT-AINTIN(A1),A1 move.l A1,(A0)+ lea ADDRIN-AINTOUT(A1),A1 move.l A1,(A0)+ lea ADDROUT-ADDRIN(A1),A1 move.l A1,(A0)+ movem.l (SP)+,A0/A1 rts VDI101:tst UAPPL beq.s GEW15 moveq #101,D3 bsr VDIC moveq #19,D3 bsr AESC clr UAPPL GEW15:rts VDIFAT:move.l VDIPB+4,A0;INTIN movem D1-D3,-(SP) moveq #23,D3 move D0,(A0) bsr VDIC moveq #25,D3 move (SP)+,(A0) bsr VDIC moveq #24,D3 move (SP)+,(A0) bsr VDIC moveq #32,D3 move (SP)+,(A0) bra VDIC BOXT:movem.l D0-D6/A0-A6,-(SP) addq #1,D2 addq #1,D3 movem WIDTH2K(PC),D4/D5 asl D4,D0 addq #1,D0 asl D4,D2 subq #2,D2 asl D5,D1 addq #1,D1 asl D5,D3 subq #2,D3 movem D0-D3,-(SP) moveq #37,D3 bsr VDIC movem INTOUT,D0-D3;OK movem D0-D3,-(SP) moveq #1,D0 moveq #-1,D1 moveq #15,D2 moveq #3,D3 bsr.s VDIFAT movem 8(SP),D0-D3 movem D0-D3,PTSIN;OK moveq #114,D3 bsr VDIC movem (SP)+,D0-D3/A0-A3 bsr VDIFAT GEA14:movem.l (SP)+,D0-D6/A0-A6 rts VQMOUSE:bsr SHOWM moveq #124,D3 bsr VDIC move.l VDIPB+16,A0;PTSOUT movem (A0),D1/D2 GEU22:movem WIDTH2K(PC),D0/D3 asr D3,D2 lea TCURSB,A3 cmp (A3),D2 bls.s GEU224 move (A3),D2 GEU224:asr D0,D1 cmp 4(A3),D1 bls.s GEU225 move 4(A3),D1 GEU225:move.l VDIPB+12,A0;INTOUT moveq #3,D0 and (A0),D0 lea MOUSEXY(PC),A3 rts RDMS:movem.l D1-D7/A0-A6,-(SP) bsr.s VQMOUSE beq.s GEU24 movem D1/D2,(A3) btst #1,D0 beq.s GEU25 GEU220:moveq #-1,D0 GEU222:dbra D0,GEU222 bsr.s VQMOUSE bne.s GEU220 cmp (A3)+,D1 bne.s GEU24 cmp (A3)+,D2 bne.s GEU24 cmp TCURSA,D2 bcs.s GEU24 moveq #2,D0 GEU23:swap D0 lea MOUSEXY(PC),A3 movep 1(A3),D0 GEU24:movem.l (SP)+,D1-D7/A0-A6 rts GEU25:moveq #-1,D0 GEU26:dbra D0,GEU26 bsr VQMOUSE move.l (A3)+,D3 movem D1/D2,(A3) cmp.l (A3),D3 bne.s GEU28 tst D0 bne.s GEU25 GEU27:lea TCURSA,A0 moveq #1,D0 cmp (A0)+,D3 bge.s GEU23 move 4(A0),D0 addq #1,D0 mulu #10,D1 divu D0,D1 mulu #10,D3 move #$200,D0 add D1,D0 add D3,D0 bra.s GEU24 GEU28:move D2,D3 tst D0 beq.s GEU27 tst.b KEYRECT bne.s GEU25 cmp TCURSA,D2 blt.s GEU25 lea 12(A3),A3 clr.l (A3)+ clr.l (A3)+ bsr HIDECM1 bsr SHOWM movem TCURSY,D0-D2 movem D0/D2,TCURSM GEU29:bsr HIDEM lea MOUSEXY(PC),A3 movem (A3),D0-D3 move TCURSA,D4 cmp D4,D1 bcc.s GEU30 move D4,D1 GEU30:cmp D4,D3 bcc.s GEU31 move D4,D3 GEU31:movem D0-D3,(A3) cmp D0,D2 bcc.s GEU32 exg D0,D2 GEU32:cmp D1,D3 bcc.s GEU33 exg D1,D3 GEU33:addq #1,D2 addq #1,D3 addq #8,A3 movem D0-D3,(A3) bsr.s DIFFER bsr VIDEOI bsr.s DIFFERG bsr VIDEON bsr SHOWM GEU34:bsr VQMOUSE bne.s GEU35 lea 16(A3),A3 clr.l -(A3) clr.l -(A3) bsr HIDEM bsr.s DIFFER bsr XCRCL bsr XCURON bsr SHOWM moveq #1,D0 lea MOUSEXY+16(PC),A3 move.l (A3)+,D1 subi.l #$10001,(A3) cmp.l (A3),D1 beq GEU23 moveq #3,D0 swap D0 asl #8,D1 move D1,D0 move.b 3(A3),D0 bra GEU24 GEU35:addq #4,A3 movem (A3),D3/D4 movem D1/D2,(A3) cmp D1,D3 bne GEU29 cmp D2,D4 bne GEU29 moveq #-1,D0 GEU36:dbra D0,GEU36 bra.s GEU34 DIFFERG:movem.l (A3),D0-D3 exg D0,D2 exg D1,D3 movem.l D0-D3,(A3) DIFFER:lea TCURSY,A5 movem (A3),D3-D6/A4/A6 subq #1,A4 GEU38:addq #1,A4 cmp 12(A3),A4 bge.s GEU42 move A4,4(A5) move A6,(A5) subq #1,(A5) GEU40:addq #1,(A5) move (A5),D1 cmp 14(A3),D1 bcc.s GEU38 cmp D3,A4 blt.s GEU41 cmp D5,A4 bge.s GEU41 cmp D4,D1 blt.s GEU41 cmp D6,D1 blt.s GEU40 GEU41:movem D0/D2/D3,-(SP) move A4,D0 move D0,D2 move D1,D3 bsr BOXT movem (SP)+,D0/D2/D3 bra.s GEU40 GEU42:rts VIDEOSET:btst #0,D3 bne.s VIDEON VIDEOI:movem.l D0-D2/A0-A2,-(SP) moveq #"p",D0 bra.s GEU43 VIDEON:movem.l D0-D2/A0-A2,-(SP) moveq #"q",D0 GEU43:move D0,INVERSE bsr XEMUL movem.l (SP)+,D0-D2/A0-A2 rts XEM62:move.l D0,D1 swap D1 ; pas dans 1000d BTST#10,D1 ; pas dans 1000d BEQ.S\20 lea XEM62A-4,A0 .10:addq.l #4,A0 cmp.w (A0)+,D1 blt.s .10 bne.s .20 move.l (A0)+,D0 ; ajouts de 1000d rts ;modif .20:lea T1C9A6,A0;modif .30:addq.l #4,A0;modif cmp.l (A0)+,D0;modif blt.s .30;modif bne.s .40;modif move.l (A0)+,D0;modif .40:rts ;modif GEU45:moveq #0,D0 bra.s GEU46 RDKM:movem.l D1-D5/A0-A3,-(SP) bsr XCURON bsr RDMS tst.l D0 beq.s GEU47 GEU46:movem.l (SP)+,D1-D5/A0-A3 rts GEU47:bsr RD beq.s GEU45 bsr.s XEM62 move SETBREAK2(PC),A3 bsr.s XKEYAL bne GEU63 clr D3 moveq #$10,D4 cmp.b GEU61+7(PC),D2 beq.s GEU48 moveq #10,D4 cmp D4,D2 bcc GEU63 move D2,D3 GEU48:btst #3,(A3) beq.s GEU50 move.b #12,T1193+3 bsr ESCAPER bsr RD beq.s GEU48 bsr.s XKEYAL bne.s GEU50 cmp.b D4,D2 bcc.s GEU50 mulu D4,D3 add D2,D3 move D3,D2 mulu D4,D2 cmpi #$100,D2 bcs.s GEU48 GEU50:bsr GET479 moveq #0,D0 move.b D3,D0 bne.s GEU46 cmpi #$10,D4 bne.s GEU46 move #$A3,D2 bra GEU65 XKEYAL:move.l D0,D1 clr D1 asr.l #8,D1 or D1,D0 swap D1 bclr #1,D1 beq.s GEU53 bset #0,D1 GEU53:bclr #3,D1 beq.s GEU54 bset #1,D1 GEU54:andi #7,D1 cmpi #2,D1 bne.s GEU60 move D0,D2 lsr #8,D2 lea GEU61(PC),A0 moveq #5,D5 GEU56:cmp.b (A0)+,D2 bne.s GEU57 moveq #15,D2 sub D5,D2 bra.s GEU58 GEU57:dbra D5,GEU56 cmp.b 1(A0),D2 beq.s GEU58 subi #$67,D2 cmpi.b #10,D2 bcc.s GEU60 move D0,D2 subi #$30,D2 GEU58:andi #$FF,D2 ori #4,SR rts GEU59:moveq #0,D2 rts GEU60:moveq #-1,D2 rts GEU63:move D0,D2 moveq #10,D3 lsr #8,D2 move D2,D4 subi.b #$3B,D2 cmp.b D3,D2 bcs.s GEU64 subi.b #$19,D2 cmp.b D3,D2 bcc.s GEU66 GEU64:mulu D3,D1 add D1,D2 addi #$200,D2 GEU65:moveq #0,D0 move D2,D0 bra GEU46 GEU66:cmpi #4,D1 bne.s GEU69 bsr XKEYLC bne.s GEU680 move D2,D3 addi #$501,D3 mulu #$100,D3 GEU67:btst #2,(A3) beq.s GEU68 move.b #6,T1193+3 bsr ESCAPER bsr RD beq.s GEU67 bsr XKEYAL bsr XKEYLC bne.s GEU68 add.b D2,D3 addq.b #1,D3 bra.s GEU67 GEU68:bsr GET479 move.l D3,D0 rol #8,D0 bra GEU46 GEU680:move #$280,D2 cmpi #$4E,D4 beq.s GEU65 addq #1,D2 cmpi #$4A,D4 beq.s GEU65 GEU69:cmpi #$72,D4 bne.s GEU70 moveq #$1C,D4 GEU70:move D1,D2 bclr #0,D2 beq.s GEU71 bset #7,D4 GEU71:lea GEU73(PC),A0 asl #4,D2 addi #$100,D2 GEU72:addq #1,D2 move.b (A0)+,D3 beq.s GEU74 cmp.b D3,D4 beq.s GEU65R bra.s GEU72 GEU74:bsr.s XKEYLC bne.s GEU740 cmpi #6,D1 bne.s GEU740 addi #$180,D2 bra.s GEU65R GEU740:subq #1,D4 bne.s GEU742 move #$120,D2 add D1,D2 GEU65R:bra GEU65 GEU742:moveq #0,D2 move.b D0,D2 bne.s GEU65R bsr.s XKEYLC bne.s GEM16 lea GEU61F(PC),A0 move.b (A0,D2.L),D2 cmpi #$17,D2 bne.s GEU75 moveq #$1A,D2 GEU75:bset #7,D2 bra.s GEU65R GEM16:move D4,D2 ori #$E0,D2 bra.s GEU65R XKEYLC:lea GEU61+26(PC),A0 moveq #25,D2 move D0,D4 lsr #8,D4 GEM14:cmp.b -(A0),D4 dbeq D2,GEM14 rts WDCUR:movem.l D1-D7/A0-A6,-(SP) lea TCURSY,A0 movem (A0),D2-D4 move D6,(A0) movem.l D2-D4/A0,-(SP) bsr GET29 move.l A5,A6 movem.l (SP)+,D2-D4/A0 movem D2-D4,(A0) lea PRM3+1(PC),A0 move.l TDLGN(PC),D0 moveq #5,D1 addq #1,A5 GEV66:cmpm.b (A0)+,(A5)+ dbne D1,GEV66 beq.s HEA68 moveq #".",D4 bsr WDNC beq.s HEA50 moveq #">",D4 bsr WDNC beq.s HEA50 moveq #-16,D4 bsr WDNC bne.s HEA51 add.l TPL(PC),D0 subq.l #1,D0 HEA50:bra.s HEA52 HEA51:moveq #-1,D0 bra.s GEV67 HEA52:bsr PNLG HEA68:moveq #0,D1 GEV67:movem.l (SP)+,D1-D7/A0-A6 GEV68:rts BOUDR:bsr.s WDCUR bne.s GEV68 bsr XSPNT bra SAT0 BOUGC:lea TCURSY,A0 move D5,(A0) clr 4(A0) bsr PONT move.l A1,-(SP) move D6,(A0) bsr GET29 move.l (SP)+,A2 bsr SAVID1 bra SAT0 DAMED:lea GEV38(PC),A2 DAMGN:bsr DAMIN GEX44:moveq #9,D4 GEX45:cmp.l #TBUF+3400,A0 bcc DAMPRB lea GEX46(PC),A3 move.b (A2)+,D0 beq DAMPRB cmp.b (A3)+,D0 bne.s GEX47 bsr DAMVR bra.s GEX45 GEX47:cmp.b (A3)+,D0 bne.s GEX48 moveq #1,D0 add D4,D0 mulu D6,D0 bsr DAMBL bra.s GEX56 GEX48:lea TBUF+1800,A1 moveq #79,D1 GEX49:move.b (A2)+,D3 beq.s GEX51 lea -2(A3),A4 moveq #5,D2 GEX50:cmp.b (A4)+,D3 beq.s GEX51 dbra D2,GEX50 cmpi.b #32,D3 bcs.s GEX49 move.b D3,(A1)+ dbra D1,GEX49 GEX51:subq #1,A2 clr.b (A1) lea TBUF+1800,A1 cmp.b (A3)+,D0 bne.s GEX53 cmpi #9,D4 beq.s GEX52 bsr.s DAMLF GEX52:bsr DAMCN1 bra.s GEX44 GEX53:cmp.b (A3)+,D0 beq.s GEX54 cmp.b (A3)+,D0 bne.s GEX57 move.b #1,-(A1) GEX54:bsr.s DAMEL GEX55:dbra D4,GEX45 GEX56:bsr.s DAMLF not D5 bra GEX44 GEX57:bsr.s DAMVR move D6,D1 subq #1,D1 GEX58:move.b (A1)+,D0 beq.s GEX59 move.b D0,(A0)+ dbra D1,GEX58 bra.s GEX55 GEX59:move.b #32,(A0)+ dbra D1,GEX59 bra.s GEX55 DAMVR1:clr D5 DAMVR:move.b #$1B,(A0)+ moveq #"q",D0 not D5 add D5,D0 move.b D0,(A0)+ rts DAMLF:move.b #13,(A0)+ move.b #10,(A0)+ rts DAMEL:movem.l D0-D4,-(SP) bsr.s DAMVR moveq #32,D4 clr D2 GEV25:move.b (A1)+,D0 beq.s GEV36 cmpi.b #2,D0 bne.s GEV26 cmpi #4,D6 beq.s GEV25 move.b #"P",(A0)+ move.b #"g",(A0)+ move.b #32,(A0)+ addq #3,D2 bra.s GEV25 GEV26:bcc.s GEV27 clr D4 bra.s GEV25 GEV27:cmpi.b #4,D0 bne.s GEV32 bsr.s DAMLF not D5 bra.s GEV25 GEV32:move D0,D3 subi #"a",D3 cmpi.b #26,D3 bcc.s GEV33 subi #32,D0 cmpi #4,D6 beq.s GEV25 GEV33:tst D2 beq.s GEV34 tst D4 beq.s GEV34 move D0,D3 subi #"A",D3 cmpi.b #26,D3 bcc.s GEV34 add D4,D0 GEV34:addq #1,D2 cmp D6,D2 bgt.s GEV25 move.b D0,(A0)+ bra.s GEV25 GEV35:move.b #32,(A0)+ GEV36:addq #1,D2 cmp D6,D2 ble.s GEV35 movem.l (SP)+,D0-D4 rts DAMIN:lea TBUF+2000,A0 moveq #0,D6 move.b RESOLX+1,D6 divu #10,D6 clr D5 rts DAMPRB:clr.b (A0) lea TBUF+2000,A0 DAMPR:movem.l D0-D2/A0-A2,-(SP) bsr HIDECM1 move.l A0,-(SP) bsr EMULNOR move.l (SP)+,A0 bsr X15G bsr EMULNOR bsr XCURS0 bsr XCURON bsr SHOWM movem.l (SP)+,D0-D2/A0-A2 rts DAMPR1:movem.l D0/D1/A0,-(SP) lea TCURSBM,A0 move (A0)+,D0 moveq #4,D1 move D1,(A0)+ move D0,(A0)+ cmp (A0),D1 bcs.s GEV46 move D1,(A0) GEV46:bsr XCURS0 movem.l (SP)+,D0/D1/A0 rts TSTTET:move.l A6,A5 TSTTET1:tst.b (A5) bne HD37 XPTET:movem.l D0/A0,-(SP) bsr XN15 moveq #8,D0 bsr X12B bsr X9 movem.l (SP)+,D0/A0 XPTET0:movem.l D0-D6/A1,-(SP) move.l A0,A1 bsr DAMIN bsr DAMVR bsr.s DAMCN1 bsr.s DAMLN3 bsr DAMPRB move.l A1,A0 movem.l (SP)+,D0-D6/A1 rts DAMCN2:bsr DAMLF DAMCN1:moveq #10,D0 mulu D6,D0 DAMCN:movem.l D0-D2/A2/A3,-(SP) move.l A0,A3 bsr.s DAMBL move.l A1,A2 GEV91:tst.b (A1)+ bne.s GEV91 move.l A1,D1 sub.l A2,D1 sub.l D1,D0 asr D0 bmi.s GEV92 add D0,A3 GEV92:move.b (A2)+,(A3)+ bne.s GEV92 move.b D2,-(A3) movem.l (SP)+,D0-D2/A2/A3 rts DAMLN3:bsr.s DAMLN DAMLN2:bsr DAMLN DAMLN:bsr DAMLF bsr DAMVR1 moveq #10,D0 mulu D6,D0 DAMBL:moveq #32,D2 move D0,D1 subq #1,D1 GEV90:move.b D2,(A0)+ dbra D1,GEV90 rts DESK:bsr VDIINIT bsr SRESOL0 bsr INITAR moveq #20,D0 moveq #20,D1 jsr GAG62 lea GAH86(PC),A0 jsr XMCONS moveq #0,D0 moveq #4,D1 moveq #104,D3 bsr AESFV moveq #0,D0 subq #1,D1 subq #1,D2 addq #2,D4 addq #2,D5 moveq #100,D3 movem D1/D2/D4/D5,-(SP) bsr.s AESFEN move D0,FENHAN ble GAL11 movem (SP)+,D1/D2/D4/D5 moveq #101,D3 bsr.s AESFV GAL12:bsr SHOWM bsr XCUROFF lea -16(SP),SP move.l SP,ADDRIN;OK moveq #23,D3 bsr AESC movem (SP)+,D0-D6/A0 cmpi #20,D0 bne.s GAL19 cmp FENHAN(PC),D3 bne.s GAL12 bsr VDIINIT clr INTIN;OK moveq #23,D3 bsr VDIC bsr HIDEM moveq #11,D1 GAL15:moveq #104,D3 bsr.s AESFVH tst D4 beq.s GAL17 add D1,D4 add D2,D5 subq #1,D4 subq #1,D5 moveq #114,D3 movem D1/D2/D4/D5,PTSIN;OK bsr VDIC moveq #12,D1 bra.s GAL15 AESFEN:movem D0-D2/D4/D5,AINTIN;OK bsr AESC movem AINTOUT,D0-D2/D4/D5;OK GAL10:rts FENHAN:dc.w 0 AESFVH:move FENHAN(PC),D0 AESFV:bsr.s AESFEN tst D0 bne.s GAL10 GAL11:jmp ERRAE GAL17:bsr VDIINIT bra GAL12 GAL19:cmpi #10,D0 bne GAL12 move D4,-(SP) jsr XMKILLA moveq #102,D3 bsr.s AESFVH moveq #103,D3 bsr.s AESFVH bsr XCLRT move (SP)+,D4 subi #22,D4 beq.s GAH90 subq #1,D4 beq SAT0 subq #2,D4 beq WDSEKA lea TAUTHOR1(PC),A0 bsr ALERT1 GAH90:trap #3;HOT WUTIL:lea GEV94(PC),A2 lea GEV95(PC),A3 GEW16:bsr.s GEW14 trap #5;HOTB GEW14:move.l A3,-(SP) bsr DAMGN move.l (SP)+,A3 bra XKEY2 WFILES:lea GEW17(PC),A2 lea GEW19(PC),A3 bra.s GEW16 WBIBLIO:lea GEW64(PC),A2 lea GEW65(PC),A3 bra.s GEW16 WHELPS:lea GEW58(PC),A2 lea GEW59(PC),A3 bra.s GEW16 WPRSRC:lea GEQ65(PC),A2 lea GEQ66(PC),A3 bra.s GEW16 XTOGIO:lea HEA23(PC),A0 lea HEA25(PC),A1 HEA27:move.b (A1)+,D0 beq.s HEA28 sub.b (A0),D0 move.b D0,(A0)+ bra.s HEA27 HEA28:bra XGUIE TOGIO:bsr.s XTOGIO trap #5;HOTB XTOGIO1:bsr.s XTOGIO bsr VDKEY tst.b KEYRECT bne.s HEA280 movem.l D3-D7/A3-A6,-(SP) bsr DAMED movem.l (SP)+,D3-D7/A3-A6 HEA280:rts WUSER:lea GEW97(PC),A5 move.l TPILE,SP move.l A5,-(SP) move.l A5,A0 bsr XPTET0 jsr PD61 move.l (SP)+,A5 jsr WSPBAS trap #5;HOTB XMFINTR:jmp XMFINT XJFG:cmpi #1,(A0) ble.s XMFINTR movem.l A0/A6,-(SP) jsr XJPHTS bne.s MK50 move.l (A0),D0 move D0,-(SP) jsr XJPDHG move.l A2,A0 bsr.s XJFG move (SP)+,D0 cmpi #2,(A2) bne.s MK48 MK47:movem.l (SP)+,A0/A6 bra XPSAFR MK48:move.l A2,A0 addq #4,SP jsr XJFHMG bra KL860 MK50:bsr.s XJFF tst D0 bmi.s MK47 addq #4,SP movem.l A2/A6,-(SP) bne.s MK52 bsr XPSAFR MK51:move.l (SP)+,A0 bsr XPSAFR move.l A2,A1 move.l (SP)+,A0 bsr XCONCPR bra KL860 MK52:bsr.s XJFG bra.s MK51 XJFF:jsr XJPANY move.l A2,A3 move D6,D4 add D4,D4 move D6,D3 subq #1,D3 MK54:move.l A3,A1 addq #2,A3 move D5,D0 MK55:cmpi #2,(A1) bcc.s MK56 add D4,A1 dbra D0,MK55 MK550:moveq #-1,D0 move.l A2,A6 rts MK56:dbra D3,MK54 move D6,D4 bsr ANALDG movem.l D3/D4/A1,-(SP) bra.s MK59 MK57:bsr ANALDG move.l A1,A6 cmp.l (SP),D3 bcc.s MK59 movem.l D3/D4,(SP) move.l 8(SP),A6 move D6,D0 subq #1,D0 MK58:move (A1)+,(A6)+ dbra D0,MK58 MK59:subq #1,D4 bne.s MK57 movem.l (SP)+,D3/D4/A1 cmpi.l #$FFFF,D3 bcc.s MK550 movem.l A0/A2,-(SP) move.l A6,-(SP) add D4,D4 subq #1,D6 move D6,(A6)+ move (A0,D4.W),(A6)+ addq #2,A0 MK60:move (A0)+,D0 move (A1)+,D1 bmi.s MK61 move D0,(A6)+ move D1,(A6)+ clr (A6)+ MK61:dbra D6,MK60 move.l A2,A0 move.l (SP)+,A2 bsr XLB76R move.l (SP),A0 movem.l D3/A6,-(SP) bsr XPSAPR move.l A2,A0 move.l 12(SP),A1 move (A1)+,D6 subq #1,D6 move (A1),D2 MK62:addq #2,A1 move (A1)+,D0 move (A1)+,D3 beq.s MK64 addq #1,(SP) ext.l D3 MK63:moveq #0,D1 bsr XJPSAB MK64:dbra D6,MK62 move D2,D0 bsr.s XDEGR1 cmp 2(SP),D5 beq.s MK68 bsr.s MOORER divu (SP),D0 swap D0 move.l 12(SP),A1 move.l (A1),D2 MK66:addq #6,A1 move (A1),D1 beq.s MK66 dbra D0,MK66 bsr SUALT move D3,(A1) sub.l D1,D3 move -(A1),D0 move.l 4(SP),A0 clr D6 bra.s MK63 MOORER:jmp MOORE XDEGR1:jmp XDEG XADDPR:jmp XADDP TBLDEG:dc.l 0 MK680:bsr.s MOORER move.l 12(SP),A1 divu (A1)+,D0 swap D0 addq #1,D0 mulu #6,D0 add D0,A1 move (A1),D1 bsr SUALT move D3,(A1) move.l (SP),A6 move.l 4(SP),A0 MK68:move.l A6,(SP) bsr XPSAPR move.l 12(SP),A1 move (A1)+,D6 move (A1)+,-(SP) subq #1,D6 MK69:move (A1)+,D0 move.l (A1)+,D1 ext.l D1 move.l 2(SP),A0 movem.l D6/A1,-(SP) jsr XJPSCT move.l 10(SP),A0 bsr XLB76R movem.l (SP)+,D6/A1 dbra D6,MK69 move (SP)+,D0 move.l (SP),A0 bsr XDVPR move.l A2,A1 jsr XGCD move.l A1,A6 tst.l (A2) bne.s MK680 MK70:move.l (SP),A0 jsr XNORPE move.l A1,-(SP) bsr XMFINTR cmpi #2,(A2) bne.s MK72 MK71:lea 16(SP),SP move.l (SP)+,A6 moveq #-1,D0 rts MK72:move.l (SP),A0 bsr XLB76R move.l 8(SP),A0 bsr.s XPSAPR move.l A2,A0 move.l A2,-(SP) move.l 20(SP),A1 move (A1)+,D6 move (A1)+,D2 subq #1,D6 MK73:move (A1)+,D0 move.l (A1)+,D1 ext.l D1 moveq #0,D3 bsr XJPSAB dbra D6,MK73 move.l A6,TBLDEG move.l (SP),A0 move.l A0,A1 move (A1)+,D6 move.l 20(SP),A4 addq #2,A4 .1:subq #1,D6 bmi.s .2 move (A1)+,D0 cmp (A4),D0 beq.s .1 bsr XDEGR1 move D0,(A6)+ move D5,(A6)+ bra.s .1 .2:move D6,(A6)+ move.l 4(SP),A0 move (A0)+,D6 subq #1,D6 move D6,-(SP) clr -(SP) move #-1,(A6)+ move.l A6,-(SP) MK75:move.l (SP)+,A6 movem (SP),D1/D6 move D1,D0 addq #1,D1 move D1,(SP) move.l A6,-(SP) add D1,D1 cmp D6,D1 ble.s MK76 lea 12(SP),SP bra MK71 XPSAPR:jmp XPSAP MK76:move D6,(A6)+ subq #1,D6 dbra D0,MK76 move D0,(A6)+ MK77:jsr XPSP1 move.l 12(SP),A4 move.l (SP),A3 move.l A2,-(SP) jsr CALPRO move.l 20(SP),A0 move.l A2,A1 bsr XCTDIVR move.l A2,-(SP) move.l A2,A0 jsr XJPINV move.l (SP),A1 move.l A2,-(SP) move.l A2,A0 move.l A3,-(SP) bsr XMULPR move.l A2,A1 move.l (SP),A0 bsr.s XSUBPR move.l A2,A0 move.l 12(SP),A1 bsr XCTDIVR move.l (SP),A0 bsr XLB76R move.l 32(SP),A1 move.l 24(SP),A0 bsr.s XSUBPR move.l A2,-(SP) move.l 16(SP),A0 bsr.s XPSAPR move.l A2,-(SP) move.l 16(SP),A0 bsr.s XPSAPR move.l A2,-(SP) MK80:move.l 20(SP),A0 move.l (A0),-(SP) move.l 12(SP),A0 jsr XJPANY move.l (SP),D1 move (A0)+,D0 subq #1,D0 MK81:cmp (A0)+,D1 dbeq D0,MK81 move D0,(SP) movem.l D5/D6/A2,-(SP) move.l A2,A1 bra.s MK85 XSUBPR:jmp XSUBP MK82:move.l A1,A0 move.l A2,A3 move D6,D1 subq #1,D1 MK83:cmp D1,D0 beq.s MK84 cmpm (A0)+,(A3)+ dbne D1,MK83 bhi.s MK85 move.l A2,A1 bra.s MK85 MK84:addq #2,A0 addq #2,A3 dbra D1,MK83 MK85:add D6,A2 add D6,A2 dbra D5,MK82 move.l A6,-(SP) move.l 28(SP),A2 lea 2(A2),A3 subq #1,D6 movem.l D6/A1/A3,-(SP) MK86:cmp D6,D0 beq.s MK87 movem.l D0/D6/A1/A3,-(SP) move (A3),D0 move (A1),D1 move.l A2,A0 jsr XCOEF1 move.l 28(SP),A0 bsr XLB76R movem.l (SP)+,D0/D6/A1/A3 move.l 12(SP),A2 MK87:addq #2,A1 addq #2,A3 dbra D6,MK86 movem.l (SP)+,D6/A1/A3 move.l A6,-(SP) clr.l (A6)+ move #$4001,(A6)+ MK870:cmp D6,D0 beq.s MK871 movem.l D0/D6/A1/A3,-(SP) move (A3),D0 move (A1),D2 jsr XPSMON move.l 16(SP),A0 bsr.s XMULPR bsr XLB76R movem.l (SP)+,D0/D6/A1/A3 MK871:addq #2,A1 addq #2,A3 dbra D6,MK870 move.l 4(SP),A0 move.l 40(SP),A1 bsr.s XMULPR move.l A2,A0 move.l 48(SP),A1 move.l A0,-(SP) bsr.s XJPMODR move.l A2,A0 move.l 4(SP),A1 bsr.s XMULPR move.l (SP),A0 bsr XLB76R move.l 8(SP),A0 move.l 40(SP),A1 bsr.s XMULPR move.l A2,A0 bra.s GAP62 XJPMODR:jmp XJPMOD XMULPR:jmp XMULP GAP62:move.l 48(SP),A1 move.l A0,-(SP) bsr.s XJPMODR move.l A2,A0 move.l 8(SP),A1 bsr.s XMULPR movem.l (SP)+,A0/A1/A3 movem.l A0/A1,-(SP) bsr XLB76R move.l 4(SP),A0 move.l 28(SP),A1 bsr.s XMULPR move.l (SP),A1 move.l A2,-(SP) bsr.s XMULPR move.l (SP),A0 move.l A2,A1 bsr XADDPR bsr XLB76R move.l 4(SP),A0 move.l 36(SP),A1 bsr.s XMULPR move.l (SP),A0 move.l A2,A1 bsr XADDPR bsr XLB76R move.l (SP),A0 move.l TBLDEG(PC),A1 move.l A6,-(SP) .10:move (A1)+,D0 bmi.s MM12 bsr XDEGR1 cmp (A1)+,D5 ble.s .10 MK97:lea 60(SP),SP move.l (SP)+,A6 lea -2(A6),A5 move.l A5,A0 MK98:move -(A0),D0 bmi MK75 move.l A0,A1 MM10:subq #1,D0 beq.s MK98 move D0,(A1)+ cmp.l A5,A1 bcc MK77 bra.s MM10 MM12:movem.l (SP)+,A0/A1 move.l A0,A6 move.l 36(SP),A0 bsr XSUBPR move.l A2,-(SP) move.l 8(SP),A0 move.l 36(SP),A1 bsr XADDPR move.l A2,-(SP) move.l 8(SP),A0 move.l 36(SP),A1 bsr XADDPR move.l A6,A5 move.l A2,A4 move.l (SP)+,A6 move.l (SP)+,A2 lea 36(SP),SP move.l (SP),A0 move.l A0,A3 bsr XLB76R move.l A6,-(SP) move.l A4,A6 bsr XLB76R move.l A6,-(SP) move.l A5,A6 bsr XLB76R tst.l (A3)+ bne MK80 cmpi #$4000,(A3) bne MK80 move.l (SP)+,A6 move.l (SP)+,A2 lea 24(SP),SP movem (SP)+,D5/D6 sub D5,D6 add D5,D5 moveq #0,D4 cmp D5,D6 blt.s MM14 moveq #1,D4 MM14:lea 12(SP),SP move.l (SP),A0 bsr XLB76R move.l (SP),A0 move.l 8(SP),A1 move (A1)+,D6 subq #1,D6 move (A1)+,D2 move D4,-(SP) MM16:move (A1)+,D0 move (A1)+,D3 neg D3 ext.l D3 move (A1)+,D1 neg D1 ext.l D1 bsr XJPSAB dbra D6,MM16 jsr XNORPE move.l 10(SP),A0 move.l A0,A1 bsr XLB76R move.l 6(SP),A0 bsr XCTDIVR move.l A2,A0 move (SP)+,D0 addq #8,SP move.l (SP)+,A2 rts ANALDG:move.l A6,A1 subq #1,D6 move D6,D0 ML10:clr (A6)+ dbra D0,ML10 move D4,D1 add D1,D1 move D0,-2(A1,D1.W) move D5,-(SP) ML12:move (SP),D5 moveq #0,D3 moveq #0,D0 move.l A2,A3 ML13:bsr.s ML22 bcc.s ML16 move.l D1,D3 ML16:dbra D5,ML13 move (SP),D5 move.l A2,A3 ML17:move.l A3,A5 bsr.s ML22 bne.s ML20 move.l A5,A3 move.l A1,A4 move D6,D2 clr D0 ML18:tst (A3)+ beq.s ML19 tst (A4) bne.s ML19 moveq #1,D0 move D0,(A4) ML19:addq #2,A4 dbra D2,ML18 tst D0 bne.s ML12 ML20:dbra D5,ML17 move (SP)+,D5 addq #1,D6 rts ML22:moveq #0,D1 move.l A1,A4 move D6,D2 ML23:move (A3)+,D0 tst (A4)+ beq.s ML24 add.l D0,D1 ML24:dbra D2,ML23 cmp.l D1,D3 rts XJPSAB:move.l D1,D4 or.l D3,D4 beq.s ML26 movem.l D0-D3/D6/A0/A1,-(SP) move.l A6,A0 jsr LB17 move.l D3,D0 jsr LA88 move.l A2,A1 jsr XMCTE move.l A2,A0 move.l 4(SP),D0 move.l A6,A1 clr.l (A6)+ jsr LA88 bsr XADDPR move.l A2,A1 move.l A6,A0 move.l (SP),D2 jsr LB17 bsr XADDPR move.l A2,A0 bsr XPSAFR move.l A2,A1 move.l (SP),D0 move.l 20(SP),A0 jsr XSBSP move.l A2,A0 jsr XDEVFP move.l 20(SP),A0 bsr XLB76R movem.l (SP)+,D0-D3/D6/A0/A1 ML26:rts SUALT:moveq #1,D3 ext.l D1 ble.s ML28 moveq #0,D3 ML28:sub.l D1,D3 rts XFRL1:move.l A0,A1 move (A1)+,D6 bra.s ML37 ML34:move (A1)+,D2 cmp D0,D2 blt.s ML37 move D2,D0 move.l A1,-(SP) jsr XCONT move.l (SP)+,A1 tst.l (A2) beq.s ML36 move.l A2,A1 move D0,-(SP) bsr.s XCTDIVR move.l A2,A0 move.l A1,-(SP) bsr.s XPSAFR move.l (SP),A0 move.l A2,-(SP) bsr.s XPSAFR move.l (SP)+,A0 move.l A2,A1 bsr XCONCPR move.l (SP),A0 bsr XLB76R move.l (SP)+,A0 move (SP)+,D0 addq #1,D0 jsr XFRL2 move.l A0,A2 rts ML36:move.l A2,A6 ML37:dbra D6,ML34 bra.s XPSAFR XCTDIVR:jmp XCTDIV XGQU:jsr XGCD movem.l A1/A2/A6,-(SP) move.l A2,A1 bsr.s XCTDIVR move.l (SP)+,A0 bsr.s XCTDIVR movem.l (SP)+,A0/A1 rts XDVPR:jmp XDVP XFRM2:jsr XDEGMN cmpi #1,D6 beq.s XPSAFR move D2,D0 XFRM1:bsr.s XDVPR movem.l D0/A0/A2,-(SP) move.l A2,A1 bsr.s XGQU tst.l (A0) bne.s ML40 movem.l (SP)+,D0/A0/A6 XPSAFR:jmp XPSAF ML40:clr (SP) movem.l A0-A2/A6,-(SP) move.l #$14001,(A6)+ ML42:addq #1,16(SP) move.l 4(SP),A0 move 18(SP),D0 bsr.s XDVPR move.l A2,-(SP) move.l A2,A1 move.l 12(SP),A0 bsr XSUBPR tst.l (A2) bne.s ML44 cmpi #$4000,4(A2) bne.s ML44 move.l (SP)+,A6 move.l 4(SP),A0 bsr.s XPSAFR move 16(SP),D1 move.l A2,A0 jsr XEXPF lea 12(SP),SP move.l (SP)+,A0 move.l A2,A1 bsr.s XCONCPR bclr #7,2(A2) addq #8,SP bra KL860 XCONCPR:jmp XCONCP ML44:move.l A2,A1 move.l 8(SP),A0 bsr XGQU movem.l A1/A2/A6,-(SP) bsr.s XPSAFR move.l A2,A0 move 32(SP),D1 jsr XEXPF move.l A2,A1 move.l 28(SP),A0 bsr.s XCONCPR move.l A6,A5 move.l A2,A4 movem.l (SP)+,A2/A6 move.l 32(SP),A0 move.l A0,12(SP) bsr.s XLB76R move.l (SP)+,A6 addq #4,SP move.l A0,8(SP) bsr.s XLB76R move.l A0,12(SP) move.l A4,A2 move.l A5,A6 bsr.s XLB76R bra ML42 XLB76R:jmp XLB76 XANLGK:tst D2 beq.s MH97 bsr XANLGIR tst REGD7+2 bpl.s MH94 cmpi.b #2,D0 bcc.s MH94 bchg #0,D0 MH94:movem.l D1/A0,-(SP) move D0,D1 rol #8,D1 ext D1 addq #1,D1 add D1,D1 lea INDT,A0 add (A0),D2 btst #0,D0 bne.s MH95 sub D1,D2 MH95:cmpi.b #2,D0 beq.s MH98 bcc.s MH96 tst.b D0 bne.s MH950 neg D1 MH950:add (A0),D1 move D1,(A0)+ MH952:cmp (A0),D1 bge.s MH96 move D1,(A0) MH96:movem.l (SP)+,D1/A0 MH97:rts MH98:move (A0)+,D1 subq #2,D1 bra.s MH952 DEPSRC:move.l (A4)+,A6 moveq #0,D1 moveq #1,D2 sub.l (A4),D2 bra.s GEW94 GEW93:move.b (A2)+,(A0)+ GEW94:cmp.l A6,A2 blt.s GEW93 moveq #$1A,D3 moveq #$19,D4 rts WBIBM:lea GEW91(PC),A0 lea TPINS(PC),A4 bra.s GEW92 WBIBON:lea WBIB16(PC),A0 lea TDHAUT(PC),A4 GEW92:bsr XN15 lea GEX17(PC),A0 bsr X15N lea SOURCEIF(PC),A3 movem.l (A3),A0-A2 bsr.s DEPSRC GEX20:move.l A0,(A3)+ move.b D3,(A0)+ move.b D4,(A0)+ addq #4,A3 move.l A0,(A3) bsr XMODP bsr XCONVR bra INITRMR WBIBCL:lea WBIB18(PC),A0 bsr XN15 lea GEX14(PC),A0 bsr X15N lea SOURCEI(PC),A3 movem.l (A3),A0-A2/A5 bsr.s WBIB09 bra INITRMR WBIB09:move.l A5,D3 WBIB10:cmp.l A0,A1 ble.s WBIB12 move.b -(A1),-(A5) bra.s WBIB10 WBIB12:move.l A5,12(A3) move.l A5,A1 move.b #$19,-(A5) move.b #$1A,-(A5) move.l A5,4(A3) move.l A1,A0 moveq #0,D2 sub.l A1,D3 bsr GEW44 moveq #0,D1 bra XMODP WHVS:lea GEX13(PC),A0 bsr XN15 lea GEX14(PC),A0 bsr.s GEX16 subq #8,A3 move.l (A3)+,A0 move.l (A3),A1 subq #2,A1 move.l 12(A3),A5 move.l A5,D3 bsr.s WBIB09 bsr SINIT10 bra INITRMR GEX16:bsr X15N bsr LONGB beq.s GEX21 lea GEX15(PC),A0 bsr XN15 bra GEW25 GEX21:rts WSMVH:lea TPINS(PC),A4 lea GEW91(PC),A0 bra.s GEX18 WSDVH:lea TDHAUT(PC),A4 lea WBIB16(PC),A0 GEX18:bsr XN15 lea GEX19(PC),A0 clr.l THLA bsr.s GEX16 subq #4,A3 move.l (A3),A0 subq #2,A0 move.l 12(A3),A2 bsr DEPSRC move.b D3,(A0)+ move.b D4,(A0)+ move.l A0,(A3)+ bra GEX20 WASC1:bsr HIDECM lea GEX22(PC),A0 bsr X15N moveq #3,D0 bsr XCK moveq #15,D2 GEX23:bsr.s GEX38 moveq #15,D0 sub D2,D0 bsr S3F3CE dbra D2,GEX23 moveq #15,D2 GEX24:bsr X9 bsr.s GEX38 moveq #15,D0 sub D2,D0 bsr S3F3CE bsr.s GEX38 bsr VIDEOI moveq #15,D3 GEX25:bsr.s GEX38 moveq #16,D0 sub D3,D0 asl #4,D0 subq #1,D0 sub D2,D0 bsr X12A dbra D3,GEX25 bsr VIDEON moveq #2,D0 bsr XCK move.b (A0)+,D0 bsr X12B move.b (A0)+,D0 bsr X12B cmpi #40,TCURSY bcc.s GEX250 subq #2,A0 bsr.s GEX251 bsr.s GEX251 GEX250:dbra D2,GEX24 bsr X9 rts GEX251:bsr.s GEX38 move.b (A0)+,D0 cmpi.b #32,D0 bne S3F3C4 bsr GEX38 GEX38:bra XC WAUTHOR:lea TAUTHOR(PC),A0 bra X15 WNOST:lea TNOST(PC),A0 bra.s X17N WASC2:lea GEX29(PC),A0 X17N:bsr X17 bra X9 WASC3:lea GEX43(PC),A0 bra X15N WASC4:lea GER18(PC),A0 bra.s X17N RD:movem.l D2/A1/A2,-(SP) move.l #$10002,-(SP) trap #13 addq #4,SP tst.l D0 beq.s IRET move.l #$20002,-(SP) trap #13 addq #4,SP moveq #1,D1 IRET:movem.l (SP)+,D2/A1/A2 rts PONT:move.l D1,-(SP) lea TCURSC,A1 move (A1),D1 addq #1,D1 mulu -(A1),D1 addq #4,A1 add (A1)+,D1 add D1,A1 move.l (SP)+,D1 rts PRNT1B:moveq #32,D0 PRNT1:bsr.s PONT move.b D0,(A1) PCONOUT:andi #$FF,D0 move D0,-(SP) move #5,-(SP) GET101:move #3,-(SP) trap #13 addq.l #6,SP rts PCRLF:moveq #13,D0 bsr.s PCONOUT2 moveq #10,D0 PCONOUT2:andi #$FF,D0 move D0,-(SP) move #2,-(SP) bra.s GET101 GETA10:addq #1,(A1) XCURS:moveq #"Y",D0 bsr XEMUL move TCURSY,D1 bsr.s GETA11 move TCURSX,D1 GETA11:addi #32,D1 GETA12:move D0,-(SP) move D1,D0 bsr.s PCONOUT2 move (SP)+,D0 rts XCURS1:lea TCURSA,A0 cmp (A0),D6 bge.s GETA14 move (A0),D6 GETA14:addq #4,A0;TCURSY move D6,(A0) move D5,4(A0) bsr HIDEM XCURS0:movem.l D0-D2/A0-A2,-(SP) move MOUSE0(PC),-(SP) bsr HIDEM bsr.s XCURS tst (SP)+ bmi.s GETA13 bsr SHOWM GETA13:movem.l (SP)+,D0-D2/A0-A2 rts XHOME:lea TCURSA,A0 move (A0),4(A0) clr 8(A0) bra.s XCURS XCLR:bsr XDECN bsr.s XHOME bsr PONT move.l A1,A0 lea TCURSA,A1 moveq #1,D0 sub (A1)+,D0 add (A1),D0 move 4(A1),D1 addq #1,D1 mulu D1,D0 move.l #" ",D1 asr #2,D0 subq #1,D0 GET121:move.l D1,(A0)+ dbra D0,GET121 moveq #"J",D0 XEMUL:moveq #27,D1 bsr GETA12 bra PCONOUT2 XNXTL:lea TCURSY,A1 clr 4(A1) GET125:lea T1173,A2 addq #1,(A1) add (A1),A2 tst.b (A2) bne.s GET125 rts XNXTLE:bsr.s XNXTL move -2(A1),D0 cmp (A1),D0 bge XCURS bra XROLL XROLLA:lea TCURSY,A0 move (A0),-(SP) move 4(A0),-(SP) bsr XHOME moveq #"M",D0 bsr.s XEMUL lea TCURSY,A0 move (SP)+,4(A0) move (SP)+,(A0) XUPE:bsr.s XUP bra XCURS XLEFT:lea TCURSX,A1 subq #1,(A1) bpl.s GET14 clr (A1) move -4(A1),D0 cmp -8(A1),D0 ble.s GET14 move -2(A1),(A1) XUP:lea TCURSA,A1 move (A1),D0 addq.l #4,A1 subq #1,(A1) cmp (A1),D0 blt.s GET14 GET142:move D0,(A1) rts XFINL1:bsr XFINL XRIGHT:lea TCURSC,A1 move (A1)+,D0 cmp (A1),D0 bgt.s GET140 move -4(A1),D0 cmp -6(A1),D0 bge.s GET14 clr (A1) XDOWN:lea TCURSB,A1 move (A1)+,D0 cmp (A1),D0 bgt.s GET140 move D0,(A1) GET14:rts GET140:addq #1,(A1) rts PRNT:bsr PRNT1 lea TCURSC,A1 move (A1)+,D0 cmp (A1),D0 bgt GETA10 move -4(A1),D0 lea T1173,A0 add D0,A0 move.b (A0)+,D1 GET145:addq.b #1,D1 move.b D1,(A0)+ tst.b (A0) bne.s GET145 clr (A1) subq.l #6,A1 move (A1)+,D1 cmp D0,D1 bgt GETA10 addq #1,(A1) XROLL:bsr XROLLA lea TCURSA,A0 lea 10(A0),A1 move 6(A0),D0 addq #1,D0 move (A0)+,D1 move (A0),D2 sub D1,D2 mulu D0,D2 asr #2,D2 subq #1,D2 mulu D0,D1 add D1,A1 lea (A1,D0.W),A0 GET16:move.l (A0)+,(A1)+ dbra D2,GET16 lea TCURSA,A0 move 6(A0),D2 GET17:move.b #32,(A1)+ dbra D2,GET17 lea T1173,A1 move (A0),D1 move 2(A0),D2 sub D1,D2 add D1,A1 move.b 1(A1),D0 GET18:move.b 1(A1),(A1)+ dbra D2,GET18 clr.b (A1) tst.b D0 bne.s XROLL rts XCLRLS:movem.l A3-A5,-(SP) bsr GET29 move.l A4,A2 bsr SAVID1 movem.l (SP)+,A3-A5 bsr.s XCLRL bra XCURS XCLRL:lea TCURSY,A1 move (A1)+,-(SP) move (A1)+,D0 move (A1),-(SP) sub (A1),D0 GET19:bsr XCURS0 bsr PONT GET20:move.b #32,(A1)+ dbra D0,GET20 moveq #"K",D0 bsr XEMUL lea TCURSY,A1 addq #1,(A1) clr 4(A1) lea T1173,A2 add (A1)+,A2 move (A1)+,D0 tst.b (A2) bne.s GET19 move (SP)+,(A1) move (SP)+,-4(A1) rts XDEBL:lea TCURSY,A1 clr 4(A1) lea T1173,A2 add (A1),A2 move.b (A2),D0 ext.w D0 sub D0,(A1) rts XDECN:lea T1173,A1 moveq #CONTRL-T1173/2-1,D0 GET21:clr (A1)+ dbra D0,GET21 rts GET22:bsr XROLL XCONC:lea TCURSY,A1 lea T1173,A2 move (A1),D1 GET23:addq #1,D1 tst.b (A2,D1.W) bne.s GET23 cmp -2(A1),D1 bgt.s GET22 lea -1(A2,D1.W),A2 move.b (A2)+,D0 GET24:addq #1,D0 move.b D0,(A2)+ tst.b (A2) bne.s GET24 rts XFINL:bsr.s XDEBL bsr PONT move.l A1,A2 lea T1173,A0 lea TCURSY,A1 move (A1),D0 GET25:addq #1,D0 tst.b (A0,D0.W) bne.s GET25 move D0,(A1) clr 4(A1) bsr PONT move.l A1,A0 GET26:bsr XLEFT GET27:move.b -(A0),D0 cmp.l A2,A0 ble.s GET28 cmpi.b #32,D0 beq.s GET26 GET28:rts GET29:move TCURSX,-(SP) move TCURSY,-(SP) bsr PONT move.l A1,-(SP) bsr.s XFINL move.l A0,A3 move.l A2,A5 move.l (SP)+,A4 move (SP)+,TCURSY move (SP)+,TCURSX rts XXDEL:movem.l A3-A5,-(SP) bsr.s GET29 cmp.l A5,A4 ble.s GET32 bsr XLEFT bsr XCURS move TCURSX,-(SP) move TCURSY,-(SP) GET30:cmp.l A3,A4 bgt.s GET31 move.b (A4)+,D0 bsr PRNT bra.s GET30 GET31:bsr PRNT1B GET310:move (SP)+,TCURSY move (SP)+,TCURSX GET32:bsr VDKEY movem.l (SP)+,A3-A5 rts XXDELU:movem.l A3-A5,-(SP) bsr.s GET29 move TCURSX,-(SP) move TCURSY,-(SP) addq #1,A4 bra.s GET30 XXDELB:movem.l D3/D6,-(SP) bsr.s XXDELB1 movem.l (SP)+,D3/D6 rts XXDELB1:movem.l A3-A5,-(SP) bsr GET29 move.l A4,-(SP) bsr GES10 bsr GET29 cmp.l (SP),A4 blt.s GET321 bsr XDEBL GET321:bsr GET29 move.l (SP)+,A5 move.l A5,D6 sub.l A4,D6 ble.s GET32 move.l A4,A2 exg A5,A3 bsr SAVID2 addq #1,A3 exg A5,A3 move TCURSX,-(SP) move TCURSY,-(SP) bsr XCURS0 GET322:cmp.l A3,A5 bgt.s GET334 move.b (A5)+,D0 bsr PRNT bra.s GET322 GET333:moveq #32,D0 bsr PRNT GET334:dbra D6,GET333 bra GET310 XINSR:movem.l A3-A5,-(SP) HEA13:bsr GET29 addq #2,A3 cmp.l A3,A4 bge GET32 move TCURSX,-(SP) move TCURSY,-(SP) bsr XNXTL bsr PONT lea TCURSY,A2 cmp.l A3,A1 bgt.s HEA10 move -2(A2),D0 cmp (A2),D0 blt.s HEA12 bsr.s XINSRLG HEA12:move (SP)+,(A2) move (SP)+,4(A2) bsr XCURS bsr XCONC bra.s HEA13 HEA10:move (SP)+,(A2) move (SP)+,4(A2) bsr XFINL bsr XRIGHT bsr XRIGHT GET33:bsr XCURS move.b -(A3),D0 bsr PRNT1 bsr XLEFT cmp.l A3,A4 blt.s GET33 bsr XCURS bsr PRNT1B bsr XCURS bra GET32 XINSRLG:movem.l D3-D7/A2-A6,-(SP) bsr XDEBL move (A1),-(SP) move -2(A1),(A1) bsr XDEBL bsr XCURS bsr XCLRL bsr PONT move.l A1,A3 lea T1173,A0 move.l A0,A2 lea TCURSB,A1 move (A1)+,D0 sub (A1),D0 add (A1),A0 HEA15:clr.b (A0)+ dbra D0,HEA15 move (SP)+,(A1) add (A1),A2 movem.l A0/A2/A3,-(SP) bsr XCURS moveq #"L",D0 bsr XEMUL movem.l (SP)+,A0/A2 lea -1(A0),A1 HEA17:move.b -(A1),-(A0) cmp.l A2,A1 bgt.s HEA17 clr.b (A2) move.l (SP)+,A0 move TCURSC,D0 lea 1(A0,D0.W),A2 bsr PONT bra.s HEA20 HEA19:move.l -(A0),-(A2) move.l -(A0),-(A2) HEA20:cmp.l A1,A0 bgt.s HEA19 moveq #32,D1 HEA21:move.b D1,(A1)+ dbra D0,HEA21 movem.l (SP)+,D3-D7/A2-A6 HEA22:rts XREST:bsr.s XREST0 trap #4;HD29A XREST1:lea RESOL(PC),A0 move (A0),D0 cmpi #2,D0 bcc.s .1 bchg #0,D0 subq #1,D0 .1:addq #1,D0 move D0,(A0) bra SETCED XREST0:bsr.s XREST1 XSORE:moveq #"H",D0 bsr XEMUL bsr HIDECM movem.l D3/D4/A3,-(SP) lea TD000,A3 move TCURSB,D3 bra.s GET35 GET34:bsr PCRLF GET35:move TCURSC,D4 GET36:move.b (A3)+,D0 bsr PCONOUT dbra D4,GET36 dbra D3,GET34 bsr SHOWCM movem.l (SP)+,D3/D4/A3 bra XHOME XTAB:move TCURSX,D0 moveq #7,D1 and D1,D0 sub D0,D1 GEQ55:bsr XRIGHT dbra D1,GEQ55 rts CURSACTG:bsr CURSACT XGUIE: GET479:lea T1193,A0 moveq #$23,D0 cmpi.b #"I",HEA23 beq.s GET48 moveq #$11,D0 GET48:move D0,(A0)+ move D0,(A0)+ rts VDKEY:movem.l D0-D1/A0,-(SP) IVDKEY:bsr RD bne.s IVDKEY bsr RDMS tst.l D0 bne.s IVDKEY movem.l (SP)+,D0-D1/A0 GET484:rts HIDECM:move MOUSE0(PC),MOUSE1 HIDECM1:bsr HIDEM XCUROFF:tas CURS0 bne.s GET482 movem.l D0-D2/A0-A2,-(SP) lea T1193+4,A0 tst (A0) bne.s GET483 bsr GEV11 GET483:movem.l (SP)+,D0-D2/A0-A2 GET482:rts XCLRT1:bsr SETCED XCLRT:lea TCURSA,A0 move (A0),-(SP) clr (A0) moveq #12,D0 bsr.s X12B move (SP)+,(A0) XTHOME:moveq #5,D0 bra.s X12B X12B:bsr.s HIDECM bsr X12 SHOWCM:tst.b MOUSE1 bne.s GEU20 bsr SHOWM GEU20:tst.b MOUSE1+1 bne.s GET484 XCURON:bclr #7,CURS0 beq.s GET482 movem.l D0-D2/A0-A2,-(SP) move #1,T1193+4 jmp GEV17 XEREM2:move D3,D0 lsr #8,D0 bsr SETMS bsr XCURS0 move.b D3,D0 SETCURS:tst D0 bne.s XCUROFF bra.s XCURON INTER200: tst.b T1193+2 bmi.s GEV20 subq.b #1,T1193+2 GEV20:btst #2,$F21.W GETSHIFT_AD=*-2 beq.s DEV70 bsr.s BKNOINT DEV70:jmp RER.L BKNOINT:move D0,-(SP) move.b $F21.W,D0 GETSHIFT1=*-2 andi.b #$F,D0 cmpi.b #$D,D0 bcc.s GEV180 move (SP)+,D0 GEV18:rts GEV180:tst.b NIVEAU7 bne.s GEV181 cmpi.b #$F,D0 bne.s GEV181 tst.b GEQ70 beq.s ESC2 GEV181:move (SP)+,D0 st NIVEAU7 rts MET70:move.l $70.W,A0 move.l #INTER200,D0 INTER200A=*-4 cmp.l D0,A0 beq.s GEV18 move.l A0,DEV70+2 move.l D0,$70.W rts OTE70:lea DEV70+2(PC),A0 move.l #RER,D0 cmp.l (A0),D0 beq.s GEV18 ori #$700,SR move.l (A0),$70.W move.l D0,(A0) andi #$23FF,SR rts TFONB:dc.l 0,0,0 ESC2:lea NIVEAU7,A0 ESC3:clr.b (A0) bsr BKNOINT tst.b (A0) bne.s ESC3 move #$4E71,PACK clr TPRINT bsr XCURS0 bsr SAVER jsr RERPOP lea TFONB(PC),A3 move.l (A3)+,D5 jsr YERRTS bsr.s OTE70 tst.b TFRDG beq.s GEY70 jsr XESAVH GEY70:lea ESC4(PC),A0 move #$4E75,ESCAPE bsr DAMPR1 bsr XN15 move.l TPL(PC),-(SP) bsr VINIT0 bsr XCONVR move.l (SP)+,TPL bra REDIT GEV11:tst.b MOUSE0 bne.s GEV10 bsr HIDEM bsr.s GEV10 bra SHOWM GEV10:clr -(SP) move (A0)+,-(SP) bchg #0,-(A0) GEV13:move #21,-(SP) trap #14 addq #6,SP rts CURSACT:bsr XCUROFF move.l #$30000,-(SP) bra.s GEV13 INCPOS:cmpi.b #10,D0 beq.s GAC10 cmpi.b #13,D0 beq.s GAC11 cmpi.b #12,D0 beq.s GAC11 addq #1,(A0) cmpi.b #8,D0 bne.s GAC10 subq #2,(A0) GAC10:rts GAC11:clr (A0) rts XP12B:movem.l D0/A0,-(SP) lea LSTPOS,A0 bsr.s INCPOS move D0,-(SP) move #5,-(SP) trap #1 addq #4,SP tst D0 beq.s ERRIM movem.l (SP)+,D0/A0 rts ERRIM:moveq #49,D0 trap #15 VERPRN1:tas FVERPRN bne.s GA82 VERPRN:movem.l D0-D2/A0-A2,-(SP) move #$11,-(SP) trap #1 addq #2,SP tst.l D0 beq.s ERRIM movem.l (SP)+,D0-D2/A0-A2 GA82:rts XP12:tst.b REGD7+3 bpl X12E XP12C:bclr #7,TPRINT1 bne.s XP12B cmpi.b #25,D0 bne.s MC41 bset #7,TPRINT1 rts MC41:move D0,-(SP) bne.s MC46 MC410:moveq #13,D0 bsr.s XP12B moveq #10,D0 MC46:bsr.s XP12B move (SP)+,D0 rts TPRINT1:dc.w 0 XP12A:tst.b D0 bmi.s MC484 beq.s MC481 MC480:subq #1,XPAGE bpl XP12B bsr.s MC481 bra.s MC480 MC481:movem.l D0/A0,-(SP) moveq #0,D0 bsr.s MC41 move IMPX,XPAGE subq #1,RPAGE bpl.s MC483 lea U3F768(PC),A0 tst NPAGE beq.s MC482 subq #1,A0 MC482:addi #1,NPAGE move IMPY,RPAGE bsr X15 move NPAGE,D0 ext.l D0 bsr PINTAE lea TPAGE1,A0 bsr X15N MC483:movem.l (SP)+,D0/A0 rts MC484:movem.l D0/D1/A0,-(SP) lea IMPC,A0 andi #$7F,D0 move.b (A0,D0.W),D0 bsr.s MC480 movem.l (SP)+,D0/D1/A0 rts X12E:movem.l D0-D2/A0-A2,-(SP) andi #$FF,D0 lea TESCV,A1 move.b (A1),D1 bpl.s GER22 clr.b (A1) GER20:bsr X12A GER21:movem.l (SP)+,D0-D2/A0-A2 rts GER22:bne.s GER34 cmpi #32,D0 bcc.s GER20 cmpi #25,D0 bne.s GER24 st (A1) bra.s GER21 GER24:cmpi #27,D0 bne.s GER26 addq.b #1,(A1) bra.s GER21 GER26:cmpi #26,D0 beq.s GER21 cmpi #15,D0 bne.s GER28 bsr XREST0 bra.s GER21 GER28:cmpi #7,D0 bne.s GER30 GER29:bsr PCONOUT2 bra.s GER21 GER30:cmpi #6,D0 bne.s GER32 addq #1,D0 GER32:bsr XDDC bra.s GER21 GER34:subq.b #1,(A1) bne.s GER37 lea GER35(PC),A0 bsr RELAD bne.s GER21 jsr (A0) bsr XCURS bra.s GER21 GER37:move D0,-(SP) moveq #"b",D0 subq.b #1,(A1) beq.s GER40 moveq #"c",D0 subq.b #1,(A1) beq.s GER40 move (SP)+,D0 subi #32,D0 lea TCURSC,A0 subq.b #1,(A1) beq.s GER39 subq #4,A0 addq.b #3,(A1) GER39:move (A0)+,D1 cmp D1,D0 bcc GER21 move D0,(A0) bsr XCURS bra GER21 GER40:bsr XEMUL move (SP)+,D0 bra.s GER29 VMUI:lea TCURSA,A2 move (A2),D0 cmp 4(A2),D0 bcs XUP addq #8,A2 move (A2),-(SP) bsr XINSRLG move (SP)+,(A2) rts VMUJ:bsr XCLRL lea TCURSA,A2 move (A2)+,D0 move 2(A2),D1 move 6(A2),D2 cmp (A2),D1 beq.s GER42 movem.l D0-D2/A2,-(SP) addq #1,D1 move D1,-(A2) bsr XCURS bsr XCLR GER41:movem.l (SP)+,D0-D2/A2 move D1,2(A2) move D2,6(A2) move D0,-(A2) GER42:rts VMUM:bsr.s VMUSL lea TCURSA,A2 move (A2)+,D0 move 2(A2),D1 clr D2 movem.l D0-D2/A2,-(SP) move D1,-(A2) bsr XCLSL bsr XDEBL movem.l (SP),D0-D2/A2 cmp 2(A2),D1 beq.s GER41 bsr XNXTLE bra.s GER41 VMUY:addq.b #5,(A1) rts VMUSB:addq.b #2,(A1) rts VMUSC:addq.b #3,(A1) rts VMUSJ:movem TCURSY,D0-D2 lea GER44(PC),A0 move D0,(A0) move D2,GER45-GER44(A0) rts GER44:dc.w 0 GER45:dc.w 0 VMUSK:lea TCURSY,A0 move GER44(PC),(A0) addq #4,A0 move GER45(PC),(A0) rts VMUSL:bsr XDEBL bsr XCURS bra XCLRL X12:bclr #6,TPRINT1 bne X12A cmpi.b #32,D0 bcc.s X12A cmpi.b #25,D0 bne.s XDDC bset #6,TPRINT1 XDDC:tst TPRINT beq.s IXDDC bsr XP12A IXDDC:bsr ESCAPER cmpi #GET51-GET50/2-1,D0 bge.s GET50 movem.l D0-D2/A0-A2,-(SP) lea GET50(PC),A0 add D0,D0 add 2(A0,D0.W),A0 jsr (A0) bsr XCURS GET49:movem.l (SP)+,D0-D2/A0-A2 GET50:rts dc.w XNXTLE-GET50;0 RETURN dc.w XUP-GET50;1 dc.w XDOWN-GET50;2 dc.w XRIGHT-GET50;3 dc.w XLEFT-GET50;4 dc.w XHOME-GET50;5 dc.w XHOME-GET50;6 dc.w XXDELU-GET50;7 DELETE dc.w XCLRL-GET50;8 EFFACE FIN dc.w XTAB-GET50;9 dc.w XDEBL-GET50;A VA DEB LIGNE dc.w XCLSL-GET50;B VA DER LGN dc.w XCLR-GET50;C dc.w XNXTLE-GET50;D RETURN dc.w XFINL1-GET50;E VA FIN LIGNE dc.w XREST-GET50;F TOGGLE RESOL dc.w XINSRLG-GET50;10 INSERT dc.w 0;11 dc.w 0;12 dc.w XXDEL-GET50;13 BACKSPACE dc.w XXDELB-GET50;14 EFFACE DEBUT dc.w VIDEOI-GET50;15 VIDEO INVERSE dc.w 0;16 FIN EXPOSANT dc.w VIDEON-GET50;17 VIDEO NORMALE dc.w 0;18 HELP dc.w 0;19 NO-MVT dc.w XTOGIO1-GET50;1A INSERT/OVERWR GET51: X13:cmpi #5,D0 bcc X12 X12A:tst TPRINT beq.s IX12A bsr XP12A IX12A:movem.l D0-D2/A0-A2,-(SP) bsr.s ESCAPER bsr PRNT bra.s GET49 XN15:bsr X9 bra.s X15 X15:movem.l D0/A3,-(SP) lea X12(PC),A3 GET53:bsr HIDECM GET54:clr D0 move.b (A0)+,D0 beq.s GET55 jsr (A3) bra.s GET54 GET55:bsr SHOWCM movem.l (SP)+,D0/A3 rts ESCAPER:jmp ESCAPE X18:movem.l D0/A3,-(SP) lea X12A(PC),A3 bra.s GET53 X17:movem.l D0/A3,-(SP) lea X13(PC),A3 bra.s GET53 XKEY2:bsr.s XKEY1 move #$1FF,A0 sub.l A0,D0 cmpi.l #$100,D0 bcc.s GEW22 move.l A3,A0 bsr RELAD bne.s GEW22 lea TBUF,A6 clr (A6) tst.b SAFER-TBUF(A6) beq.s GER53 bsr.s X9 GER53:jmp (A0) GEW22:rts XKEY1:st KEYRECT XKEY:bsr.s ESCAPER bsr RDKM tst.l D0 beq.s XKEY rts XC:move.l D0,-(SP) moveq #32,D0 GET73:bsr X12B move.l (SP)+,D0 rts X6:move.l D0,-(SP) moveq #0,D0 bra.s GET73 X15N:bsr X15 bra.s X9 X9:movem.l D0-D2/A0-A5,-(SP) bsr GET29 cmp.l A4,A5 beq.s GET75 bsr.s X6 GET75:movem.l (SP)+,D0-D2/A0-A5 rts XCK:movem.l D0/D1,-(SP) move D0,D1 moveq #32,D0 bsr.s X12K movem.l (SP)+,D0/D1 rts PRLPT:bsr.s X9 moveq #".",D0 move TCURSC,D1 bsr.s X12K bra.s X9 XTBOT:moveq #$B,D0 bra X12B XTCDL:bsr XDEBL bsr XCLRLS bsr XNXTLE bra XCURS XTCTB:move TCURSX,D1 subq #1,D1 andi #7,D1 addq #1,D1 bra.s GEQ63 XTCRT:bsr.s GEQ61 bsr SDELTR move D3,D1 moveq #3,D0 bra.s X12K GEQ61:movem.l A3-A5,-(SP) bsr GET29 move.l A4,A1 move.l A3,A0 move.l A5,D3 movem.l (SP)+,A3-A5 rts XTCLF:bsr.s GEQ61 move.l D3,A0 bsr SDELTL move D3,D1 GEQ63:moveq #4,D0 X12K:bsr HIDECM bra.s GET770 GET77:bsr X12B GET770:dbra D1,GET77 bra SHOWCM RELAD0:bclr #5,D0 RELAD:move (A0)+,D1 beq.s GET83 cmp.b D1,D0 bcs.s GET83 move D1,D2 asr #8,D2 neg D1 add D0,D1 cmp.b D1,D2 bcs.s GET82 ext D1 add D1,D1 add D1,A0 move (A0),D1 add D1,A0 clr D2 rts GET82:add D2,D2 add D2,A0 addq #2,A0 bra.s RELAD GET83:moveq #1,D2 rts RSZAD:lea GEV97(PC),A0 bsr XN15 RSZ:bsr X15N lea GEV98(PC),A5 bsr.s X4B bra PASFAIT X4A:lea GET79.L,A5 lea TBUF,A6 move #TBUFLC,TBUFL lea GET78A(PC),A3 st KEYRECT move #15,KEYTAB bra.s X3 KEYTAB:dc.w 0 X4B:lea TBUF,A6 move #TBUFLC,TBUFL X4:lea -3.W,A3 st KEYRECT bra.s X30 X3A:lea GET78(PC),A3 clr.b KEYRECT lea GET79.L,A5 lea TBUF,A6 move #TBUFLC,TBUFL X30:clr KEYTAB X3:movem.l D0-D7/A0-A6,-(SP) bsr CURSACTG clr TCPREB+4 bsr VDKEY GET80:bsr XKEY bsr HIDECM lea TCPREB+4(PC),A0 move (A0)+,(A0) clr -(A0) move.l D0,D3 swap D3 cmpi #5,D3 beq GET860 tst D3 beq.s GET803 move D0,D6 andi #$FF,D6 move D0,D5 lsr #8,D5 GET801:move #$80,D0 add D3,D0 GET802:moveq #-3,D1 cmp.l A3,D1 bne.s GET80A move.l A3,(A6)+ clr.b (A6)+ move.b D0,(A6)+ move D5,(A6)+ move D6,(A6)+ bra GET91 GET80A:move.l A3,A0 GEQ59:bsr RELAD bne.s GET80 GER57:lea KEYRECT(PC),A2 move.b (A2),-(SP) st (A2) movem.l A2/A3/A5/A6,-(SP) clr.b (A6) jsr (A0) movem.l (SP)+,A2/A3/A5/A6 move.b (SP)+,(A2) bsr VDKEY bra.s GET80 GET803:move D0,D1 subi #$100,D1 bcc.s GET84 bsr X12CLA bra.s GET80 GET84:andi #$FF,D0 subi #$100,D1 bcc.s GET86 cmp KEYTAB(PC),D0 beq GET80 moveq #4,D3 cmpi #24,D0 beq.s GET801 cmpi #13,D0 beq GET89 cmpi #25,D0 beq.s GET842 lea GEQ57(PC),A0 cmpi #32,D0 bcc.s GEQ59 lea XCLRLS(PC),A0 cmpi #8,D0 beq.s GER57 lea TDEL,A0 cmpi #18,D0 beq.s GET864 GET85:bsr X12B bra.s GET80R GET842:moveq #11,D0 bra.s GET85 GET86:addq.b #1,D0 bpl GET802 move TCPREB+6(PC),D3 beq.s GET80R subi #$81,D0 beq.s KN32 subq #1,D0 bne.s GET80R bsr.s EFKYW bsr.s PRKYW bra.s GEL82 PRKYW:move #2000,D1 KN30:move.l A0,A1 bsr.s GEL83 cmp.l TCPREB(PC),A0 dbeq D1,KN30 move.l A1,A0 rts KN32:bsr.s EFKYW bsr.s GEL83 bra.s GEL82 KN34:cmpi.b #"O",HEA23 beq.s KN36 moveq #$13,D0 bsr X12B bra.s EFKYW KN36:lea TCPREA(PC),A0 bsr X15 EFKYW:subq #1,D3 bge.s KN34 move.l TCPREB(PC),A0 rts GET860:cmp.l #GET79,A5 beq.s GET861 move.l A5,A0 bsr RELAD beq.s GET864 GET80R:bra GET80 GET861:bsr.s SAKEYW GEL82:bsr.s SAKM GET864:move.b (A0)+,D0 beq.s GET80R bsr X12CLA bra.s GET864 SAKEYW:move D0,D3 lea GET79,A0 lsr #8,D3 bsr RELAD beq.s GEL81 lea GEL37(PC),A0 rts GEL83:moveq #5,D0 add.b -(A0),D0 add D0,A0 cmp.l #GETFIN,A0 blt.s GEL81 lea GET79A+1.L,A0 GEL81:subq #1,D3 bpl.s GEL83 rts SAKM:lea TCPREB(PC),A1 move.l A0,(A1)+ addq #4,A1 moveq #13,D1 movem.l A2/A3,-(SP) lea TYPCAR,A2 move SETBREAK2(PC),A3 moveq #0,D0 GET865:move.b (A0)+,D0 beq.s GET867 btst #4,(A3) beq.s .1 btst #6,(A2,D0.L) beq.s .1 bclr #5,D0 .1:cmpi.b #$7F,D0 bne.s GET866 moveq #"_",D0 GET866:move.b D0,(A1)+ dbra D1,GET865 GET867:movem.l (SP)+,A2/A3 cmpi.b #32,-2(A0) bne.s GF10 subq #1,A1 GF10:move.b (A0),D0 beq.s GET873 cmpi.b #13,D0 bcc.s GET869 GET868:move.b #"(",(A1)+ bra.s GET873 GET869:moveq #$60,D1 cmpi.b #$31,D0 beq.s GET868 cmpi.b #$41,D0 beq.s GET868 cmp.b D1,D0 beq.s GET873 andi #$F0,D0 cmp D1,D0 beq.s GET868 move.l A0,D0 lea GF14(PC),A0 subi.l #G,D0 GF12:cmp (A0)+,D0 beq.s GET873 bcc.s GF12 move.b #32,(A1)+ GET873:lea TCPREB+8(PC),A0 clr.b (A1) sub.l A0,A1 move A1,-4(A0) rts GF14:dc.w GARGUMENT-G dc.w GADDRIN-G dc.w GADDROUT-G dc.w GCONTRL-G dc.w GCOLOR-G dc.w GFUNCTION-G+11 dc.w GCFUNCTION-G+11 dc.w GGLOBAL-G dc.w GGCONTRL-G dc.w GGINTIN-G dc.w GGINTOUT-G dc.w GINTIN-G dc.w GINTOUT-G dc.w GPROCEDURE-G dc.w GPTSIN-G dc.w GPTSOUT-G dc.w GREGISTER-G dc.w GSTACK-G dc.w GSTACKD-G dc.w GVCOLOR-G dc.w GXVCOLOR-G dc.w -1 X12CLA:cmpi.b #"O",HEA23 beq.s HEA31 movem.l D0-D6/A0-A6,-(SP) bsr HIDEM bsr XINSR bsr HIDEM movem.l (SP)+,D0-D6/A0-A6 HEA31:bra X12A GET89:bsr GET29 move TBUFL,D0 move.b (A3),D1 cmpi.b #32,D1 bne.s GET90 subq #1,A3 GET90:cmp.l A3,A5 bgt.s GET91 move.b (A5)+,(A6)+ dbra D0,GET90 GET91:clr.b (A6) st KEYRECT bsr XGUIE moveq #$D,D0 bsr X12B movem.l (SP)+,D0-D7/A0-A6 rts XGETE:move.l A1,-(SP) bsr PONT moveq #0,D0 move.b (A1),D0 move.l (SP)+,A1 rts XCLSL:movem.l D0-D2/A0-A2,-(SP) move TCURSB,D1 lea T1173,A1 sub.b (A1,D1.W),D1 clr D0 lea TCURSY,A0 lea TCURSM(PC),A1 move (A0),(A1)+ move 4(A0),(A1) move D1,(A0) move D0,4(A0) GET94:bsr XCURS0 movem.l (SP)+,D0-D2/A0-A2 rts TCURSM:dcb.b 4,$FF XCRCL:movem.l D0-D2/A0-A2,-(SP) lea TCURSY,A0 lea TCURSM(PC),A1 move (A1)+,(A0) move (A1),4(A0) bra.s GET94 PINTA:tst.l D0 bne.s GD20 move.b #"0",(A0)+ clr.b (A0) rts GD20:movem.l D0-D2/A1,-(SP) lea GD24(PC),A1 GD21:move.l (A1)+,D1 cmp.l D1,D0 bcs.s GD21 GD22:moveq #$2F,D2 GD23:addq #1,D2 sub.l D1,D0 bcc.s GD23 add.l D1,D0 move.b D2,(A0)+ move.l (A1)+,D1 bne.s GD22 clr.b (A0) movem.l (SP)+,D0-D2/A1 rts GD24:dc.l 1000000000 dc.l 100000000 dc.l 10000000 dc.l 1000000 dc.l 100000 dc.l 10000 dc.l 1000 dc.l 100 dc.l 10 dc.l 1 XE10:dc.l 0 PINTAE:move.l A0,-(SP) lea TBUF,A0 bsr.s PINTA lea TBUF,A0 bsr X15 move.l (SP)+,A0 rts PINTE:move.l A0,-(SP) lea TBUF,A0 bsr.s PINT lea TBUF,A0 bsr X15 move.l (SP)+,A0 rts PINTW:swap D0 clr D0 swap D0 PINT:movem.l D1/A1/A2,-(SP) move.l A0,A1 lea GD27(PC),A0 move.l A0,A2 bsr PINTA ext.l D1 add.l A2,D1 sub.l A0,D1 GD25:subq.l #1,D1 bmi.s GD26 move.b #32,(A1)+ bra.s GD25 GD26:move.b (A2)+,(A1)+ bne.s GD26 subq.l #1,A1 move.l A1,A0 movem.l (SP)+,D1/A1/A2 rts GD27:dcb.b 12,$FF LOCALT:move.b #".",TDF4 bsr X9 move.l TDEBA5,A5 LOCALS:lea TPL(PC),A3 clr D1 clr.l (A3) move.l SOURCEI(PC),A0 cmp.l A0,A5 bcs.s PD24 cmp.l SOURCEIF(PC),A5 bhi.s PD17 bsr.s PD25 PD14:move.l A0,-(A3) PD15:rts PD17:move.l TDBAS(PC),A0 cmp.l A0,A5 bcs.s PD24 cmp.l TDHAUT(PC),A5 bhi.s PD19 bsr.s PD25 move.l D0,(A3) move.l A0,TPINS-TPL(A3) move.l D0,TPINSL-TPL(A3) bra.s PD14 PD19:lea TMEXC,A1 move.l (A1)+,A2 cmp.l A2,A5 bcs.s PD24 move.l (A1),A0 cmp.l A0,A5 bcc.s PD24 PD21:cmp.l A0,A2 bcc.s PD23 move.l -(A0),A1 cmp.l A0,A1 bcc.s PD24 move.l A1,A0 cmp.l A0,A5 bcs.s PD21 PD23:bsr.s PD25 moveq #1,D1 bra.s PD14 PD24:lea PD29(PC),A0 move.l A0,A1 bra.s PD14 PD25:moveq #0,D0 move.l A0,A1 PD26:cmp.l A1,A5 bcs.s PD15 addq.l #1,D0 move.l A1,A0 cmpi.b #$1A,(A0) beq.s PD15 PD27:tst.b (A1)+ bne.s PD27 bra.s PD26 RER:move #$4E71,PACK clr TPRINT tst.b SAFER bne.s GEQ47 move.l A6,A1 lea GEQ42(PC),A0 GEQ43:move.b (A0)+,(A1)+ bne.s GEQ43 subq #1,A1 bsr PRMH moveq #29,D0 GEQ45:move.b (A0)+,(A1)+ dbeq D0,GEQ45 clr.b (A1) move.l A6,A0 bra SAERR1 GEQ47:jsr RERDK move D0,-(SP) jsr RERPOP move (SP)+,D0 jsr YERRT RERF:clr TPRINT jsr XESAVH bsr DAMPR1 bsr RERM REDIT:tst TFRUN beq HD289 bsr OTE70 move #$4E75,ESCAPE bsr LOCALT move.l TDECA5,A5 subq #1,A5 cmp.l A0,A5 bcs.s PD32 cmp.l A1,A5 bcc.s PD32 move D1,-(SP) bsr.s PD44 move (SP)+,D1 beq.s PD42 bra.s PD34 PD32:bsr LOCALS cmp.l A0,A5 bcs.s PD34 cmp.l A1,A5 bcc.s PD34 bsr.s PD44 PD34:move.l TDEBA5,A5 move #100,D6 PD35:bsr LOCALS tst D1 beq.s PD40 PD36:cmpi.b #1,(A1) bne.s PD43 move.l 2(A1),A5 cmp.l #IMM12,A5 beq.s PD42 subq #2,A5 dbra D6,PD35 PD40:bsr PLGN1M PD42:trap #3;HOT PD43:tst.b (A1)+ bne.s PD43 bra.s PD36 PD44: move.b (A5),-(SP) move.b #"?",(A5)+ move.b (A5),-(SP) clr.b (A5)+ move.l A5,-(SP) lea -75(A5),A5 cmp.l A5,A0 bcc.s PD46 lea PD48(PC),A0 bsr X15 move.l A5,A0 PD46:bsr X15N move.l (SP)+,A5 move.b (SP)+,-(A5) move.b (SP)+,-(A5) bra PLGN1M RERM:move D0,-(SP) bsr X9 moveq #1,D0 bsr.s PRM move (SP)+,D0 PRM:bsr.s PRMH bsr X15 PRMH:lea PRM1(PC),A0 addq #1,D0 G47:subq #1,D0 beq.s G48RT G48:tst.b (A0)+ bne.s G48 bra.s G47 WDAVLT:moveq #0,D0 GWD005:move.b (A6)+,D0 cmpi.b #32,D0 beq.s GWD005 subq.l #1,A6 WDLT:move.b (A6)+,D0 move.l A2,-(SP) lea TYPCAR,A2 btst #6,(A2,D0.L) move.l (SP)+,A2 beq.s G790 bclr #5,D0 G793:andi #$FFFB,SR G48RT:rts WDAL:moveq #0,D0 bsr.s WDLT bne.s G792 addq #1,A6 move.l A2,-(SP) lea TYPCAR,A2 tst.b (A2,D0.L) move.l (SP)+,A2 bmi.s G793 G790:subq.l #1,A6 cmp D0,D0 G792:rts WDAL1:addq.l #1,A6 cmpi.b #"0",D0 blt.s G790 cmpi.b #"9"+1,D0 bcc.s G790 rts WDN:move.l A6,A5 GWD006:move.b (A6)+,D0 cmpi.b #32,D0 beq.s GWD006 subi.b #"0",D0 cmpi.b #10,D0 bcc.s G82 clr D1 ext.w D0 ext.l D0 G80:moveq #0,D2 move.b (A6)+,D2 subi.b #"0",D2 addq #1,D1 cmpi.b #10,D2 bcc.s G790 cmpi.l #429496730,D0 bcc.s G81 move.l D0,D3 asl.l #2,D3 add.l D3,D0 asl.l D0 add.l D2,D0 bcc.s G80 G81:move.l A5,A6 moveq #-1,D1 rts G82:move.l A5,A6 moveq #-2,D1 rts WDNIN:move.b TDPR+1(PC),D4 WDNC:bsr.s WDN bne.s G84 GWD007:move.b (A6)+,D1 cmpi.b #32,D1 beq.s GWD007 cmp.b D1,D4 beq.s G84 move.l A5,A6 G84:rts WDNPT:move.b TDPR(PC),D4 bra.s WDNC GET78:dc.w $D01 dc.w DESK-*;1 dc.w WFILES-*;2 dc.w WHELPS-*;3 dc.w WPRSRC-*;4 dc.w WBIBLIO-*;5 dc.w WFIND-*;6 dc.w WUSER-*;7 dc.w WRUNR-*;8 dc.w WDEBUG0-*;9 dc.w SAT0-*;10 dc.w WAPPEND-*;11 APPEND SOURCE dc.w WWRITE-*;12 WRITE SOURCE dc.w SCNEW-*;13 dc.w WUTIL-*;14 dc.w $212 dc.w WRUNP-*;18 dc.w WDEBUGP-*;19 dc.w WEDITP-*;20 dc.w $11D dc.w WGR-*;29 dc.w TOGIO-*;30 TOGGLE INSERT/OVERWR dc.w $226 dc.w WFIXHD-*;38 dc.w WFIXHD-*;39 dc.w WFIXHD-*;40 dc.w $381 dc.w XCURS1-* dc.w BOUDR-* dc.w BOUGC-* dc.w WHELP-* dc.w 0 GEV95:dc.w $401 dc.w W3E8B1-*;N MODIFY dc.w W3E3CF-*;Q QUERY dc.w W3E802-*;X COPY MEMORY dc.w W3E869-*;F FILL dc.w WC-*;E COMPARE dc.w $309 dc.w WDSEKA-*;! QUIT dc.w W3BB12-*;= MEMOIRE dc.w SCNEW-*;NEW dc.w OLD-*;OLD dc.w 0 GEW19:dc.w $901 dc.w WVIEW-* dc.w S3E340-*;K KILL FILE dc.w S3DFB6-*;I READ VERS MEMOIRE dc.w S3E204-*;J WRITE MEMOIRE dc.w WVERIF-*;VERIFY dc.w WLOADM-*;LOAD,M dc.w WRBLOK-*;WRITE BLOCK dc.w WLOADB-*;MERGE,L dc.w WOVERL-*;OVER,L dc.w WOVERS-*;OVER dc.w $211 dc.w WRASC-*;SAVE,IND dc.w WLOADH-*;MERGE,H dc.w WOVERH-*;OVER,H dc.w 0 GEW59:dc.w $501 dc.w WAUTHOR-* dc.w WASC3-*;KEYBOARD dc.w WASC2-*;CODES MVMT dc.w WASC1-*;CODES ASCII dc.w WASC4-*;CODES 1-31 dc.w WNOST-*;CODES NOSTALGIA dc.w $A dc.w WNOHELP-* dc.w $212 dc.w WLOADH-*;MERGE,H dc.w WOVERH-*;OVER,H dc.w WHELP-* dc.w 0 GEQ66:dc.w $110 dc.w WPRINT-*;PRINT ALL dc.w WPRINT1-*;PRINT BLOCK dc.w 0 GEW65:dc.w $301 dc.w WBIBON-*;L ABSORBE BIBLIO dc.w WBIBM-*;ABSORBE 1-M dc.w WBIBCL-*;D VIDE BIBLIO dc.w WNEWB-*;NEW,L dc.w $608 dc.w WLOADB-*;MERGE,L dc.w WOVERL-*;OVER,L dc.w G640-* dc.w WSDVH-*;S->H dc.w WSMVH-*;1,M->H dc.w WHVS-*;H->S dc.w WNOHELP-* dc.w $212 dc.w WLOADH-*;MERGE,H dc.w WOVERH-*;OVER,H dc.w WHELP-* dc.w 0 GEX69:dc.w $1301 dc.w WFIND1-* dc.w WFIND2-* dc.w WFIND3-* dc.w WFIND4-* dc.w WFIND5-* dc.w WFIND6-* dc.w WFIND7-* dc.w WFIND8-* dc.w WFIND9-* dc.w WFIND10-* dc.w WFIND1-* dc.w WFIND2-* dc.w WFIND3-* dc.w WFIND4-* dc.w WFIND5-* dc.w WFIND6-* dc.w WFIND7-* dc.w WFIND8-* dc.w WFIND9-* dc.w WFIND10-* dc.w 0 GEZ68:dc.w $C01 dc.w HLSOMA-* dc.w HLNIV2-* dc.w HLNIV4-* dc.w G640-* dc.w HLPGU-* dc.w HLPGD-* dc.w HLFND1-* dc.w HLFND2-* dc.w HLNIVM-* dc.w HOT-* dc.w HLNIV1-* dc.w HLNIV3-* dc.w HLNIV5-* dc.w $311 dc.w HLFND3-* dc.w HLFND4-* dc.w HLSWAP-* dc.w HLPRG-* dc.w $381 dc.w HLBGC-* dc.w HLBDR-* dc.w G640-* dc.w HLHL-* dc.w 0 GER60:dc.w $101 dc.w HLPGU-*;UP dc.w HLPGD-*;DW dc.w $105 dc.w HLSOMA-*;HOME dc.w HLDECN-*;sUP dc.w $B dc.w HLINCN-*;sDW dc.w $D dc.w HLCLCR-*;CR dc.w $F dc.w HLSTAB-*;sTAB dc.w $18 dc.w HLHL-*;HLP dc.w $1A dc.w HLSINS-*;sINS dc.w $120 dc.w HOT-*;ESC dc.w HLPRG-*;sESC dc.w $141 dc.w HLPGU-*;cUP dc.w HLPGD-*;cDW dc.w $51 dc.w HLSWAP-*;csHLP dc.w $181 dc.w HLBGC-* dc.w HLBDR-* dc.w 0 GET78A:dc.w $81 dc.w XCURS1-* dc.w 0 TDMOD:dc.l 0 dc.l 0 TNEWLB:dc.w 0 PLMOD1:movem.l D0/A0,-(SP) lea TDMOD(PC),A0 move.l (A0)+,D0 cmp.l (A0)+,D0 beq.s GET760 st (A0);TNEWLB clr.l TPPI move.l D0,-(A0) GET760:lea TDMOD(PC),A0 move.l TDLGN(PC),D0 subq.l #1,D0 cmp.l (A0),D0 bcc.s GET761 move.l D0,(A0)+ move.l D0,(A0) GET761:movem.l (SP)+,D0/A0 rts VINIT0:clr.l REGD7 XSED:lea TDPR(PC),A0 move.b (A0),2(A0) rts XSRCI:lea TDPR+1(PC),A0 move.b (A0)+,(A0) rts SINIT10:lea YECR,A0 add.l YECRL,A0 lea SOURCEH(PC),A1 move.l A0,(A1)+ move.b #$1A,(A0)+ move.b #$19,(A0)+ move.l A0,(A1)+;SOURCEI rts SINIT1:bsr.s SINIT10 move.l A0,(A1)+;SOURCEIF SINIT5:lea SOURCEIF(PC),A1 move.l (A1)+,A0 move.b #$1A,(A0)+ move.b #$19,(A0)+ move.b #$1A,(A0) addq #4,A1 move.l A0,(A1)+;TDBAS move.l A0,(A1)+;TDHAUT move.l #1,(A1)+ clr.b GAU12 SINIT2:move.l TDBAS(PC),A0 moveq #1,D0 lea TPINS(PC),A3 moveq #NBTPG-1,D1 GD28:move.l A0,(A3)+ move.l D0,(A3)+ dbra D1,GD28 rts XSPNT:bsr.s PNLG move.l A0,TPINS move.l D0,TPINSL rts PNLG0:movem.l D1/D2/A2,-(SP) lea TDMAX(PC),A2 move.l (A2)+,D1 move.l (A2)+,A0 move.l D0,D2 G34:moveq #0,D0 sub.l A0,D1 subq.l #2,D1 G35:addq.l #1,D0 subq.l #1,D2 bls.s G38 cmpi.b #$1A,(A0) beq.s G38 G36:subq.l #1,D1 bmi.s G37 cmpi.b #$1A,(A0) beq.s G37 tst.b (A0)+ bne.s G36 bra.s G35 G37:clr.b (A0)+ move.b #$1A,(A0) addq.l #1,D0 G38:movem.l (SP)+,D1/D2/A2 rts PNLG:movem.l D1/D2/A2,-(SP) lea TDMAX(PC),A2 move.l (A2)+,D1 move.l (A2)+,A0 move.l D0,D2 moveq #1,D0 sub.l A0,D1 subq.l #2,D1 movem.l D3-D5/A3,-(SP) moveq #NBTPG,D4 GF28:move.l (A2)+,A3 move.l (A2)+,D3 cmpi #NBTPG-4,D4 beq.s GF30 move.l A3,D5 beq.s GF30 cmp.l D3,D2 bcs.s GF30 cmp.l D3,D0 bcc.s GF30 move.l D3,D0 move.l A3,A0 GF30:dbra D4,GF28 movem.l (SP)+,D3-D5/A3 subq.l #1,D0 sub.l D0,D2 bra.s G35 XFCHR:move.l A0,A1 G49:move.b (A1)+,D1 beq.s G52 cmp.b D0,D1 beq.s G53 cmpi.b #$22,D1 bne.s G51 G50:move.b (A1)+,D1 beq.s G52 cmpi.b #$22,D1 beq.s G49 bra.s G50 G51:cmpi.b #CARCOM,D1 bne.s G49 G52:rts G53:moveq #1,D1 rts XANLG1:moveq #CARCOM,D0 bsr.s XFCHR subq.l #1,A1 move.l A1,A2 G54:tst.b (A1)+ bne.s G54 subq.l #1,A1 move.l A1,A3 moveq #":",D0 bsr.s XFCHR bne.s G540 move.l A0,A1 G540:move.l A1,D1 sub.l A0,D1 move.l A3,D3 sub.l A2,D3 move.l A2,D2 sub.l A1,D2 rts PLGNT2:move.l TPINSL(PC),D0 PLGNT:lea TBUF,A0 PLGNT4:move.l A0,A1 move TDF1(PC),D1 bsr PINT move.b TDF4(PC),(A0)+ clr.b (A0)+ move.l A1,A0 G542:rts PLGNT1:move.l TPL(PC),D0 beq.s G542 lea T3FDB6,A0 bsr.s PLGNT4 bra XN15 PLGNT3:bsr.s PLGNT2 bra XN15 INDTO:move D2,-(SP) move INDTM,D2 neg D2 bsr XANLGIR bsr MH94 move D2,D0 ble.s G552 sub D0,(SP) bsr XCK G552:move (SP)+,D2 rts PLGN1M:lea TDF1(PC),A0 clr (A0)+ clr.l (A0)+ clr.l INDT PLGN1:move.l TPI(PC),A0 moveq #2,D0 cmpi.b #$1A,(A0) beq PRM bsr.s PLGNT1 move.l TPI(PC),A0 bsr XANLG1 tst D1 beq.s G551 bsr.s INDTO G551:move TDF2(PC),D0 sub D1,D0 bmi.s G55 bsr XCK G55:move.b (A1),D0 clr.b (A1) bsr X18 move.b D0,-(A0) tst D1 bne.s G550 bsr.s INDTO G550:tst D3 beq.s X18N clr.b (A2) bsr X18 move.b #CARCOM,-(A0) tst D2 ble.s X18N move TDF3(PC),D0 sub D2,D0 bmi.s X18N bsr XCK X18N:bsr X18 bra X9 XANBK:move.l D2,-(SP) move.l #$640064,INDT lea TBUF+100,A4 clr D2 clr D4 clr D5 clr D6 move.l A0,A5 move.l A0,A6 G56:cmpi.b #$1A,(A0) beq G620 bsr XANLG1 bsr XANLGK move D2,(A4,D4.W) move D3,2(A4,D4.W) cmp D1,D5 bge.s G57 move D1,D5 G57:cmp D2,D6 bge.s G58 move D2,D6 G58:moveq #0,D3 move TCURSA,D2 G59:moveq #0,D0 move TDF1(PC),D0 addq #2,D0 add D5,D0 sub INDTM,D0 move 2(A4,D3.W),D1 add D1,D0 tst (A4,D3.W) beq.s G601 tst D1 bne.s G60 add (A4,D3.W),D0 bra.s G61 G60:add D1,D0 add D6,D0 bra.s G61 G601:add INDT,D0 G61:move TCURSC,D1 addq #1,D1 divu D1,D0 addq #1,D0 add D0,D2 move.l D3,D0 divu #20,D0 swap D0 subq #1,D0 clr D0 addx D0,D2 cmp TCURSB,D2 bgt.s G621 addq #4,D3 cmp D4,D3 ble.s G59 move.l A0,A5 move D5,TDF2 move D6,TDF3 addq #4,D4 tst REGD7+2 bmi.s G62 move.l A3,A0 addq.l #1,A0 bra G56 G62:bsr.s PTPRE beq G56 bra.s G621 G620:cmp TCURSB,D2 bge.s G621 move.l A0,A5 addq #4,D4 G621:subq #4,D4 asr #2,D4 ext.l D4 move.l (SP)+,D0 tst REGD7+2 bmi.s G622 add.l D0,D4 bra.s G623 G622:exg A5,A6 move.l D0,D1 sub.l D4,D0 move.l D1,D4 G623:lea TPIA(PC),A1 move.l A6,(A1)+ move.l D0,(A1)+ move.l A5,(A1)+ move.l D4,(A1) lea INDT,A0 move #100,(A0)+ move (A0),D2 sub D2,TDF3 rts PTPRE:tst.b -1(A0) bne.s G640 subq.l #1,A0 G63:move.b -(A0),D0 beq.s G64 cmpi.b #$19,D0 bne.s G63 G64:addq.l #1,A0 G640:rts XBLL:lea TPID(PC),A1 move.l (A1)+,A0 move.l (A1)+,D2 PTPRE1:bsr.s PTPRE bne.s G640 subq.l #1,D2 rts PTSUIV:cmpi.b #$1A,(A0) beq.s G640 G641:tst.b (A0)+ bne.s G641 addq.l #1,D2 rts XLISTD:clr REGD7+2 bsr XFORM1 bsr XANBK PBKL:bsr.s PBKLA HEA41:move FSAUTM(PC),D0 subq #1,D0 ble.s HEA42 lea TCURSY,A0 move D0,(A0) clr 4(A0) bsr XCURS HEA42:trap #4;HD29A FSAUTM:dc.w $FF00 PBKLA:bsr XCLR clr FSAUTM PBKLA1:lea TPI(PC),A4 move.l -16(A4),(A4)+ move.l -16(A4),(A4) move.l -8(A4),D5 G65:moveq #4,D4 G650:cmp.l (A4),D5 blt.s G66 bsr INSER bne.s HEA40 lea FSAUTM(PC),A0 tst (A0) bne.s HEA40 move.l TPINSL(PC),D0 cmp.l (A4),D0 bne.s HEA40 moveq #13,D0 bsr X12B move TCURSY,(A0) HEA40:bsr PLGN1 addq.l #1,(A4) move.l A0,-4(A4) dbra D4,G650 cmp.l (A4),D5 blt.s G66 moveq #13,D0 bsr PRM bra.s G65 G66:rts XFORM1:move.l #9970,D1 sub.l TDLGN(PC),D1 moveq #2,D1 addx D1,D1 move D1,TDF1 rts WDLS:bsr WDBK1A bsr XCUROFF cmpi #2,D1 beq.s XLISTL bsr XSBLK XLISTB:lea TPIC(PC),A1 move.l (A1)+,A0 move.l (A1),D2 clr REGD7+2 bsr.s XFORM1 bsr XANBK bsr XBLL cmp.l -32(A1),A0 bgt.s G670 move.l A0,-32(A1) move.l D2,-28(A1) bra PBKL G670:move.l -32(A1),A0 move.l -28(A1),D2 moveq #5,D4 G671:bsr PTPRE1 dbra D4,G671 move.l A0,-32(A1) move.l D2,-28(A1) bsr PBKLA bsr PRLPT bsr XBLL move.l A0,-24(A1) move.l D2,-20(A1) bsr PLGN1 bra HEA41 XLISTL:bsr PNLG move.l D0,D2 bra XLISTD XLISTM4:lea TPIMF.L,A0 lea -8(A0),A1 GA10:cmp.l #TPIM,A1 ble.s GA12 move.l -(A1),-(A0) move.l -(A1),-(A0) bra.s GA10 GA12:lea TPINS(PC),A0 move.l (A0)+,(A1)+ move.l (A0)+,(A1)+ rts XLISTF4:bsr SISORN XLISTF4P:lea TPIM.L,A1 move.l A1,A2 move.l (A1)+,A0 move.l (A1)+,D0 GA14:cmp.l #TPIMF,A1 bge.s GA16 move.l (A1)+,(A2)+ move.l (A1)+,(A2)+ bra.s GA14 GA16:move.l A0,(A2)+ move.l D0,(A2)+ bra SANEWK XLALT4:bsr SISORN XLALT4P:lea TPIM(PC),A1 lea TPINS(PC),A2 move.l (A1),A0 move.l (A2)+,(A1)+ move.l (A1),D0 move.l (A2)+,(A1)+ bra SANEWK XRPL:move.l TPINS(PC),A0 cmpi.b #$1A,(A0) beq.s XINS1A move.l A0,A2 GER10:tst.b (A2)+ bne.s GER10 move.l A6,A1 GER11:tst.b (A1)+ bne.s GER11 move.l A2,D0 sub.l A0,D0 move.l A0,-(SP) move.l A1,D1 sub.l A6,D1 move.l A6,A1 add.l D1,(SP) move.l D0,D3 cmp.l D1,D3 ble.s GER12 move.l D1,D3 GER12:sub.l D3,D0 sub.l D3,D1 GER13:move.b (A1)+,(A0)+ subq.l #1,D3 bne.s GER13 moveq #0,D2 tst.l D1 beq.s GER16 bsr.s XINS GER15:lea TPINS(PC),A0 move.l (SP)+,(A0)+ addq.l #1,(A0) addq.l #1,TDMOD rts GER16:tst.l D0 beq.s GER15 move.l A0,A1 add.l D0,A0 bsr XDEL bra.s GER15 XINS1A:move.l A6,A1 XINS1:move.l TPINS(PC),A0 XINS1B:move.l A1,A2 G680:tst.b (A2)+ bne.s G680 move.l A2,D1 sub.l A1,D1 moveq #1,D2 XINS:add.l D2,TDMOD move.l TDHAUT(PC),A3 move.l A3,A4 add.l D1,A4 clr D0 cmp.l TDMAX(PC),A4 bge RER move.b #$1A,(A4) bsr.s GEQ90 G70:bsr.s XMODP G71:subq.l #1,D1 bmi.s G72 move.b (A1)+,(A0)+ bra.s G71 G72:rts GEQ90:move A3,D0 bclr #0,D0 beq.s GEQ91 move.b (A3)+,(A4)+ GEQ91:move A4,D0 bclr #0,D0 bne.s GEQ84 exg A3,A1 exg A4,A1 exg D0,D3 move.l A4,D3 sub.l A0,D3 bclr #0,D3 beq.s GEQ92 jsr LC76 move.b -(A4),-(A1) bra.s GEQ93 GEQ92:jsr LC76 GEQ93:exg D0,D3 exg A4,A1 exg A3,A1 rts GEQ84:move.l A3,D0 sub.l A0,D0 asr.l D0 bcc.s GEQ85 move.b -(A3),-(A4) GEQ85:asr.l D0 bcc.s GEQ88 move.b -(A3),-(A4) move.b -(A3),-(A4) bra.s GEQ88 GEQ86:swap D0 GEQ87:move.b -(A3),-(A4) move.b -(A3),-(A4) move.b -(A3),-(A4) move.b -(A3),-(A4) GEQ88:dbra D0,GEQ87 swap D0 subq #1,D0 bpl.s GEQ86 rts XMODP:lea TDHAUT(PC),A2 moveq #NBTPG,D0 G73:cmp.l (A2),A0 bgt.s G74 add.l D1,(A2)+ add.l D2,(A2)+ dbra D0,G73 rts G74:tst.l (A2)+ tst.l (A2)+ dbra D0,G73 rts XDEL1:lea TPINS(PC),A2 move.l (A2)+,A1 cmpi.b #$1A,(A1) beq.s G79 move.l (A2)+,D1 move.l A1,A0 move.l D1,D2 bsr PTSUIV XDEL:lea TPINS(PC),A2 moveq #NBTPG-1,D0 G75:cmp.l (A2),A0 ble.s G76 cmp.l (A2),A1 bge.s G76 move.l A1,(A2)+ move.l D1,(A2)+ bra.s G77 G76:tst.l (A2)+ tst.l (A2)+ G77:dbra D0,G75 sub.l D2,D1 move.l A1,D2 sub.l A0,D2 exg D1,D2 sub.l D2,TDMOD bsr.s XMODP move.l A6,-(SP) move.l A1,A6 move.l A0,A2 move.l TDHAUT(PC),D1 sub.l A6,D1 addq.l #1,D1 jsr ILB76 move.l (SP)+,A6 G79:rts WDXMIN1:lea GEW60(PC),A6 WDXMIN:bsr WDBK1 bsr XSRCI cmpi #1,D1 beq.s G79A addq.l #1,D0 bra XSPNT SCNEW:bsr.s XNEW bra SAT0 XNEW:lea TDNEW(PC),A0 bsr XPTET moveq #1,D0 move.l TDLGN(PC),D2 bsr.s G79A clr.b GAU12 rts G79A:bsr XSBLK XDELBK1:bsr.s VERBLK lea GEW11(PC),A0 moveq #6,D1 bsr PINT move.b #32,(A0) lea GEW10(PC),A0 bsr SCARE lea TPINS(PC),A1 move.l 32(A1),(A1)+ move.l 32(A1),(A1) XDELBK:lea TPIC(PC),A2 move.l (A2)+,A1 move.l (A2)+,D1 move.l (A2)+,A0 move.l (A2)+,D2 cmp.l A1,A0 bgt XDEL RER3:moveq #9,D0 trap #15 VERBLK:lea TPLD(PC),A0 move.l (A0),D0 sub.l -8(A0),D0 ble.s RER3 rts WDXR:bsr WDBKPT clr.l TVARB XDIT:move.l TPINS(PC),A0 lea TPIC(PC),A2 move.l (A2)+,A1 move.l (A2)+,D0 move.l 4(A2),D2 move.l (A2)+,A2 move.l A2,D1 sub.l A1,D1 ble.s RER3 sub.l D0,D2 cmp.l A2,A0 bge XINS cmp.l A1,A0 bgt.s RER3 add.l D1,A1 bra XINS WDXM:bsr WDBKPT clr.l TVARB XMOVE:lea TPINS+4(PC),A2 move.l (A2)+,D1 cmp.l 36(A2),D1 beq.s RER3 move.l -(A2),-(SP) move.l -(A2),-(SP) bsr.s XDIT lea TPIC(PC),A2 move.l A2,A3 move.l (A2)+,A1 move.l (A2)+,D1 move.l (A2)+,A0 move.l (A2)+,D2 move.l (SP)+,(A3)+ move.l (SP)+,(A3)+ lea TPINS(PC),A2 move.l (A2)+,(A3)+ move.l (A2)+,(A3)+ bra XDEL WDNAM:move.l A6,A5 bsr WDAVLT beq.s G87 move.b D0,(A4)+ moveq #30,D1 G85:bsr WDAL beq.s G86 move.b D0,(A4)+ dbra D1,G85 move.l A5,A6 moveq #-3,D1 rts G86:clr.b (A4)+ clr.b (A4)+ clr D1 rts G87:bsr WDAL1 move.l A5,A6 beq.s G86 moveq #-4,D1 rts WDLGS:lea TDEQ1,A4 bsr.s WDNAM bne.s G89 lea TDEQ1,A4 moveq #0,D0 move.b (A4),D0 beq.s G89 bclr #5,D0 asl #8,D0 add.b 1(A4),D0 lea TDLGN(PC),A3 cmpi #256*"D",D0 beq.s G875 lea 8(A3),A3 cmpi #256*"M",D0 beq.s G88 lea 32(A3),A3 cmpi #256*"A",D0 beq.s G88 cmpi #256*"B",D0 bne.s G90 lea 8(A3),A3 G875:move.l (A3),D0 subq.l #1,D0 cmp D0,D0 rts G88:move.l (A3),D0 cmp D0,D0 G89:rts G90:move.l A6,A3 move.l TDBAS(PC),A6 moveq #0,D2 G91:cmpi.b #$1A,(A6) bne.s G92 move.l A5,A6 moveq #-5,D1 rts G92:addq.l #1,D2 lea TDEQ1,A2 bsr WDAVLT beq.s G95 cmp.b (A2)+,D0 bne.s G95 G93:bsr WDAL beq.s G94 cmp.b (A2)+,D0 beq.s G93 bra.s G95 G94: GWD008:move.b (A6)+,D0 cmpi.b #32,D0 beq.s GWD008 tst.b D0 beq.s G91 tst.b (A2) bne.s G95 cmpi.b #":",D0 beq.s G96 G95:tst.b (A6)+ bne.s G95 bra.s G91 G96:move.l D2,D0 cmp D0,D0 move.l A3,A6 rts WDLGN:bsr WDN beq.s G981 WDLGD:move.l A6,A1 bsr WDLGS bne.s G983 tst.l D0 bne.s G97 move D0,D1 rts G97: GWD009:move.b (A6)+,D1 cmpi.b #32,D1 beq.s GWD009 move.l D0,D4 cmpi.b #"+",D1 beq.s G98 cmpi.b #"-",D1 beq.s G982 moveq #1,D1 bra G790 G98:bsr WDN bne.s G983 add.l D0,D4 bcc.s G980 moveq #-1,D4 G980:move.l D4,D0 G981:moveq #1,D1 cmp D0,D0 rts G982:bsr WDN bne.s G983 sub.l D0,D4 bcc.s G980 moveq #0,D4 bra.s G980 G983:move.l A1,A6 rts WDBLK: GWD010:move.b (A6)+,D0 cmpi.b #32,D0 beq.s GWD010 cmpi.b #$90,D0 bne.s HD10 moveq #1,D0 move.l TDLGN(PC),D2 bra.s G981 HD10:cmpi.b #$B0,D0 bne.s HD11 lea TPLC(PC),A4 move.l (A4),D0 move.l 8(A4),D2 bra.s G981 HD11:subq.l #1,A6 move.l A6,A4 bsr WDN bne HD19 cmpi.b #",",(A6)+ bne HD19 move.l D0,D4 move D1,D5 bsr WDN bne.s HD19 cmp D5,D1 bge.s HD19 move.l A6,A3 move.l A4,A1 lea TDEQ1,A2 move.l A2,A6 HD12:cmp D5,D1 beq.s HD13 move.b (A1)+,(A2)+ subq #1,D5 bra.s HD12 HD13:asl #2,D1 neg D1 lea XE10-4(PC),A0 move.l (A0,D1.W),D5 HD14:move.b #"0",(A2)+ addq #4,D1 bne.s HD14 clr.b (A2) move.l D0,D6 bsr WDN move.l D4,D1 sub.l D0,D1 add.l D6,D0 bcs.s HD18 cmp.l D1,D6 bge.s HD15 add.l D5,D0 bcs.s HD18 HD15:move.l A3,A6 move.l D4,D2 HD150:exg D0,D2 moveq #1,D1 tst.l D0 bne.s HD16 moveq #1,D0 HD16:subq.l #1,D2 moveq #2,D3 addx.l D3,D2 lea TDLGN(PC),A0 cmp.l (A0),D2 ble.s HD17 move.l (A0),D2 HD17:cmp.l (A0),D0 ble.s HD170 move.l (A0),D0 HD170:cmp.l D0,D2 bcs.s HD18 cmp D1,D1 rts HD18:moveq #-6,D1 HD181:move.l A4,A6 HD180:rts HD19:move.l A4,A6 bsr WDLGN bne.s HD180 GWD011:move.b (A6)+,D2 cmpi.b #32,D2 beq.s GWD011 cmpi.b #",",D2 beq.s HD21 subq.l #1,A6 tst D1 bne.s HD20 move.l TDLGN(PC),D2 moveq #0,D0 rts HD20:move.l D0,D2 moveq #2,D1 bra.s HD16 HD21:move.l D0,D5 GWD012:move.b (A6)+,D2 cmpi.b #32,D2 beq.s GWD012 cmpi.b #"+",D2 beq.s HD23 subq.l #1,A6 bsr WDLGN bne.s HD181 move.l D5,D2 tst D1 bne.s HD22 move.l TDLGN(PC),D0 HD22:bra.s HD150 HD23:bsr WDN bne.s HD181 move.l D5,D2 add.l D2,D0 subq.l #1,D0 bra.s HD22 WDBLKA:bsr WDBLK bne.s HD231 tst D1 bne.s HD230 move.l TPLC(PC),D0 move.l TPLD(PC),D2 HD230:cmp D1,D1 HD231:rts WDBKPT:bsr.s WDBLKA bne.s RER4 move.l D0,D5 move.l D2,D6 GWD013:move.b (A6)+,D1 cmpi.b #32,D1 beq.s GWD013 tst.b D1 beq.s XSBLK1 cmpi.b #";",D1 beq.s HD26 HD24:moveq #-7,D1 RER4:moveq #3,D0 sub D1,D0 trap #15 HD26:bsr.s WNUMM XSBLK1:move.l D5,D0 move.l D6,D2 XSBLK:bsr PNLG lea TPIC(PC),A1 move.l A0,(A1)+ move.l D0,(A1)+ move.l D2,D0 bsr PNLG move.l A0,(A1)+ move.l D0,(A1)+ rts WNUMM:bsr WDLGN bne.s RER4 tst.b (A6) bne.s HD24 bra XSPNT WEDITP:lea TDEDIT(PC),A0 bsr XPTET bsr RLIGNE WNUMMH:bsr.s WNUMM bra SAT0 WDBK1A:bsr.s WDBLKA bra.s HD260 WDBK1:bsr WDBLK HD260:bne.s RER4 tst.b (A6) bne.s HD24 rts WDBKSU:movem.l A5/D6,-(SP) bsr WDBLKA bne.s RER4 bsr.s XSBLK movem.l (SP)+,A5/D6 rts WPRINT1:lea GEW60(PC),A6 WPRINT:move.l A6,-(SP) bsr INITAR move.l (SP)+,A6 lea TDPRPR(PC),A0 bsr XPTET bsr VERPRN clr.l INDT bsr.s WDBK1 bsr PNLG lea TPIC(PC),A1 move.l D0,-(A1) move.l A0,-(A1) move.l D2,D0 bsr PNLG move.l D0,-(A1) move.l A0,-(A1) lea TDF1(PC),A0 move #4,(A0)+ move #9,(A0)+ clr (A0)+ move.b (A0),2(A0) st TPRINT clr RPAGE clr XPAGE lea GAU12(PC),A4 bsr.s GAV20 clr NPAGE GX10:move.l TPI(PC),A5 cmp.l TPIB(PC),A5 bge.s GX17 jsr DECPGE bne.s GX16 GX12:clr RPAGE clr XPAGE bsr.s GAV20 GX16:bsr PLGN1 lea TPL(PC),A4 addq.l #1,(A4) move.l A0,-(A4) bra.s GX10 GX17:clr TPRINT rts GAV20:lea TPAGE,A1 moveq #50,D1 GX14:move.b (A4)+,(A1)+ dbeq D1,GX14 clr.b (A1) rts INSER:lea TDPR(PC),A0 move (A0)+,D0 cmp.b (A0),D0 rts WINSAW:move.l A6,-(SP) GEX41:move.b (A6)+,D0 beq.s GEX42 cmpi.b #$1A,D0 bhi.s GEX41 cmpi.b #$19,D0 bcs.s GEX41 moveq #78,D0 trap #15 GEX42:move.l (SP)+,A6 bsr WDAVLT beq.s HD270 subq.l #1,A6 rts HD270:cmpi.b #CARCOM,D0 beq.s HD270A cmpi.b #":",D0 beq.s HD270A cmpi.b #"@",D0 beq.s HD270A cmpi.b #"\\",D0 beq.s HD270A tst.b D0 HD270A:eor.b #4,ccr rts XMISF:move.l A6,A0 moveq #":",D0 bsr.s XMISF1 moveq #CARCOM,D0 XMISF1:bsr XFCHR beq.s HD273 subq.l #1,A1 move.l A1,A2 HD271:cmp.l A2,A0 bge.s HD272 cmpi.b #32,-(A2) beq.s HD271 addq.l #1,A2 HD272:move.b (A1)+,(A2)+ bne.s HD272 HD273:rts WDSEKA:lea TDEXT(PC),A0 bsr XPTET tst.l TDMOD bne.s IWDS lea GEV88(PC),A0 IWDS:bsr SCARE WQUIT:jsr XMKILL jsr XCLOSEA bsr OTE70 bsr EXCHTRAP bsr VDI101 lea TEXCEP,A0 moveq #8,D0 move.l D0,A1 bsr EXCEP11 jsr XLIBERE move.l BASEPAGE,-(SP) move #$49,-(SP) trap #1 clr -(SP) trap #1 ALERT1:lea GEW54(PC),A2 moveq #0,D1 bra.s GEV81 ALERT:lea GEV87(PC),A2 moveq #1,D1 GEV81:moveq #1,D0 GEV83:movem D0/D1,-(SP) bsr.s SRESOL0 bsr VDKEY move.l AESPB+8,A1;AINTIN move (SP)+,(A1) lea TBUF+2000,A1 move.l A0,-(SP) move.l AESPB+16,A0;ADDRIN move.l A1,(A0) move.l (SP)+,A0 moveq #3,D1 and (SP)+,D1 swap D1 addi.l #"[0][",D1 move.l D1,(A1)+ move #200,D2 GEV85:move.b (A0)+,D0 cmpi.b #13,D0 bne.s GEV850 moveq #"|",D0 GEV850:move.b D0,(A1)+ dbeq D2,GEV85 subq #1,A1 moveq #"]",D2 move.b D2,(A1)+ move.b D1,(A1)+ moveq #32,D0 GEV86:move.b (A2)+,(A1)+ dbeq D0,GEV86 subq #1,A1 move.b D2,(A1)+ clr.b (A1)+ bsr SHOWMA moveq #52,D3 bsr AESC move.l AESPB+12,A0;AINTOUT move (A0),D0 cmpi #1,D0 GEV84:rts SRESOL0:tst.b AESOK beq.s GEV84 lea RESOL(PC),A1 move RESOLB-RESOL(A1),(A1) jmp SETCED-RESOL(A1) XPTETCR1:lea TDBAS(PC),A1 cmpm.l (A1)+,(A1)+ beq XPTET XPTETCR:move.l A0,-(SP) bsr XPTET move.l (SP)+,A0 SCARE:bsr ALERT beq.s GX22 GEW25:lea U3F98F(PC),A0 tst.b SAFER beq SAERR1 bsr XN15 trap #3;HOT GX22:tst.b SAFER bne X9 rts WADRED:bsr INITAR jsr PB962 clr TFRUN jsr WADR jmp MA512 S3BE10:bsr.s ZF3E6 lea T3FDB6,A6 bsr.s PASFAIT S3BE14:movem.l D3/D6/A5/A6,-(SP) lea T3FDB6,A5 bsr.s WADRED move.l D3,D0 movem.l (SP)+,D3/D6/A5/A6 rts S3BE24A:lea U3F713(PC),A0 bsr.s S3BE10 move.l D0,D2 lea U3F71A(PC),A0 bsr.s S3BE10 move.l D0,D3 sub.l D2,D3 rts S3BE24:bsr.s S3BE24A ble RER3 rts ZF3E6:bsr XN15 move.l A6,-(SP) bsr.s ZF3FA move.l (SP)+,A6 moveq #13,D0 rts RLIGNE:lea GEV96(PC),A0 ZF3F9:bsr XN15 bsr.s ZF3FA PASFAIT:cmpi.l #-3,(A6) beq GEW25 rts ZF3FA:lea T3FDB6,A6 ZF3FB:move #98,TBUFL bsr X9 movem.l A3/A5,-(SP) lea GET79,A5 bsr X4 movem.l (SP)+,A3/A5 rts IF3FB:dc.w 0 ;EXEC CHERCHE/CHANGE WS:clr.l -(SP) clr.l -(SP) move.l SP,YSPIL lea YSNLG(PC),A0 clr.l (A0)+ move #4,(A0)+ move.l TDMOD(PC),(A0) move.l TPI ,A6 subq.l #1,A6 HJ10:move.l A6,-(SP) clr.l -(SP) move.l A6,GF18 HJ12:move.l (SP)+,D1 lea YSPRG,A5 add.l D1,A5 move.l (SP)+,D0 move.l D0,A6 beq HJ28 tst D1 beq.s HJ120 tst.b (A6) beq.s HJ12 HJ120:clr D0 move.b (A5),D0 move.l TPI1 ,A4 lea TYPCAR,A2 move D0,D3 move.b YSDST(PC),D4 beq.s HJ13 btst #6,(A2,D0.W) beq.s HJ13 bclr #5,D0 bset #5,D3 HJ13:addq.l #1,A6 move.b (A6),D2 bne.s HJ14 tst D1 bne.s HJ172 lea TPI ,A0 move.l A6,(A0) addq.l #1,(A0)+ addq.l #1,(A0) HJ14:cmp.l A4,A6 bge.s HJ12 cmp.b D2,D0 beq.s HJ14A cmp.b D2,D3 bne.s HJ13 HJ14A:move.l A6,-(SP) move.l D1,-(SP) tst D1 bne.s HJ140 move.l A6,YSTPI move.l A6,GF18 HJ140:addq.l #1,A5 addq.l #1,A6 HJ15:clr D0 move.b (A5)+,D0 beq.s HJ16 cmpi.b #11,D0 bcs.s HJ17 HJ16:cmp.l A4,A6 bge HJ12 move D0,D3 tst.b D4 beq.s HJ16A btst #6,(A2,D0.W) beq.s HJ16A bclr #5,D0 bset #5,D3 HJ16A:move.b (A6)+,D2 cmp.b D2,D0 beq.s HJ15 cmp.b D2,D3 beq.s HJ15 bra HJ12 HJ17:lea HJ39(PC),A0 bsr RELAD jmp (A0) HJ172:cmp.b D2,D0 bne HJ12 bra.s HJ14 HJ171:subq.l #2,A6 clr D0 move.b (A6)+,D0 HJ170:btst #2,(A2,D0.W) bne HJ12 addq.l #1,A6 cmp.l A4,A6 bgt HJ12 bra.s HJ15 HJ19:clr D0 move.b (A6),D0 bra.s HJ170 HJ20:move.l A5,D1 subi.l #YSPRG,D1 subq.l #1,A6 bra HJ120 HJ21:addq #8,SP bra.s HJ15 HJ22:clr.l (SP) move.l 4(SP),A0 moveq #0,D0 move.b (A5)+,D0 bsr HJ32 HJ220:bset #7,YSNLG lea GF18(PC),A0 move.l 4(SP),(A0) subq.l #1,(A0) bra HJ15 HJ23:addq #4,SP move.l (SP)+,A6 move.l A6,A0 moveq #0,D0 move.b (A5)+,D0 addq.l #1,D0 move.l A5,A1 add.l D0,A5 add.l D0,A6 move.l A6,-(SP) clr.l -(SP) bsr HJ34 bra.s HJ220 HJ24:addq #4,SP move.l (SP)+,A6 moveq #0,D0 move.b (A5)+,D0 HJ25:move.b (A5)+,(A6)+ dbra D0,HJ25 move.l A6,-(SP) clr.l -(SP) bra.s HJ220 HJ26:lea TPI ,A1 move.l (A1)+,A0 move.l (A1)+,D2 btst #7,YSNLG(PC) beq.s HJ261 move.l YSTPI(PC),A0 bsr PTSUIV bsr PTPRE moveq #1,D2 move.l -44(A1),A2 HJ260:cmp.l A0,A2 bge.s HJ262 tst.b (A2)+ bne.s HJ260 addq.l #1,D2 bra.s HJ260 HJ262:move.l D2,-(A1) move.l A0,-(A1) HJ261:movem.l D2/A0,-(SP) clr -(SP) move.b (A5)+,1(SP) HJ27:move (SP),REGD7+2 bsr XAVNPG bsr.s HJ272 bsr PLGN1M lea TPI,A4 move.l A0,(A4)+ addq.l #1,(A4)+ cmp.l #PRM1,A0 beq.s HJ271 subq #1,(SP) bpl.s HJ27 HJ271:addq #2,SP jsr ESCAPE bsr XARRET1 move.l (SP)+,-(A4) move.l (SP)+,-(A4) bra HJ15 HJ272:movem.l D1/D2/A2,-(SP) move.l TPI,A0 move.l TDMAX,D1 moveq #2,D2 bra G34 HJ270:move.l YSPIL(PC),SP move.l GF18(PC),A6 bra HJ10 GF18:dc.l 0 HJ28:lea YSNLG(PC),A0 move.l (A0),D0 bne.s HJ290 lea HJ30(PC),A0 bsr XN15 HJ29:trap #4;HD29A HJ290:bclr #31,D0 beq.s HJ29 add.l 6(A0),D0 move.l D0,TDMOD bsr XCONVR trap #4;HD29A HJ30:dc.b "PAS TROUVE",0 HJ31:dc.b "RRET []CONTINUE",0 even HJ32:lea TPI,A2 move.l (A2)+,A1 move.l (A2),D1 HJ33:cmp.l A0,A1 bgt.s HJ331 bge.s HJ330 tst.b (A1)+ bne.s HJ33 addq.l #1,D1 bra.s HJ33 HJ331:move.l A0,A1 subq.l #1,D1 HJ330:move.l D1,D2 bra.s HJ333 HJ332:tst.b (A0)+ bne.s HJ333 addq.l #1,D2 HJ333:dbra D0,HJ332 bra XDEL HJ34:move.l D0,D1 moveq #0,D2 move.l A1,A2 bra.s HJ342 HJ341:tst.b (A2)+ bne.s HJ342 addq.l #1,D2 HJ342:dbra D0,HJ341 move.l TPI,-(SP) bsr XINS move.l (SP)+,TPI rts HJ39:dc.w $901 dc.w HJ171-*;1 dc.w HJ19-*;2 dc.w HJ20-*;3 dc.w HJ21-*;4 dc.w HJ22-*;5 dc.w HJ23-*;6 dc.w HJ24-*;7 dc.w HJ26-*;8 dc.w HJ270-*;9 dc.w HJ28-*;10 dc.w 0 XAVNPG:lea YSNLG+2(PC),A0 moveq #1,D0 add D0,(A0)+ add (A0),D0 move D0,(A0) move.l TPI,A1 moveq #10,D1 HJ400:addq #1,D1 tst.b (A1)+ bne.s HJ400 move TCURSC,D2 addq.l #1,D2 divu D2,D1 add D1,D0 move D0,(A0) rts XARRET:lea HJ31(PC),A0 bsr XN15 bsr VDKEY bsr XKEY bclr #5,D0 cmpi.b #"A",D0 rts XARRET1:tst.b YSHLD bne.s HJ40 lea YSNLG1(PC),A0 cmpi #20,(A0) blt.s HJ40 move #1,(A0) bsr.s XARRET beq HJ28 HJ40:rts ALTZ=$91 ALTS=$9F ALTF=$A1 ALTB=$B0 ALTU=$96 ALTR=$93 ALTH=$A3 WSA2:lea YSNLG+1(PC),A0 tst.b (A5) beq HJ500 WSA1:lea YSPRG,A4 clr YSNLG HJ42:move.b (A5)+,D0 beq HJ52 cmpi.b #ALTF,D0 beq HJ52 cmpi.b #ALTS,D0 bne.s HJ45 move.b (A5)+,D0 beq.s HJ52 cmpi.b #ALTF,D0 beq.s HJ52 cmpi.b #ALTS,D0 beq.s HJ52 bsr.s CARINT cmpi.b #ALTZ,D0 bne.s HJ43 clr D0 addq #1,YSNLG HJ43:move.b D0,(A4)+ move.b #1,(A4)+ bra.s HJ46 HJ45:subq.l #1,A5 HJ46:move.b (A5)+,D0 beq.s HJ50 cmpi.b #ALTF,D0 beq.s HJ49 cmpi.b #ALTS,D0 beq.s HJ48 bsr.s CARINT cmpi.b #ALTZ,D0 bne.s HJ47 clr D0 addq #1,YSNLG HJ47:move.b D0,(A4)+ bra.s HJ46 HJ48:move.b #2,(A4)+ bra.s HJ46 HJ49:move.b #3,(A4)+ bra.s HJ42 HJ50:lea YSNLG+1(PC),A0 bra.s HJ51 HJ500:clr.b (A0) HJ51:lea YSEND(PC),A1 move.b (A0),1(A1) HJ510:rts CARINT:cmpi.b #11,D0 bcs.s HJ52 cmpi.b #26,D0 beq.s HJ52 cmpi.b #25,D0 bne.s HJ510 HJ52:bra HD37 WSINIT:move.l #$9002000,YSREP lea TDBAS,A0 move.l #1,40(A0) move.l (A0)+,32(A0) move.l (A0)+,52(A0) move.l (A0)+,52(A0) rts WSBUR:cmpi.b #ALTB,D0 beq.s HJ520 cmpi.b #ALTU,D0 beq.s HJ520 cmpi.b #ALTH,D0 beq.s HJ520 cmpi.b #" ",D0 beq.s HJ520 cmpi.b #ALTR,D0 HJ520:rts WSRBL:clr.b D6 subq.l #1,A6 HJ53:move.b (A6)+,D0 beq.s HJ56 cmpi.b #ALTB,D0 beq.s HJ55 cmpi.b #ALTH,D0 beq.s HJ560 cmpi.b #" ",D0 beq.s HJ561 cmpi.b #ALTR,D0 beq.s HJ54 cmpi.b #ALTU,D0 bne.s HJ52 move.b #10,YSREP HJ54:bset #0,D6 bne.s HJ52 bra.s HJ53 HJ55:bset #1,D6 bne HJ52 bsr WDBKSU lea TPI,A0 move.l 8(A0),(A0)+ move.l 8(A0),(A0)+ addq.l #8,A0 move.l (A0)+,4(A0) move.l (A0)+,4(A0) bra.s HJ53 HJ56:rts HJ560:bset #2,D6 bne HJ52 st YSHLD bra.s HJ53 HJ561:bset #3,D6 bne HJ52 clr.b YSDST bra.s HJ53 WSL1:lea YSTRG1(PC),A5 lea TDCHRS(PC),A0 bra.s WSL WSL2:lea YSTRG2(PC),A5 lea TDCHRT(PC),A0 WSL:bsr XPTET0 move.l A5,A4 bsr WSINIT moveq #46,D1 HJ57:move.b (A6)+,D0 beq.s HJ59 bsr WSBUR beq.s HJ58 move.b D0,(A4)+ clr.b (A4) dbra D1,HJ57 HJ58:bsr WSRBL HJ59:bsr.s WSPRT bsr WSA1 move.b (A1)+,(A4)+ move.b (A1)+,(A4)+ move.b (A1)+,(A4)+ bra WS WSPRT:lea HJ62(PC),A0 bsr XN15 lea TPL,A0 move.l (A0),D0 bsr PINTAE moveq #",",D0 bsr X12B move.l 24(A0),D0 cmp.l -32(A0),D0 beq.s HJ60 subq.l #1,D0 bsr PINTAE bra.s HJ61 HJ60:lea HJ63(PC),A0 bsr X15 HJ61:lea HJ64(PC),A0 bsr X15 move.l A5,A0 bra.s HJ641 HJ62:dc.b "CHERCHE DANS [",0 HJ63:dc.b "FIN",0 HJ64:dc.b "] ",0 HJ640:dc.b "REMPLACE PAR ",0 HJ641:bsr.s HJ642 bsr VIDEOI bsr X18 bsr VIDEON bsr.s HJ642 moveq #8,D0 bsr X12B bra X9 HJ642:moveq #$22,D0 bra X12B WSC:lea TDCHG(PC),A0 bsr XPTET0 bsr WSINIT moveq #46,D2 lea YSTRG1(PC),A5 cmpi.b #$9A,(A6) bne.s HJ66 addq.l #2,A6 moveq #11,D0 lea YSTRG2(PC),A4 HJ65:move.l (A5),D1 move.l (A4),(A5)+ move.l D1,(A4)+ dbra D0,HJ65 bra.s HJ69 HJ66:move.b (A6)+,D0 beq.s HJ70 cmpi.b #$94,D0 beq.s HJ67 bsr WSBUR beq.s HJ69 move.b D0,(A5)+ clr.b (A5) dbra D2,HJ66 bra.s HJ69 HJ67:lea YSTRG2(PC),A5 clr.b (A5) moveq #46,D2 HJ68:move.b (A6)+,D0 beq.s HJ70 bsr WSBUR beq.s HJ69 move.b D0,(A5)+ clr.b (A5) dbra D2,HJ68 HJ69:bsr WSRBL HJ70:lea YSTRG1(PC),A5 bsr WSPRT lea HJ640(PC),A0 bsr XN15 lea YSTRG2(PC),A0 move.l A0,A5 bsr HJ641 bsr WSA2 move (A1),-(SP) lea YSTRG1(PC),A5 bsr WSA1 move (SP)+,(A1) move.l A4,A3 move.b (A1)+,(A4)+ move.b (A1)+,(A4)+ move.b (A1)+,(A4)+ move.l A4,A2 lea YSTRG1(PC),A4 lea YSTRG2(PC),A5 HJ71:move.l A3,A6 move.l A4,A0 cmpi.b #ALTF,(A4) beq.s HJ78 tst.b (A5) bne.s HJ73 tst.b (A0) beq WS HJ73:clr D6 bsr.s WSZLG move D4,D5 move.l A0,A4 move.l A5,A0 bsr.s WSZLG move.l A0,A5 tst D6 bne.s HJ76 cmp D5,D4 bne.s HJ76 tst D4 beq HJ52 moveq #7,D0 HJ74:bsr.s WSINS move D4,D0 subq #1,D0 bsr.s WSINS subq #1,D4 HJ75:move.b (A1)+,D0 cmpi.b #ALTZ,D0 bne.s HJ750 clr D0 HJ750:bsr.s WSINS dbra D4,HJ75 bra.s HJ71 HJ76:tst D5 beq HJ52 moveq #5,D0 bsr.s WSINS move D5,D0 bsr.s WSINS HJ77:tst D4 beq.s HJ71 moveq #6,D0 bra.s HJ74 HJ78:cmpm.b (A4)+,(A5)+ bne HJ52 moveq #4,D0 bsr.s WSINS bra.s HJ71 WSZLG:move.b (A0)+,D0 cmpi.b #ALTF,D0 bne.s HJ80 move.b (A0)+,D0 HJ80:cmpi.b #ALTS,D0 bne.s HJ81 move.b (A0)+,D0 HJ81:move.l A0,A1 subq.l #1,A1 clr D4 bra.s HJ83 HJ82:addq #1,D4 move.b (A0)+,D0 HJ83:tst.b D0 beq.s HJ85 cmpi.b #ALTZ,D0 seq D6 cmpi.b #ALTF,D0 beq.s HJ85 cmpi.b #ALTS,D0 bne.s HJ82 HJ84:move.b (A0)+,D0 beq.s HJ85 cmpi.b #ALTF,D0 bne.s HJ84 HJ85:subq.l #1,A0 rts WSINS:move.l A1,-(SP) move.l A2,D1 sub.l A6,D1 move.l A2,A0 addq.l #1,A2 move.l A2,A1 HJ86:move.b -(A0),-(A1) dbra D1,HJ86 move.b D0,(A6)+ move.l (SP)+,A1 rts WFIND:lea GEX67 ,A0 bsr XN15 lea YSTRG1(PC),A0 bsr HJ641 lea GEX68 ,A0 bsr XN15 lea YSTRG2(PC),A0 bsr HJ641 WFIND0:lea GEX62,A2 bsr DAMGN move.l TPILE,SP lea GEX69(PC),A3 bsr XKEY2 trap #5;HOTB WFIND1:lea YSTRG1T(PC),A1 bra.s GEX70 WFIND2:lea YSTRG2T(PC),A1 GEX70:move.b (A1)+,GEX72 lea GEX71 ,A0 bsr XN15 addq #1,A1 move.l A1,A0 bsr X18 lea GEX73 ,A0 bsr X15 bsr ZF3FA moveq #-3,D0 cmp.l (A6),D0 bne.s GEX74 trap #5;HOTB GEX74:moveq #47,D1 cmpi.b #34,(A6) bne.s GEX76 move.l A6,A0 GEX75:tst.b (A0)+ bne.s GEX75 subq #2,A0 cmpi.b #34,(A0) bne.s GEX76 cmp.l A0,A6 beq.s GEX76 addq #1,A6 clr.b (A0) GEX76:move.b (A6)+,(A1)+ dbeq D1,GEX76 clr.b -(A1) bra WFIND WFIND3:lea YSTRG1(PC),A0 lea YSTRG2(PC),A1 moveq #11,D0 GEX77:move.l (A0),D1 move.l (A1),(A0)+ move.l D1,(A1)+ dbra D0,GEX77 bra WFIND WFIND4:lea GEX63,A0 moveq #121,D0 sub.b (A0),D0 move.b D0,(A0)+ moveq #-114,D0 GEX770:sub.b (A0),D0 move.b D0,(A0)+ bra WFIND0 WFIND5:lea GEX64,A0 bra.s GEX78 WFIND6:lea GEX65,A0 bra.s GEX78 WFIND7:lea GEX66,A0 GEX78:moveq #-89,D0 bra.s GEX770 WFIND8:lea YSTRG1(PC),A5 bra.s GEX83 WFIND9:lea YSTRG2(PC),A5 GEX83:bsr.s WFINDI bra HJ59 WFIND10:bsr.s WFINDI bra HJ70 WFINDI:bsr WSINIT cmpi.b #"L",GEX63 beq.s GEX79 lea TPI,A0 move.l 8(A0),(A0)+ move.l 8(A0),(A0)+ addq.l #8,A0 move.l (A0)+,4(A0) move.l (A0)+,4(A0) GEX79:cmpi.b #"N",GEX64 bne.s GEX80 move.b #10,YSREP GEX80:cmpi.b #"N",GEX65 beq.s GEX81 clr.b YSDST GEX81:cmpi.b #"N",GEX66 bne.s GEX82 st YSHLD GEX82:rts WC:lea TDCMP(PC),A0 bsr TSTTET bsr S3BE24A lea U3F71F(PC),A0 bsr S3BE10 move.l D0,A1 move.l D2,A2 bsr HIDECM HG60:moveq #16,D2 HG61:subq.l #1,D3 beq.s HG62 cmpm.b (A1)+,(A2)+ beq.s HG61 bsr X9 subq.l #1,A1 move.l A1,D0 bsr.w S3F3B2 bsr.w XC move.b (A1),D0 bsr.w S3F3C4 bsr.w XC move.b (A1)+,D0 bsr.w X12A bsr.w XC subq.l #1,A2 move.l A2,D0 bsr.w S3F3B2 bsr.w XC move.b (A2),D0 bsr.w S3F3C4 bsr.w XC move.b (A2)+,D0 bsr.w X12A bsr.w XC bsr X9 dbra D2,HG61 bsr XARRET bne.s HG60 HG62:trap #4;HD29A DECSIZE:move.l A6,A5 move.l TVALA6,A6 moveq #1,D2 jsr DECCRP bne.s ME18 bsr NEXTA5 bclr #5,D0 cmpi.b #"B",D0 beq.s ME18 moveq #2,D2 cmpi.b #"W",D0 beq.s ME18 moveq #4,D2 cmpi.b #"L",D0 bne ERRSZ ME18:move.b D2,T3FCEB rts DECSZAD:bsr.s DECSIZE move.l T3FCB2(PC),D3 bsr DECTMNR1 beq.s ME20 bsr WADRED ME20:cmpi.b #1,T3FCEB beq.s ME22 btst #0,D3 bne ERROD ME22:move.l D3,D0 rts INITAR:jmp INITA W3BB12:bsr.s INITAR lea U3F896(PC),A0 move.l BASEPAGE,D1 move.l D1,-(SP) bsr.s GAJ47 lea SOURCEH,A2 move.l (A2)+,D1 move.l (A2),D2 subq.l #2,D2 bsr.s GAJ51 bsr.s GAJ49 addq #4,A2 bsr.s GAJ49 move.l TLIMIT,D1 bsr.s GAJ47 move.l TRTOP,D1 move.l D1,-(SP) bsr.s GAJ47 lea TMPROC,A2 move.l PILEPROC,D2 bsr.s GAJ54 addq #4,A2 move.l PILEEXEC,D2 bsr.s GAJ54 bsr XN15 move.l SP,D0 move.l A6,D1 move.l (SP)+,D2 sub.l (SP)+,D2 bsr.s GAJ55 trap #5;HOTB GAJ47:bsr XN15 bsr XC move.l D1,D0 bra S3F398 GAJ49:move.l (A2)+,D1 move.l (A2)+,D2 GAJ51:bsr.s GAJ47 move.l D2,D0 GAJ52:sub.l D1,D0 GAJ53:moveq #11,D1 bsr PINTE rts GAJ54:bsr XN15 move.l (A2)+,D1 move.l (A2)+,D0 GAJ55:bsr.s GAJ52 move.l D0,D1 moveq #100,D3 jsr LMUL13 moveq #-1,D0 GAJ56:addq.l #1,D0 sub.l D2,D3 bpl.s GAJ56 bsr.s GAJ53 moveq #"%",D0 bsr X12B rts LOADPA:move.l #"Z.",D2 bsr S3DFFA LOADPC:bsr S3E058 move #2,-(SP) move D6,-(A7) clr.l -(SP) move #$42,-(A7) trap #1 move.l D0,D3 bmi ERRFY clr 8(SP) trap #1 lea 10(SP),SP rts LOADPB:move.l TDHAUT,A3 addq #1,A3 move.l A3,A4 add.l D3,A4 cmp.l TDMAX,A4 bge.s XERRMRR GEW40:move.b -(A3),-(A4) cmp.l A2,A3 bgt.s GEW40 move.l A2,D2 bsr S3E01F bpl.s GEW67 move.l TDHAUT,A3 addq #1,A3 lea (A2,D3.L),A0 GEW66:cmp.l A3,A2 bgt ERRFY move.b (A0)+,(A2)+ bra.s GEW66 GEW67:move.l D2,A0 move.l D3,D1 moveq #0,D2 move.b #1,FILETYP rts XERRMRR:clr D0 trap #15 WLOADM:lea TDLOAM(PC),A0 bsr XPTET bsr LOADPA subq.l #1,D3 ble ERRFY move.l TPINS,A2 bsr.s LOADPB move.l A0,A1 bsr.s GEW44 bsr XMODP bsr HR18 bra INITRMR GEW42:move.b (A1)+,D0 beq.s GEW43 cmpi.b #13,D0 bne.s GEW44 GEW43:addq.l #1,D2 GEW44:subq.l #1,D3 bpl.s GEW42 rts VERFY:moveq #-1,D0 move.b FILETYP,D1 bpl.s GEW47 btst #1,D1 bne.s GEW47 bsr LOADPC btst #0,FILETYP beq.s GEW440 subq.l #1,D3 GEW440:lea FILEST,A0 move.l (A0)+,A3 move.l (A0)+,D4 move.l D4,-(SP) move.l A3,-(SP) move.l D3,D5 sub.l D4,D5 bpl.s GEW45 move.l D3,D4 neg.l D5 GEW45:move.l #$E00,D3 cmp.l D3,D4 bcc.s GEW46 move.l D4,D3 GEW46:sub.l D3,D4 tst.l D3 bne.s GEW48 bsr S3E0AC lea FILEST,A0 move.l (SP)+,(A0)+ move.l (SP)+,(A0)+ move.l D5,D0 GEW47:rts GEW48:lea TBUF,A4 move.l A4,D2 move.l D3,-(SP) bsr S3E01E move.l (SP)+,D3 subq #1,D3 GEW49:cmpm.b (A3)+,(A4)+ beq.s GEW50 addq.l #1,D5 GEW50:dbra D3,GEW49 bra.s GEW45 WVERIF:lea GEW52(PC),A0 bsr XPTET lea FILEBUF,A0 bsr X15N bsr VERFY lea GEW53(PC),A0 tst.l D0 bmi.s GEW56 lea GEW54(PC),A0 beq.s GEW56 addq #GEW55-GEW54,A0 moveq #6,D1 bsr PINT move.b #"|",(A0) move.l A0,-(SP) lea GEW55(PC),A0 bsr ALERT1 lea GEW55(PC),A0 move.l (SP)+,A1 move.b #32,(A1) GEW56:bsr X15N rts LONGB:lea SOURCEI,A3 move.l (A3)+,D1 sub.l (A3),D1 rts WNEWB:bsr.s LONGB bpl.s GEW74 lea GEW69(PC),A0 bsr SCARE bsr.s GEW70 bra.s INITRMR GEW70:lea SOURCEI,A3 clr.b GAU10 move.l (A3)+,A0 move.l (A3),A1 move.l A0,D1 sub.l A1,D1 move.l A0,(A3)+ GEW700:addq #4,A3 add.l D1,(A3)+;TDBAS move.l (A3),A5 move.l A0,A2 GEW71:move.b (A1)+,(A2)+ cmp.l A5,A1 ble.s GEW71 GEW72:moveq #0,D2 bra XMODP GEW74:rts WLOADB:lea GEW75(PC),A0 bsr XPTET GEW76:bsr LOADPA GAR49:subq.l #1,D3 ble ERRFY move.l SOURCEIF,A2 bsr.s FNAMBB bsr LOADPB lea SOURCEIF,A3 GEW77:add.l D1,(A3)+ addq #4,A3 add.l D1,(A3)+;TDBAS bsr.s GEW72 bsr S3E0AC INITRMR:jmp INITRM WOVERL:lea GEW78(PC),A0 bsr XPTETCR bsr.s GEW70 bra.s GEW76 WOVERS:lea GEW80(PC),A0 bsr XPTETCR1 bsr SINIT5 bra S3DEF9 FNAMBB:movem.l D0-D2/A0-A3,-(SP) lea GAU10,A1 bra.s GAU20 FNAMSR:movem.l D0-D2/A0-A3,-(SP) lea GAU12,A1 GAU20:tst.b (A1) bne.s GAU34 lea TYPCAR,A2 lea FILEBUF,A0 move.l A0,A3 GAU22:move.b (A0)+,D0 beq.s .2 cmpi.b #"\\",D0 beq.s .1 cmpi.b #":",D0 bne.s GAU22 .1:move.l A0,A3 bra.s GAU22 .2:moveq #0,D0 move.l A3,A0 moveq #7,D1 GAU30:move.b (A0)+,D0 beq.s GAU32 cmpi.b #".",D0 beq.s GAU32 btst #6,(A2,D0.L) beq.s GAU31 bset #5,D0 GAU31:move.b D0,(A1)+ dbra D1,GAU30 GAU32:clr.b (A1) GAU34:movem.l (SP)+,D0-D2/A0-A3 rts LONGH:lea SOURCEH,A3 move.l (A3)+,D1 addq.l #2,D1 sub.l (A3),D1 rts WNOHELP:bsr.s LONGH beq.s GEW82 lea GEW81(PC),A0 bsr SCARE bsr.s GEW83 bra INITRMR GEW82:rts GEW83:lea SOURCEH,A3 move.l (A3)+,A0 move.l (A3),A1 subq #2,A1 move.l A0,D1 sub.l A1,D1 add.l D1,(A3)+;SOURCEI add.l D1,(A3)+;SOURCEIF bra GEW700 WLOADH:lea GEW95(PC),A0 bsr XPTET bsr LOADPA bra.s GEW96 WOVERH:lea GEW85(PC),A0 bsr.s LONGH beq.s GEW851 lea GEW850(PC),A0 GEW851:bsr SCARE bsr.s GEW83 lea GEW86(PC),A0 GAR40:lea FILETYP,A1 clr.b (A1)+ GEW87:move.b (A0)+,(A1)+ bne.s GEW87 bsr LOADPC GEW96:subq.l #1,D3 ble ERRFY clr.l THLA move.l SOURCEI,A2 subq #2,A2 bsr LOADPB lea SOURCEI,A3 add.l D1,(A3)+ bra GEW77 WAPPEND:bsr.s S3DEF8 trap #5;HOTB S3DEF8:lea TDAPP(PC),A0 bsr TSTTET S3DEF9:move.l #"Z.",D2 bsr S3DFFA GAL31:bsr FNAMSR bsr S3E058 move.l TDHAUT,D2 move.l TDMAX,A3 subq.l #1,A3 move.l A3,D3 sub.l D2,D3 bsr S3E01E move.l D0,A0 clr.b (A0) move.b #$1A,1(A0) cmp.l A3,A0 blt.s HR18 lea HR19(PC),A0 bsr XN15 HR18:bsr S3E0AC bsr TERPS st TNEWLB beq XCONVR bset #1,FILETYP bra RSEKA1 S3DFB6:lea TDINP(PC),A0 bsr TSTTET move.l #"GMI.",D2 bsr S3DFFA bsr S3E058 bsr S3BE24A bsr S3E01E bsr S3E0AC trap #5;HOTB FSELB:lea T3E1AA,A0 FSEL:movem.l A0-A2,-(SP) jsr XESAV bsr VDKEY move.l AESPB+16,A0;ADDRIN move.l (SP)+,(A0)+ move.l (SP)+,(A0)+ move.l (SP)+,A1 moveq #90,D3 tst.b (A1) beq.s GEW29 move.l $4F2.W,A2 move.l (A2),D0 cmpi #$104,D0 bcs.s GEW29 move.l A1,(A0)+ moveq #91,D3 GEW29:bsr AESCM lea FILEBUF,A2 clr.b (A2) move.l AESPB+12,A0;AINTOUT tst (A0)+ beq.s GEW34 tst (A0)+ beq.s GEW34 move.l AESPB+16,A1;ADDRIN movem.l (A1),A0/A1 tst.b (A1) beq.s GEW34 moveq #80,D1 GEW30:move.l A2,A3 GEW31:move.b (A0)+,D0 move.b D0,(A2)+ beq.s GEW32 cmpi.b #"\\",D0 dbeq D1,GEW31 dbra D1,GEW30 GEW32:moveq #11,D1 GEW33:move.b (A1)+,(A3)+ dbeq D1,GEW33 clr.b (A3) GEW34:jmp XEREM S3DFFA:lea MD94(PC),A2 S3DFFX:lea U3F75D(PC),A0 bsr XN15 exg A6,A0 lea FILETYP,A6 clr.b (A6)+ bsr ZF3FB exg A6,A0 moveq #-3,D0 cmp.l (A0),D0 bne.s S3DFFB lea TBUF+2000,A0 move.l A0,A1 moveq #8,D0 GAL86:move.b (A2)+,(A0)+ dbeq D0,GAL86 subq #1,A0 bsr.s I3E014 lea T3E1AX,A0 lea MD94(PC),A2 bsr FSEL lea FILEBUF,A0 tst.b (A0) beq GEW25 bsr X15N rts S3DFFB:lea FILEBUF,A0 I3E008:tst.b (A0) beq.s I3E014 cmpi.b #$2E,(A0)+ bne.s I3E008 GAL29:cmpi.b #"\\",(A0) beq.s I3E008 tst.b (A0)+ bne.s GAL29 rts I3E014:move.b D2,(A0)+ asr.l #8,D2 bne.s I3E014 clr.b (A0) rts S3E01E:bsr.s S3E01F bmi S3E08C add.l D2,D0 rts S3E01F:move.l D2,-(A7) bclr #$1F,D3 move.l D3,-(A7) move D6,-(A7) move #$3F,-(A7) trap #1 lea 12(SP),SP lea FILEST,A0 move.l D2,(A0)+ move.l D0,(A0)+ rts S3E03C:movem.l D2/D3,FILEST S3E03D:move.l D2,-(A7) move.l D3,-(A7) move D6,-(A7) moveq #$20,D0 add D0,D0 move D0,-(A7) trap #1 tst.l D0 bmi.s S3E08C addq.l #2,A7 move (A7)+,D6 sub.l (A7)+,D0 bne.s ERRNY addq.l #4,A7 rts S3E058:clr -(A7) pea FILEBUF move #$3D,-(A7) I3E064:trap #1 addq.l #8,A7 cmpi #$FFDF,D0 beq.s ERRAB tst D0 bmi.s S3E08C move D0,D6 move D0,FICHOUV rts S3E075:clr -(A7) pea FILEBUF move #$4E,-(A7) trap #1 tst.l D0 bne.s GEK32 lea GEK30(PC),A0 bsr SCARE addq #2,SP bra.s GEK31 S3E076:clr -(A7) pea FILEBUF GEK31:move #$41,-(A7) trap #1 GEK32:move #$3C,(A7) bra.s I3E064 S3E08C:bsr XCONVR ERRFY:moveq #54,D0 bra.s GEW28 ERRAB:moveq #55,D0 bra.s GEW28 ERRNY:moveq #56,D0 GEW28:clr.b FILETYP trap #15 S3E0AC:tas FILETYP CLOSERR:lea FICHOUV,A0 move (A0),D6 beq.s GEW26 clr (A0) move D6,-(A7) move #$3E,-(A7) trap #1 addq.l #4,A7 tst D0 bmi.s S3E08C GEW26:rts S3E0BE:move.l TDBAS,A0 S3E0C4:cmpi.b #$1A,(A0)+ bhi.s S3E0C4 beq.s S3E0DE tst.b -1(A0) bne.s S3E0C4 cmpi.b #$20,-2(A0) bne.s S3E0C4 subq #2,A0 move.b #$D,(A0)+ move.b #$A,(A0)+ bra.s S3E0C4 S3E0DE:rts SINIT4:moveq #-1,D0 bsr PNLG0 move.l A0,TDHAUT move.l D0,TDLGN G39:rts ;CONVERSION N*$20 0 --> 0 XCONVC:move.l TDBAS,A0 move.l A0,A1 moveq #32,D1 G410:cmpi.b #$1A,(A0) beq.s G440 G412:cmp.b (A0)+,D1 beq.s G412 subq #1,A0 G42:move.l A1,A2 move.b (A0)+,D0 beq.s G44 move.b D0,(A1)+ cmp.b D1,D0 bne.s G42 G43:move.b (A0)+,D0 beq.s G44 move.b D0,(A1)+ cmp.b D1,D0 bne.s G42 bra.s G43 G44:move.l A2,A1 clr.b (A1)+ bra.s G410 G440:move.b #$1A,(A1) move.l A1,TDHAUT XCONVR:bsr.s SINIT4 lea TPINS,A1 moveq #NBTPG-1,D1 GF22:clr.l (A1)+ addq #4,A1 dbra D1,GF22 GF25:lea TPINS,A0 moveq #NBTPG-1,D1 moveq #-1,D0 GF23:tst.l (A0)+ bne.s GF24 move.l (A0),D2 cmp.l D0,D2 bcc.s GF24 move.l D2,D0 move.l A0,A1 GF24:addq #4,A0 dbra D1,GF23 tst.l D0 bmi.s GF26 bsr PNLG move.l D0,(A1) move.l A0,-(A1) bra.s GF25 GF26:rts XCONVL:bsr SINIT4 bsr XCONVC move.l TDHAUT,A0 move.l A0,A1 add.l TDLGN,A1 subq.l #1,A1 clr D0 cmp.l TDMAX,A1 bge RER move.l A1,TDHAUT move.b #$1A,(A1) G450:cmp.l A0,A1 ble.s XCONVR G46:move.b -(A0),-(A1) bne.s G46 move.b #32,-(A1) bra.s G450 DFREE:clr D0 DFREE1:lea -32(SP),SP move.l SP,A0 move D0,-(SP) move.l A0,-(SP) move #$36,-(A7) trap #1 lea 20(SP),A0 lea 40(SP),SP tst.l D0 bmi.s GES50 move.l (A0),D0 mulu -(A0),D0 mulu -8(A0),D0 GES50:rts FIXREP0:lea GAL34(PC),A0 FIXREP:movem.l D0/D1/A0/A1,-(SP) moveq #"\\",D1 lea T3E1AA,A1 tst.b (A0) beq.s GEA57 moveq #63,D0 GEA52:move.b (A0)+,(A1)+ dbeq D0,GEA52 subq #1,A1 subq #2,A0 cmp.b (A0),D1 beq.s GEA53 cmpi.b #":",(A0) bne.s GEA56 GEA520:move.b D1,(A1)+ GEA53:lea GEA58,A0 GEA54:move.b (A0)+,(A1)+ bne.s GEA54 GEA56:movem.l (SP)+,D0/D1/A0/A1 rts GEA57:movem.l D1/D5/A6,-(SP) move.l A1,A6 bsr REPDEF move.l A6,A1 movem.l (SP)+,D1/D5/A6 bra.s GEA520 XREPDEF:bsr.s FIXREP0 lea T3E1AX,A1 lea T3E1AA,A0 KN46:move.b (A0)+,(A1)+ bne.s KN46 rts XWORDS:lea TMIND+4,A1 move #INDEXP-1,D6 moveq #0,D4 moveq #0,D3 GAB15:move.l A1,D5 addq #4,A1 moveq #-1,D2 GAB16:move.l D5,A0 addq.l #1,D2 move.l -(A0),D5 beq.s GAB22 move.l D5,A0 moveq #32,D1 tst.b (A0)+ bne.s GAB18 moveq #"*",D1 GAB18:move.b (A0)+,D0 beq.s GAB20 cmp.b D1,D0 beq.s GAB18 cmpi.b #$7F,D0 bne.s GAB19 moveq #"_",D0 GAB19:move.b D0,(A6)+ bra.s GAB18 GAB20:move.b D1,(A6)+ move.b (A0)+,D0 bsr.s GES78 bsr.s GES66 addq.l #1,D4 bra.s GAB16 GAB22:cmp.l D2,D3 bgt.s GAB23 move.l D2,D3 GAB23:dbra D6,GAB15 move.l D4,D0 moveq #4,D1 bsr.s GES64 lea GAB24,A0 bsr.s GES60 move.l D3,D0 bsr.s GES64 bra.s GES66 WVIEW:lea GEW20,A0 bsr ZF3F9 WVIEW1:move.l A6,A0 bsr FIXREP bsr INITAR moveq #0,D3 bsr.s WVIEW2 bsr X15 trap #4;HD29A GES60:move.b (A0)+,D0 beq.s GES62 bsr.s VERA6R move.b D0,(A6)+ bra.s GES60 GES62:rts GES64:move.l A6,A0 bsr PINT move.l A0,A6 VERA6R:bra VERA6 GES66:move.b #13,(A6)+ move.b #10,(A6)+ bra.s VERA6R GES78:move.b D0,D1 lsr.b #4,D0 bsr.s GES80 move D1,D0 GES80:andi #$F,D0 addi #$30,D0 cmpi #$39,D0 ble.s GES82 addq #7,D0 GES82:move.b D0,(A6)+ rts REPDEF:move #$19,-(SP) trap #1 addq #2,SP move D0,D5 addq #1,D5 addi #"A",D0 move.b D0,(A6)+ move.b #":",(A6)+ clr -(SP) move.l A6,-(SP) move #$47,-(SP) trap #1 addq #8,SP GAL57:tst.b (A6)+ bne.s GAL57 subq #1,A6 rts WVIEW2:move.l A6,-(SP) move #"[ ",(A6)+ bsr.s REPDEF lea GAL58(PC),A0 bsr.s GES60 lea T3FDB6,A3 lea T3E1AA,A0 bsr GES60 move.l A3,-(SP) move #$1A,-(A7) trap #1 addq #6,SP move D5,D0 lea T3E1AA,A0 move.b (A0)+,D1 beq.s GAL60 cmpi.b #":",(A0) bne.s GAL60 andi #31,D1 move D1,D0 GAL60:cmpi #2,D0 ble.s GAM10 btst #4,D3 beq.s GAM11 GAM10:bsr DFREE1 moveq #10,D1 bsr GES64 lea GES76,A0 bsr GES60 GAM11:bsr GES66 move #$3F,-(A7) pea T3E1AA move #$4E,-(A7) trap #1 addq.l #8,A7 tst D0 bne S3E1A2 S3E14C:moveq #3,D5 bra.s GES90 S3E14E:move.b #",",(A6)+ GES90:moveq #32,D4 tst D3 bne.s S3E14F move.l 26(A3),D0 moveq #6,D1 bsr GES64 move.b D4,(A6)+ btst #4,21(A3) beq.s S3E14F move.b #"+",-1(A6) S3E14F:moveq #11,D1 lea 30(A3),A0 S3E168:move.b (A0)+,D0 beq.s S3E176 move.b D0,(A6)+ dbf D1,S3E168 bra.s GES83 S3E176:move.b D4,(A6)+ dbf D1,S3E176 GES83:btst #0,D3 beq.s GES84 move.b 21(A3),D0 move.b D4,(A6)+ bsr GES78 GES84:btst #1,D3 beq.s GES88 move.l 26(A3),D0 moveq #7,D1 bsr GES64 GES88:btst #2,D3 beq.s GES89 move.b D4,(A6)+ move 24(A3),D0 jsr XDATEQ GES89:btst #3,D3 beq.s S3E17E move.b D4,(A6)+ move 22(A3),D0 jsr XTIMEQ S3E17E:move #$4F,-(A7) trap #1 addq.l #2,A7 tst D0 bne.s S3E1A3 tst D3 dbne D5,S3E14E bsr GES66 bra S3E14C S3E1A2:lea U3FA35(PC),A0 bsr GES60 S3E1A3:bsr GES66 clr.b (A6) move.l (SP)+,A0 rts GRUN:jsr DECCRG bne.s GAL35 subq #1,A5 lea GAL33,A0 bsr GAL48 GAP78:lea GAL34(PC),A6 bra.s GAL36 GAL34:dc.w 0 GAL35:move.l A5,A6 jsr DEAV1 GAL36:jmp WRUN GMERGE:bsr.s GAL39 beq WAPPEND bsr.s FRNAM2 lea TDAPP,A0 bsr.s GAL37 bsr GAL31 trap #5;HOTB GAL37:bsr XPTET GAL38:lea FILEBUF,A0 bra X15N GAL39:clr.b (A6) DECTMNR1:jmp DECTMN FRNAM2:lea FILEBUF,A0 jsr FRNAM GAP74:move.l #"Z.",D2 bra S3DFFB GSAVE:bsr.s GAL39 beq WWRITE bsr.s FRNAM2 lea GAL34(PC),A6 bsr GAL40 bsr.s GAL38 bsr.s GAL42 bsr GAL44 trap #5;HOTB GOVER:bsr.s GAL39 bne.s GAL46 bsr WOVERS trap #5;HOTB GAL46:lea GEW80,A0 bsr.s GAL48 trap #5;HOTB GAL48:move.l A0,-(SP) bsr.s FRNAM2 move.l (SP)+,A0 bsr XPTETCR1 GAP76:bsr SINIT5 bra GAL31 GDIR:bsr.s GAL39 beq.s GAL50 lea T3FDB6,A0 jsr FRNAM lea T3FDB6,A6 GAL50:bra WVIEW1 ERRSVD:moveq #41,D0 trap #15 WSRC1:move.l #"Z.",D2 lea GAU12,A2 bsr S3DFFX GAL42:bsr FNAMSR bsr S3E075 bsr TERPS beq.s HR14 bsr XCONVL bsr S3E0BE bset #1,FILETYP bset #6,ERRFILE HR14:rts WWRITE:bsr.s S3E1D6 trap #5;HOTB GAL40:lea TDWRI,A0 GAL41:bsr TSTTET move.l TDHAUT,D3 sub.l TDBAS,D3 beq.s ERRSVD rts S3E1D6:bsr.s GAL40 bsr.s WSRC1 GAL44:move.l TDHAUT,D3 move.l TDBAS,D2 sub.l D2,D3 addq.l #1,D3 GAL43:bsr S3E03C clr.l TDMOD HR15:bsr S3E0AC bclr #6,ERRFILE bne RSEKA1 rts WRASC:lea GC40,A0 bsr.s GAL41 move.l #"TXT.",D2 lea GAU12,A2 bsr S3DFFX bsr FNAMSR bsr S3E075 bsr.s CREEASC bra.s GAL43 CREEASC:movem.l A5/A6,-(SP) move.l TDBAS,A0 move.l TDHAUT,A6 addq #1,A6 clr.b (A6)+ move.b #$1A,(A6)+ move.l A6,-(SP) moveq #0,D1 move.l A0,A1 .10:cmpi.b #$1A,(A0) beq.s .20 bsr SIDEL move.l D1,-(SP) addi #10,D1 move.l A0,A2 move.l A0,A5 jsr SAUTLBL add.l A2,D1 sub.l A5,D1 moveq #39,D0 bra.s .13 .12:move.b #32,(A6)+ .13:subq #1,D1 dble D0,.12 move.l A2,A0 move.l A0,A1 .14:move.b (A0)+,(A6)+ bne.s .14 subq #1,A6 move.b #13,(A6)+ move.b #10,(A6)+ bsr VERA6 move.l (SP)+,D1 bra.s .10 .20:move.b #$1A,(A6)+ move.l A6,D3 move.l (SP)+,D2 sub.l D2,D3 movem.l (SP)+,A5/A6 rts ERRFILE:dc.b 0 FVERPRN:dc.b 0 TERPS:lea FILEBUF,A0 HR10:tst.b (A0)+ bne.s HR10 HR11:subq #2,A0 cmpi.b #32,(A0)+ beq.s HR11 move.b -(A0),D0 andi #$DF,D0 cmpi #"Z",D0 bne.s HR12 cmpi.b #".",-(A0) HR12:rts WRBLOK:lea TDWRBK,A0 bsr XPTET bsr VERBLK bsr WSRC1 move.l TPID,D3 move.l TPIC,D2 sub.l D2,D3 bsr S3E03C move.l TDHAUT,D2 moveq #1,D3 bsr S3E03D bset #0,FILETYP bra HR15 S3E204:lea TDWRJ,A0 bsr TSTTET move.l #"GMI.",D2 bsr S3DFFA bsr S3E075 bsr S3BE24 bsr S3E03C bsr S3E0AC trap #5;HOTB S3E340:lea TDKIL,A0 bsr TSTTET moveq #0,D2 bsr S3DFFA lea FILETYP,A0 clr.b (A0)+ move.l A0,-(SP) move #$41,-(A7) trap #1 addq.l #6,A7 tst D0 bne ERRFY trap #5;HOTB OLD:lea TDOLD,A0 bsr XPTET move.l TDBAS,A0 cmpi.b #$1A,(A0) bne.s S3E36E move.b #CARCOM,(A0)+ S3E36E:bsr.s RSEKA1 move.l TDLGN,TDMOD bra W3BB12 RSEKA1:bsr SINIT4 bsr.s S3E372 bsr XCONVR bra XCONVC S3E372:move.l TDBAS,A0;CONVERSION CR,LF EN " ",0 move.l TDHAUT,A1 move.b #$1A,(A1) S3E37E:cmpi.b #$1A,(A0)+ bhi.s S3E37E subq.l #1,A0 bne.s S3E3B2 tst.b -1(A0) beq.s S3E3AA cmpi.b #$19,-1(A0) beq.s S3E3AA clr.b (A0)+ move.b #$1A,(A0) S3E3AA:move.l A0,TDHAUT rts S3E3B2:move.b (A0)+,D0 beq.s S3E37E cmpi.b #13,D0 bne.s S3E37E cmpi.b #10,(A0) bne.s S3E3C6 move.b #32,-1(A0) clr.b (A0)+ bra.s S3E37E S3E3C6:clr.b -1(A0) bra.s S3E37E W3E3CF:lea TDEXM,A0 bsr XPTET bsr RSZAD W3E3CE:bsr DECSZAD move.l D0,D5 move.l D0,A5 move.l D0,A4 moveq #7,D6 I3E3E0:addq.l #8,D5 addq.l #8,D5 move.l A5,D0 bsr S3F398 I3E3EA:bsr S3E93A cmp.l D5,A5 bne.s I3E3EA I3E3F4:move.b (A4)+,D0 cmpi.b #$20,D0 bcc.s I3E40C I3E40A:moveq #$2E,D0 I3E40C:bsr X12B cmp.l D5,A4 bne.s I3E3F4 bsr X9 dbf D6,I3E3E0 move.l D5,T3FCB2 trap #5;HOTB EXCEP:moveq #8,D0 move.l D0,A0 lea TEXCEP,A1 EXCEP11:moveq #7,D1 EXCEP12:move.l (A0),(A1)+ move.l #ERRXX,(A0)+ dbra D1,EXCEP12 lea DEV405(PC),A1 lea $404.W,A0 move.l (A0),D0 move.l (A1),(A0) move.l D0,(A1) rts W3E802:lea TDCOP,A0 bsr TSTTET bsr S3BE24 lea U3F71F(PC),A0 bsr S3BE10 move.l D2,A0 move.l D0,A1 cmp.l D0,D2 bcs.s I3E82E I3E824:move.b (A0)+,(A1)+ subq.l #1,D3 bne.s I3E824 trap #5;HOTB I3E82E:add.l D3,A0 add.l D3,A1 I3E832:move.b -(A0),-(A1) subq.l #1,D3 bne.s I3E832 trap #5;HOTB W3E869:bsr X9 lea TDFIL,A0 bsr XPTET lea GEV97,A0 bsr RSZ W3E868:bsr DECSIZE lea TDFIL,A0 bsr TSTTET1 bsr S3BE24 lea U3F725(PC),A0 bsr S3BE10 move.l D2,A0 cmpi.b #2,T3FCEB beq.s I3E898 cmpi.b #4,T3FCEB beq.s I3E8A4 I3E88E:move.b D0,(A0)+ subq.l #1,D3 bne.s I3E88E trap #5;HOTB I3E898:asr.l D3 I3E89A:move D0,(A0)+ subq.l #1,D3 bne.s I3E89A trap #5;HOTB I3E8A4:asr.l #2,D3 I3E8A6:move.l D0,(A0)+ subq.l #1,D3 bne.s I3E8A6 trap #5;HOTB W3E8B1:lea TDMDM,A0 bsr XPTET bsr RSZAD W3E8B0:bsr DECSZAD move.l D0,D5 lea TDMDM,A0 bsr TSTTET1 move.l D5,A5 S3E8C8:move.l A5,T3FCB2 lea TDMDM,A0 bsr XN15 move.l A5,D0 bsr.s S3F398 bsr.s S3E8E6 bra.s S3E8C8 S3E8E6:bsr.s S3E93A bsr ZF3FA bsr S3BE14 move.l D0,D1 move.b T3FCEB(PC),D3 ext D3 moveq #"=",D0 bsr X12B subq.l #1,D3 I3E92A:move.b D1,-(A5) asr.l #8,D1 dbf D3,I3E92A bsr.s S3E93A clr D0 rts S3E93A:move.b T3FCEB(PC),D3 ext D3 subq #1,D3 I3E944:move.b (A5)+,D0 bsr.s S3F3C4 dbf D3,I3E944 bra XC S3F398:bsr.s S3F3B2 bra XC S3F3A0:bsr.s S3F3BA bra XC S3F3B2:swap D0 bsr.s S3F3BA S3F3B8:swap D0 S3F3BA:move D0,-(A7) lsr #8,D0 bsr.s S3F3C4 move (A7)+,D0 S3F3C4:move.b D0,-(A7) lsr.b #4,D0 bsr.s S3F3CE move.b (A7)+,D0 S3F3CE:andi.b #$F,D0 addi.b #$30,D0 cmpi.b #$39,D0 ble.s GEW23 addq.b #7,D0 GEW23:bra X12B ERRXX:moveq #57,D0 trap #15 GES10:bsr XDEBL moveq #7,D0 GES12:move.b (A5)+,D1 cmpi.b #32,D1 dbne D0,GES12 subq #1,A5 clr D2 GES14:move.b (A5)+,D1 move D1,D3 subi #"0",D1 cmpi.b #10,D1 bcs.s GES18 tst D2 beq.s GES19 lea TDPR,A0 cmp.b (A0)+,D3 beq.s GES16 cmp.b (A0)+,D3 bne.s GES19 GES16:moveq #8,D1 sub D0,D1 move D1,TCURSX bra XCURS0 GES18:moveq #1,D2 dbra D0,GES14 GES19:rts SETBREAK:move #$F21,D4 SETBREAK2=*-2 lea GETSHIFT_AD(PC),A0 move D4,(A0) move D4,GETSHIFT1-GETSHIFT_AD(A0) rts VEREXCEP:moveq #8,D0 move.l D0,A0 subq #1,D0 GEJ90:cmp.l #ERRXX,(A0)+ bne RER dbra D0,GEJ90 rts SAKKI:moveq #-1,D0 move.l D0,-(SP) move.l D0,-(SP) move.l D0,-(SP) move #$10,-(SP) trap #14 lea 14(SP),SP move.l D0,A0 move.l (A0),A0 lea GEU61(PC),A1 moveq #0,D0 moveq #$7F,D1 GEM10:move.b (A0,D1.L),D0 subi.b #$61,D0 cmpi.b #26,D0 bcc.s GEM12 move.b D1,(A1,D0.L) GEM12:dbra D1,GEM10 rts EXCHTRAP:lea .1(PC),A1 lea $8C.W,A0 move.l (A0),D0 move.l (A1),(A0)+;TRAP#3 move.l D0,(A1)+ move.l (A0),D0 move.l (A1),(A0)+;TRAP#4 move.l D0,(A1)+ move.l (A0),D0 move.l (A1),(A0)+;TRAP#5 move.l D0,(A1)+ lea $BC.W,A0 move.l (A0),D0 move.l (A1),(A0)+;TRAP#15 move.l D0,(A1)+ rts .1:dc.l HOT dc.l HD29A dc.l HD29A dc.l RER OO:move.l TPILE,SP bsr.s EXCHTRAP ori.b #8,$484.W ;* MOVE.B #14,$484.W lea X68000,A0 moveq #1,D0 .68030 ; PROCESSOR 1 move.b -2(A0,D0.L*2),D0 .68000 ; PROCESSOR FLAG30 move.b D0,(A0) bsr HIDEM move #4,-(SP) trap #14 move D0,RESOL move D0,RESOLB move.b D0,RESOLC lea COLRES+6,A3 bsr SETCOL4 move D0,D5 movem D3-D5,(A3) move D0,-(A3) subq #2,A3 move D3,-(A3) subq #2,A3 movem D3/D4,-(A3) bsr SETBREAK move.l TPILE,SP moveq #78,D3 clr AINTIN;OK bsr AESC bsr XDECN lea TD000,A0 clr TDEL move #NBLIGNE*NBCOL,D0 bsr DAMBL lea FILETYP,A0 clr.b (A0)+ clr.b (A0)+ move #-1,BINSTR bsr XCLRT1 jsr XESAV bsr SINIT1 bsr EXCEP clr TPRINT move.l TPILE,SP moveq #NBCANAUX,D0 lea CANAUX,A0 GA24:clr (A0)+ dbra D0,GA24 lea GEVNT,A0 moveq #GARBRN-GEVNT/2,D0 GAG85:clr (A0)+ dbra D0,GAG85 bsr INOMI bsr INITR bsr XCUROFF clr THLCLE bsr SAKKI pea DTA move #$1A,-(SP) trap #1 addq #6,SP bsr XREPDEF HOT: HD289:bsr VINIT0 HD29A:bsr X9 HOTB:bsr VDKEY bsr SAVER bsr DAMPR1 bsr PLMOD1 bsr DAMED move #$4E71,ESCAPE move #$4E71,PACK bsr MET70 bsr VEREXCEP andi #$2300,SR bsr CLOSERR clr.b FVERPRN clr.b TESCV move RESOL(PC),RESOL1 clr.b NIVEAU7 clr.l TFONS jsr YBREAK0 clr YTRACE clr.b TFRDG clr TFRUN move.l TPILE,SP move.b TBASET+3,TBASE+1 XBEND:lea BINSTR,A0 st (A0)+ tas (A0) bmi.s GEB45 lea GEB44,A5 jsr WSPBAS GEB45: move #"*"*256,TBUF bsr INSER bne.s HD290 bsr PLGNT2 HD290:bsr GET29 cmpi.b #"~",(A5) bne.s HD290A bsr X6 bra.s HD290 HD290A:lea TBUF,A0 cmp.l A5,A3 bne.s HD291 HD290B:bsr XN15 bra.s HD292 HD291:lea TCURSB,A2 move (A2)+,D1 lea T1173,A1 sub.b (A1,D1.W),D1 cmp (A2),D1 ble.s HD290B bsr XCLSL moveq #8,D0 bsr X12B bsr X15 bsr XCRCL bsr XDEBL bsr XCURS0 cmpi.b #"*",(A5) bne.s HD291A bsr XC HD291A:bsr GES10 bsr XCURS0 HD292:bsr CURSACTG lea GAR39,A4 bset #0,(A4) bne.s GAV32 clr -(SP) lea GAV30,A3 move.l A3,-(SP) move #$4E,-(SP) trap #1 addq #8,SP tst.l D0 bne.s GAV32 bset #1,(A4) lea FILEBUF,A0 GAV31:move.b (A3)+,(A0)+ bne.s GAV31 bra.s GAV36 GAV32:bset #7,(A4) bne GAP80 btst #1,(A4) beq.s GAV34 bsr SINIT5 GAV34:move.l BASEPAGE,A0 moveq #0,D0 lea $80(A0),A0 move.b (A0),D0 beq.s GAP80 cmpi #96,D0 bcc.s GAP80 clr.b (A0)+ clr.b (A0,D0.L) lea FILEBUF,A1 move.l A1,A2 GAP72:move.b (A0)+,(A1)+ bne.s GAP72 bsr GAP74 lea GEX13,A0 bsr.s GAR36 bne.s GAR42 move.l A2,A0 bsr GAR40 bra WHELP GAR42:lea GAR44,A0 bsr.s GAR36 beq.s GAR47 lea GAR45,A0 bsr.s GAR36 beq.s GAR47 GAV36:bsr GAP76 bra GAP78 GAR36:move.l A2,-(SP) move.l A0,A1 GAR360:move.l A2,A3 tst.b (A2)+ beq.s GAR370 move.l A1,A0 GAR37:move.b (A0)+,D0 beq.s GAR38 move.b (A3)+,D1 bclr #5,D1 cmp.b D1,D0 beq.s GAR37 bra.s GAR360 GAR370:moveq #1,D1 GAR38:move.l (SP)+,A2 rts GAR47:bsr LOADPC bsr GAR49 GAP80: bsr X3A bsr HIDECM bsr INSER bne.s HD31 bsr WDNIN HD31: GWD016:move.b (A6)+,D0 cmpi.b #32,D0 beq.s GWD016 cmpi.b #"*",D0 bne.s HD32 bsr XSED bra.s HD31 HD32:subq.l #1,A6 bsr WDNPT bne.s HD35 moveq #-8,D1 tst.l D0 beq RER4 cmp.l TDLGN,D0 bcc RER4 lea TDPR,A0 move (A0)+,D2 cmp.b (A0),D2 beq RER4 bsr XSPNT HD33:bsr WINSAW bne.s HD34 moveq #3,D0 trap #15 HD34:bsr XMISF bsr XRPL trap #4;HD29A HD35:bsr INSER bne.s HD36 bsr WINSAW beq.s HD36 bsr XMISF bsr XINS1A trap #4;HD29A HD36: GWD017:move.b (A6)+,D0 cmpi.b #32,D0 beq.s GWD017 tst.b D0 beq HD29A lea GEQ70,A1 lea GEQ68(PC),A0 bsr RELAD beq.s GEQ72 tst.b (A1) bne.s WIMMR lea HD43(PC),A0 bsr RELAD bne.s WIMMR GEQ72:jsr (A0) trap #4;HD29A WIMMR:jmp WIMM GEQ74:move.l A1,A0 GEQ75:move.b (A0)+,D0 beq.s GEQ76 cmp.b (A6)+,D0 beq.s GEQ75 bra.s HD37 GEQ76:tst.b (A6) bne.s HD37 clr.b (A1) rts GEQ68:dc.w $23 dc.w WNUMMH-*;# M ET ->EDIT dc.w $3D dc.w W3BB12-*;= MEMOIRE dc.w $B0 dc.w GEQ74-*;B EXPERT dc.w 0 HD43:dc.w $21 dc.w WDSEKA-*;! QUIT dc.w $2D dc.w WDXMIN-*;- EDITION dc.w $A90 dc.w S3DEF8-*;A APPEND SOURCE dc.w HD37-*;Z dc.w WC-*;E COMPARE dc.w WDXR-*;R REPETE BLOC dc.w WSL2-*;T CHERCHE2 dc.w WVERIF-*;Y VERIFY dc.w WDLS-*;U LIST dc.w HD37-*;— dc.w OLD-*;O dc.w WPRINT-*;P PRINT BLOC dc.w HD37-*;I dc.w $99E dc.w W3E3CE-*;Q QUERY dc.w WSL1-*;S CHERCHE1 dc.w WBIBCL-*;D L->S dc.w W3E868-*;F FILL dc.w WHVS-*;G H->S dc.w WSDVH-*;H S->H dc.w HD37-*;J dc.w S3E340-*;K KILL FILE dc.w WBIBON-*;L S->L dc.w WDXM-*;M MOVE BLOC dc.w $5AC dc.w S3E1D6-*;W WRITE SOURCE dc.w W3E802-*;X COPY MEMORY dc.w WSC-*;C CHANGE dc.w WVIEW1-*;V VIEW dc.w HD37-*;B dc.w W3E8B0-*;N MODIFY dc.w 0 HD37:moveq #34,D0 trap #15 WRUNP:lea TDRUNP,A0 bsr XPTET bsr RLIGNE WRUNR:jmp WRUN WDEBUGP:lea TDEBUG,A0 bsr XPTET bsr RLIGNE WGR:bsr X9 jmp WG WDEBUG0:moveq #0,D0 bsr X9 jmp HI100 ;* EDITEUR FIN SLNG0: move (A0),D0 bclr #13,D0 bne.s LGB018 bclr #14,D0 beq.s LGA018 moveq #2,D0 bra.s LGC018 LGA018:bclr #15,D0 addq #2,D0 bra.s LGC018 LGB018:bclr #14,D0 beq.s LGBA018 moveq #4,D0 bra.s LGBB018 LGBA018:bclr #15,D0 addq #4,D0 LGBB018:btst #6,-2(A0,D0.W) bne.s LGC018 add -2(A0,D0.W),D0 LGC018: rts SLNG01: move (A0),D1 bclr #13,D1 bne.s LGB019 bclr #14,D1 beq.s LGA019 moveq #2,D1 bra.s LGC019 LGA019:bclr #15,D1 addq #2,D1 bra.s LGC019 LGB019:bclr #14,D1 beq.s LGBA019 moveq #4,D1 bra.s LGBB019 LGBA019:bclr #15,D1 addq #4,D1 LGBB019:btst #6,-2(A0,D1.W) bne.s LGC019 add -2(A0,D1.W),D1 LGC019: rts SLNG1: move (A1),D1 bclr #13,D1 bne.s LGB020 bclr #14,D1 beq.s LGA020 moveq #2,D1 bra.s LGC020 LGA020:bclr #15,D1 addq #2,D1 bra.s LGC020 LGB020:bclr #14,D1 beq.s LGBA020 moveq #4,D1 bra.s LGBB020 LGBA020:bclr #15,D1 addq #4,D1 LGBB020:btst #6,-2(A1,D1.W) bne.s LGC020 add -2(A1,D1.W),D1 LGC020: rts SLNG12: move (A1),D2 bclr #13,D2 bne.s LGB021 bclr #14,D2 beq.s LGA021 moveq #2,D2 bra.s LGC021 LGA021:bclr #15,D2 addq #2,D2 bra.s LGC021 LGB021:bclr #14,D2 beq.s LGBA021 moveq #4,D2 bra.s LGBB021 LGBA021:bclr #15,D2 addq #4,D2 LGBB021:btst #6,-2(A1,D2.W) bne.s LGC021 add -2(A1,D2.W),D2 LGC021: rts SLNG2: move (A2),D2 bclr #13,D2 bne.s LGB022 bclr #14,D2 beq.s LGA022 moveq #2,D2 bra.s LGC022 LGA022:bclr #15,D2 addq #2,D2 bra.s LGC022 LGB022:bclr #14,D2 beq.s LGBA022 moveq #4,D2 bra.s LGBB022 LGBA022:bclr #15,D2 addq #4,D2 LGBB022:btst #6,-2(A2,D2.W) bne.s LGC022 add -2(A2,D2.W),D2 LGC022: rts SLNG20: move (A2),D0 bclr #13,D0 bne.s LGB023 bclr #14,D0 beq.s LGA023 moveq #2,D0 bra.s LGC023 LGA023:bclr #15,D0 addq #2,D0 bra.s LGC023 LGB023:bclr #14,D0 beq.s LGBA023 moveq #4,D0 bra.s LGBB023 LGBA023:bclr #15,D0 addq #4,D0 LGBB023:btst #6,-2(A2,D0.W) bne.s LGC023 add -2(A2,D0.W),D0 LGC023: rts SLNG30: move (A3),D0 bclr #13,D0 bne.s LGB024 bclr #14,D0 beq.s LGA024 moveq #2,D0 bra.s LGC024 LGA024:bclr #15,D0 addq #2,D0 bra.s LGC024 LGB024:bclr #14,D0 beq.s LGBA024 moveq #4,D0 bra.s LGBB024 LGBA024:bclr #15,D0 addq #4,D0 LGBB024:btst #6,-2(A3,D0.W) bne.s LGC024 add -2(A3,D0.W),D0 LGC024: rts SLNG31: move (A3),D1 bclr #13,D1 bne.s LGB025 bclr #14,D1 beq.s LGA025 moveq #2,D1 bra.s LGC025 LGA025:bclr #15,D1 addq #2,D1 bra.s LGC025 LGB025:bclr #14,D1 beq.s LGBA025 moveq #4,D1 bra.s LGBB025 LGBA025:bclr #15,D1 addq #4,D1 LGBB025:btst #6,-2(A3,D1.W) bne.s LGC025 add -2(A3,D1.W),D1 LGC025: rts SLNH20: move (A2),D0 bclr #14,D0 beq.s LGD026 moveq #2,D0 bra.s LGE026 LGD026:andi #$1FFF,D0 addq #2,D0 LGE026: rts SLNH0: move (A0),D0 bclr #14,D0 beq.s LGD027 moveq #2,D0 bra.s LGE027 LGD027:andi #$1FFF,D0 addq #2,D0 LGE027: rts SLNH1: move (A1),D1 bclr #14,D1 beq.s LGD028 moveq #2,D1 bra.s LGE028 LGD028:andi #$1FFF,D1 addq #2,D1 LGE028: rts SLNH10: move (A1),D0 bclr #14,D0 beq.s LGD029 moveq #2,D0 bra.s LGE029 LGD029:andi #$1FFF,D0 addq #2,D0 LGE029: rts NEXTA5:move.b (A5)+,D0 cmpi.b #32,D0 beq.s NEXTA5 move.l A5,TDECA5 rts XPOSEF:move (A0)+,(A6)+ XPOSE:bsr SLNG0 KA100:move.l A6,A2 move.l A2,A3 add D0,A3 bsr VERIFM3 move.l A2,A3 move.l A0,A4 asr D0 subq #1,D0 KA11:move (A4)+,(A3)+ dbra D0,KA11 rts XMINUSF:move (A0)+,(A6)+ XMINUS:bsr.s XPOSE cmpi #$4000,(A2) beq.s LGF030 bchg #7,(A2) LGF030: rts XABS:bsr.s XPOSE bclr #7,(A2) rts XPOSE1:bsr SLNH0 KA111:bsr.s KA100 andi #$5FFF,(A2) rts XEFFC:bsr SLNG20 KA110:move.l A2,A1 move.l A0,A2 asr D0 subq #1,D0 KA12:move (A1)+,(A0)+ dbra D0,KA12 move.l A0,A6 rts XEFFC1:bsr SLNH20 bra.s KA110 XADD1: move (A0)+,D0 move (A1)+,D1 andi #$5FFF,D0 andi #$5FFF,D1 bclr #14,D0 beq.s KA22 bclr #14,D1 beq.s KA15 add D1,D0 XPOSED0:move.l A6,A2 cmpi #$2000,D0 bcc.s KA14 XPOSED1:addq #2,A2 bsr VERIFM2 bset #14,D0 move D0,-(A2) rts KA14:addq #4,A2 bsr VERIFM2 move D0,-(A2) move #2,-(A2) rts KA15:exg D0,D1 move.l A1,A0 XPOSEDA:move.l A6,A2 move.l A2,A3 move D0,(A3)+ add D0,A3 bsr VERIFM3 add D0,A0 asr D0 subq #1,D0 move D0,D2 KA16:add -(A0),D1 movem D1/D1,-(A3) bcc.s KA21 moveq #1,D1 KA160:dbra D0,KA16 KA161:move.l A6,A0 move.l A0,A3 addq #2,A0 bsr VERIFM0 KA17:move -(A3),-(A0) dbra D2,KA17 move D1,(A3) cmpi #$1FFE,(A2) bcc.s ERRDP addi #2,(A2) rts ERRDP:moveq #4,D0 trap #15 KA20:move -(A0),-(A3) KA21:dbra D0,KA20 rts KA22:bclr #14,D1 bne.s XPOSEDA cmp D0,D1 ble.s KA23 exg D0,D1 exg A1,A0 KA23:move.l A6,A2 move.l A2,A3 move D0,(A3)+ add D0,A3 bsr VERIFM3 add D0,A0 add D1,A1 asr D0 asr D1 move D0,D2 sub D1,D0 subq #1,D2 subq #1,D1 KA24:move -(A0),D4 move -(A1),D3 addx D4,D3 move D3,-(A3) dbra D1,KA24 clr D1 addx D1,D1 bne.s KA160 bra.s KA21 XSUB1: move (A0)+,D0 move (A1)+,D1 andi #$5FFF,D0 andi #$5FFF,D1 bclr #14,D0 beq.s KA26 bclr #14,D1 beq.s KA25 move.l A6,A2 sub D1,D0 bcc XPOSED1 neg D0 bsr XPOSED1 bset #7,(A2) rts KA25:exg D0,D1 move.l A1,A0 bsr.s KA28 bset #7,(A2) rts KA26:bclr #14,D1 bne.s KA28 cmp D0,D1 blt KA45 bne.s KA27 move D0,D4 asr D4 subq #1,D4 move.l A0,A2 move.l A1,A3 KA260:cmpm (A2)+,(A3)+ bcs KA45 bne.s KA27 dbra D4,KA260 XPOSEZ:clr D0 bra XPOSED0 KA27:exg D0,D1 exg A1,A0 bsr KA45 bset #7,(A2) rts KA28:move.l A6,A2 move.l A2,A3 move D0,(A3)+ add D0,A3 bsr VERIFM3 add D0,A0 asr D0 subq #1,D0 move D0,D4 KA29:move -(A0),D3 sub D1,D3 movem D3/D3,-(A3) bcc.s KA310 moveq #1,D1 KA30:dbra D0,KA29 ERRFAT:andi #$2300,SR clr.l TFONS move.l TMNDES,A0 cmpi #$7F7F,(A0) bne.s PA91 clr (A0) PA91:moveq #15,D0 bra RERF KA310:subq #1,D0 bmi.s KA35 KA32:move -(A0),-(A3) dbra D0,KA32 rts KA35:tst (A3)+ beq.s KA41 tst D4 beq.s KA38 KA37:rts KA38:move 2(A2),D0 cmpi #$2000,D0 bcc.s KA37 KA39:move.l A2,A6 bset #14,D0 move D0,(A6)+ rts KA40:tst (A3)+ bne.s KA42 KA41:dbra D4,KA40 KA410:move.l A2,A6 move #$4000,(A6)+ rts KA42:subq #2,A3 move.l A2,A6 move D4,D0 addq #1,D0 add D0,D0 move D0,(A6)+ KA43:move (A3)+,(A6)+ dbra D4,KA43 cmpi #2,D0 beq.s KA38 rts KA45:move.l A6,A2 move.l A2,A3 move D0,(A3)+ add D0,A3 bsr VERIFM3 add D0,A0 add D1,A1 asr D0 asr D1 subq #1,D1 subq #1,D0 move D0,D4 sub D1,D0 KA46:move -(A0),D3 move -(A1),D2 subx D2,D3 move D3,-(A3) dbra D1,KA46 clr D1 addx D1,D1 bne KA30 bra KA310 XADDS1:btst #7,(A0) bne.s KA460 btst #7,(A1) beq XADD1 bra XSUB1 KA460:btst #7,(A1) beq.s KA47 bsr XADD1 bset #7,(A2) rts KA47:bsr XSUB1 cmpi #$4000,(A2) beq.s LGF033 bchg #7,(A2) LGF033: rts XCMP1: move (A0)+,D0 move (A1)+,D1 andi #$5FFF,D0 andi #$5FFF,D1 bclr #14,D0 beq.s KA51 bclr #14,D1 beq.s KA50 cmp D1,D0 rts KA50:cmpi #$7FFF,D1 rts KA51:bclr #14,D1 beq.s KA53 cmpi #0,D0 KA52:rts KA53:cmp D1,D0 bne.s KA52 asr D0 subq #1,D0 KA54:cmpm (A1)+,(A0)+ dbne D0,KA54 rts XMUL1: STbkslXMUL1: move (A0)+,D0 move (A1)+,D1 andi #$5FFF,D0 andi #$5FFF,D1 bclr #14,D0 beq.s KA64 bclr #14,D1 beq.s KA60 mulu D1,D0 XPOSEL:cmpi.l #$10000,D0 bcs XPOSED0 move.l A6,A2 addq #6,A2 bsr VERIFM2 move.l D0,-(A2) move #4,-(A2) rts KA60:exg D0,D1 move.l A1,A0 KA61:cmpi #1,D1 bcs XPOSEZ bne.s KA62 KA610:subq #2,A0 addq #2,D0 bra KA111 KA62:move.l A6,A2 move.l A2,A3 move D0,(A3)+ add D0,A3 bsr VERIFM3 add D0,A0 asr D0 subq #1,D0 move D0,D2 moveq #0,D4 KA63:move -(A0),D3 mulu D1,D3 add.l D3,D4 move D4,-(A3) clr D4 swap D4 dbra D0,KA63 move D4,D1 bne KA161 KA630:rts KA64:bclr #14,D1 bne.s KA61 move D0,D2 add D1,D2 subq #2,D2 cmpi #$2000,D2 bcc ERRDP lea (A0,D0.W),A2 lea (A1,D1.W),A3 move.l A2,D4 move.l A3,D3 KA641:tst -(A2) beq.s KA641 addq #2,A2 KA642:tst -(A3) beq.s KA642 addq #2,A3 sub.l A2,D4 sub.l A3,D3 sub D4,D0 sub D3,D1 add D4,D3 beq.s KA645 move D3,-(SP) sub D3,D2 bsr.s KA645 move (SP)+,D3 add D3,(A2) cmpi #$2000,(A2) bcc ERRDP move.l A6,A0 add D3,A6 bsr VERA6 asr D3 subq #1,D3 KA643:clr (A0)+ dbra D3,KA643 rts KA645:cmp D0,D1 ble.s KA65 exg D0,D1 exg A1,A0 KA65:move.l A6,A2 move.l A2,A3 move D2,(A3)+ add D2,A3 bsr VERIFM3 subq #2,D0 add D0,A0 add D1,A1 asr D0 asr D1 subq #1,D1 moveq #0,D6 clr D3 KA66:move D3,D4 KA660:clr D2 move.l A0,A4 move.l A1,A5 KA67:move -(A5),D5 mulu (A4)+,D5 add.l D5,D6 bcc.s KA68 addq #1,D2 KA68:dbra D4,KA67 move D6,-(A3) move D2,D6 swap D6 addq #1,D3 subq #2,A0 cmp D1,D3 ble.s KA66 move D1,D4 cmp D0,D3 ble.s KA660 subq #2,A1 addq #2,A0 move D0,D4 add D1,D4 sub D3,D4 bpl.s KA660 tst D6 beq KA630 move D0,D2 add D1,D2 move D6,D1 bra KA161 XMULS1:btst #7,(A0) bne.s KA690 btst #7,(A1) beq XMUL1 KA69:bsr XMUL1 cmpi #$4000,(A2) beq.s LGF036 bchg #7,(A2) LGF036: rts KA690:btst #7,(A1) bne XMUL1 bra.s KA69 XMULS2:btst #7,(A0) bne.s KA71 btst #7,(A1) beq XMUL2 KA70:bsr XMUL2 cmpi #$4000,(A2) beq.s LGF037 bchg #7,(A2) LGF037: rts KA71:btst #7,(A1) bne XMUL2 bra.s KA70 XDIV1: STbkslXDIV1:cmpi #$4000,(A1) beq ERRDV move.l A0,A4 move.l A1,A5 bsr XCMP1 move.l A4,A0 bcs KA92 beq KA93 move.l A5,A1 STbkslXDIV1A:move (A1)+,D1 andi #$5FFF,D1 bclr #14,D1 bne.s KA74 cmpi #2,D1 bne KA81 move (A1),D1 KA74:cmpi #1,D1 beq KA94 move (A0)+,D0 andi.l #$5FFF,D0 bclr #14,D0 bne.s KA76 cmpi #2,D0 bne.s KA77 move (A0)+,D0 KA76:divu D1,D0 swap D0 bsr XPOSED0 move.l A2,A3 swap D0 bra XPOSED0 KA77:move.l A6,A2 lea 4(A2),A3 move D0,(A3)+ move.l A3,A6 add D0,A6 bsr VERA6 move D0,D2 asr D2 subq #1,D2 moveq #0,D3 move (A0)+,D3 divu D1,D3 tst D3 bne.s KA79 subq #2,-2(A3) subq #2,A6 bra.s KA80 KA78:move (A0)+,D3 divu D1,D3 KA79:move D3,(A3)+ KA80:dbra D2,KA78 swap D3 move.l A2,A3 cmpi #$2000,D3 bcs.s KA800 move #2,(A2)+ move D3,(A2)+ bra.s KA801 KA800:bset #14,D3 move D3,(A2)+ move.l A2,A0 addq #2,A2 bsr XLB76R lea 2(A3),A2 KA801:cmpi #2,(A2) beq KA38 rts KA81:move (A1),D3 move (A0),D0 andi #$1FFF,D0 moveq #-1,D2 MH71:addq #1,D2 add D3,D3 bcc.s MH71 move.l A6,A3 move D1,D3 asr D1 addq #2,D3 swap D1 move D3,D1 movem.l D0-D2/A6,-(SP) move.l A5,A0 bsr XROT move.l A4,A0 bsr XROT move.l A2,A1 movem.l (SP),D0/D1 move (A2)+,D2 andi #$1FFF,D2 cmp D2,D0 bne.s MH72 clr -(A2) MH72:sub D1,D0 addq #2,D0 move D0,(SP) movem.l D0/A2/A6,-(SP) add D0,A6 bsr VERA6 sub D0,A6 clr (A3)+ move (A3),D6 move.l (A3),D5 MH73:moveq #-1,D4 cmp (A2),D6 beq.s MH74 move.l (A2),D4 divu D6,D4 move.l D4,D3 bra.s MH75 MH74:move.l (A2),D3 add D6,D3 bcs.s MH77 swap D3 MH75:move 4(A2),D3 move D5,D0 mulu D4,D0 sub.l D0,D3 bcc.s MH77 MH76:subq #1,D4 add.l D5,D3 bcc.s MH76 MH77:movem 16(SP),D2/D3 move.l A2,A3 add D3,A3 move.l A1,A0 moveq #0,D0 MH78:move -(A0),D1 mulu D4,D1 add.l D0,D1 move.l D1,D0 clr D0 swap D0 sub D1,-(A3) bcc.s MH79 addq.l #1,D0 MH79:dbra D2,MH78 tst.l D0 beq.s MH81 subq #1,D4 movem 16(SP),D2/D3 move.l A2,A3 add D3,A3 move.l A1,A0 MH80:addx -(A0),-(A3) dbra D2,MH80 MH81:move D4,(A6)+ move.l (SP)+,D0 subq #2,D0 bmi.s MH82 move.l D0,-(SP) addq #2,A2 bra.s MH73 MH82:move.l (SP)+,A1 move 6(SP),D1 asr D1 bsr.s XPOSEA1 move.l A2,A0 movem.l 12(SP),D2/A6 neg D2 bsr XROT move.l (SP)+,A1 move (SP)+,D1 asr D1 bsr.s XPOSEA1 lea 10(SP),SP move.l (SP)+,A3 rts KA92:bsr XPOSE1 move.l A2,A3 bra XPOSEZ KA93:bsr XPOSEZ move.l A2,A3 XPOSEUN:moveq #1,D0 bra XPOSED0 KA94:bsr XPOSEZ move.l A2,A5 bsr XPOSE1 move.l A5,A3 rts XPOSEA1:move (A1)+,D0 bne.s KB10 dbra D1,XPOSEA1 bra XPOSEZ KB10:tst D1 beq XPOSED0 move.l A6,A2 move D1,D2 addq #1,D2 add D2,D2 move D2,(A6)+ add D2,A6 bsr VERA6 lea 2(A2),A6 move D0,(A6)+ subq #1,D1 KB11:move (A1)+,(A6)+ dbra D1,KB11 rts XPGCD: STbkslXPGCD:move #$4000,D0 cmp (A1),D0 beq XPOSE1 exg A1,A0 cmp (A1),D0 beq XPOSE1 move.l A0,A4 move.l A1,A5 bsr XCMP1 move.l A4,A0 move.l A5,A1 beq XPOSE1 bcc.s KB12 exg A1,A0 KB12:move.l A6,-(SP) bsr XPOSE1 move.l A2,-(SP) move.l A1,A0 bsr XPOSE1 move.l A2,A1 move.l (SP)+,A0 KB13:btst #6,(A0) bne.s KB14 move.l A1,-(SP) move.l A0,A4 move.l A1,A5 bsr STbkslXDIV1A move.l A3,A6 move.l A2,A3 move.l (SP)+,A2 move.l (SP),A0 bsr XLB76R move.l A0,-(SP) move.l A3,A6 bsr XLB76R move.l (SP)+,A1 move.l (SP),A0 cmpi #$4000,(A1) bne.s KB13 move.l A1,A6 move.l (SP)+,A2 rts KB14:move (A0),D0 andi #$1FFF,D0 move (A1),D1 andi #$1FFF,D1 KB15:ext.l D0 divu D1,D0 swap D0 exg D0,D1 cmpi #1,D1 bgt.s KB15 bcs.s KB16 moveq #1,D0 KB16:move.l (SP)+,A6 bra XPOSED0 XPRTA1:move (A0),D0 cmpi #$4000,D0 bne.s MH34 MH33:move.l A6,A0 lea 1(A0),A1 move #$3000,(A6)+ rts MH34:move.l A6,-(SP) andi #$5FFF,D0 bclr #14,D0 beq.s MH38 moveq #2,D0 MH38:move TBASE,D1 lea 16(A6),A6 add D0,D0 add D0,A6 cmpi.b #16,D1 beq MH42 bcc.s MH39 add D0,A6 cmpi.b #10,D1 beq MH51 cmpi.b #4,D1 bcc.s MH39 add D0,D0 add D0,A6 MH39:bsr VERA6 move.l A6,A1 clr.b -(A1) movem.l A0/A1,-(SP) lea TBASE,A0 bsr XPOSE move.l (SP)+,A0 move.l A2,A1 bsr XPOSE move.l A2,A0 MH40:movem.l A0/A1,-(SP) bsr XDIV1 move.l (SP)+,A4 move.l (SP)+,A1 move.l (SP)+,A0 move (A3),D0 cmpi.b #10,D0 bcs.s MH400 addi #7,D0 MH400:addi #"0",D0 move.b D0,-(A0) move.l A0,-(SP) move.l A4,A0 bsr XLB76R move.l A4,A0 cmpi #$4000,(A0) bne.s MH40 movem.l (SP)+,A1/A2 move.l A2,A0 cmpi.b #$3A,(A1) bcs.s MH41 move.b #"0",-(A1) MH41:move.b (A1)+,(A2)+ bne.s MH41 MH410:lea -1(A2),A1 clr.b (A2)+ move.l A2,D0 bclr #0,D0 move.l D0,A6 rts MH42:bsr VERA6 move.l (SP),A6 moveq #$30,D4 moveq #9,D5 moveq #$F,D6 moveq #2,D1 move (A0)+,D0 andi #$5FFF,D0 bclr #14,D0 bne.s MH43 move D0,D1 move (A0)+,D0 MH43:moveq #3,D2 MH44:rol #4,D0 move D0,D3 and D6,D3 beq.s MH47 cmp D5,D3 ble.s MH46 move.b D4,(A6)+ addq #7,D3 MH46:add D4,D3 move.b D3,(A6)+ bra.s MH50 MH47:dbra D2,MH44 bra ERRFAT MH470:move (A0)+,D0 moveq #3,D2 MH48:rol #4,D0 move D0,D3 and D6,D3 cmp D5,D3 ble.s MH49 addq #7,D3 MH49:add D4,D3 move.b D3,(A6)+ MH50:dbra D2,MH48 subq #2,D1 bhi.s MH470 move.l (SP)+,A0 move.l A6,A2 clr.b (A2)+ bra.s MH410 MH51:bsr VERA6 move.l A6,A1 clr.b -(A1) movem.l A1/A6,-(SP) bsr XPOSE bra.s MH52 C10000:dc.w 2,10000 MH52:lea C10000(PC),A1 move.l 4(SP),A0 bsr XDIV1 move (A3)+,D0 bclr #14,D0 bne.s MH53 move (A3)+,D0 MH53:moveq #"0",D1 move.l (SP)+,A1 moveq #2,D2 MH54:ext.l D0 divu #10,D0 swap D0 add D1,D0 move.b D0,-(A1) swap D0 dbra D2,MH54 add D1,D0 move.b D0,-(A1) cmpi #$4000,(A2) beq.s MH55 move.l (SP),A0 bsr XLB76R move.l A1,-(SP) bra.s MH52 MH55:cmp.b (A1)+,D1 beq.s MH55 subq #1,A1 movem.l (SP)+,D0/A0 move.l A0,A2 bra MH41 XPRTA20:move (A0),D0 bclr #13,D0 beq XPRTA1 move.l A0,A1 bsr SLNH0 add D0,A1 move.l A1,-(SP) bsr XPRTA1 move.l A0,A2 move.l (SP)+,A0 movem.l A2/A6,-(SP) bsr XPRTA1 movem.l (SP)+,A0/A2 move.b #"/",-(A2) move.l A2,A1 tst.b -(A2) beq MH41 rts TFRMTY:dc.w 0 TILDEF:dc.w 1234 XPRTA2:clr TILDEF XPRTA2F:move TFRMTY(PC),D3 beq.s XPRTA20 cmpi #$4000,(A0) beq MH33 clr -(SP) bsr XPOSE bclr #7,(A2) tst D3 bpl KB234 move (SP)+,D0 XPRTA2E:move D0,-(SP) moveq #1,D0 sub.l TFRMTL,D0 move.l TFRMTM,D1 move.l D0,D2 divs D1,D0 swap D0 tst D0 bpl.s GIB44 add D1,D0 GIB44:add D2,(SP) sub D0,(SP) movem D1/D2,-(SP) bsr.s GIB50 bsr KB250 bcc.s KB231 KB230:move (SP),D0 sub D0,4(SP) bsr.s KB252A bsr KB250 bcs.s KB230 move (SP),D0 add D0,4(SP) bsr.s KB254A bra.s GIB45 GIB46:move D0,-(SP) bsr KB252 move (SP)+,D0 KB252A:dbra D0,GIB46 rts GIB48:move D0,-(SP) bsr KB254 move (SP)+,D0 KB254A:dbra D0,GIB48 rts GIB50:tst D0 bpl.s KB252A neg D0 bra.s KB254A KB231:move (SP),D0 add D0,4(SP) bsr.s KB254A bsr KB250 bcc.s KB231 GIB45:movem (SP)+,D0/D1 sub D0,(SP) sub D1,D0 bsr.s GIB50 KB232:move TFRMTY(PC),D3 neg D3 KB234:subq #1,D3 move D3,-(SP) bsr KB255 move.l A2,-(SP) bsr XDIV1 move.l (SP),A0 move.l A2,-(SP) move.l A2,A1 bsr XSUBS2 movem.l (SP)+,D0/A0 movem.l A0/A2/A6,-(SP) move.l A2,A6 move.l D0,A2 bsr XLB76R movem.l (SP)+,A1/A2/A6 movem.l A0/A1,-(SP) bsr XLB76R lea TBASE,A0 move 8(SP),D1 bsr XEXPD2 move.l A2,A0 move.l (SP),A1 bsr XDIVMUL move.l (SP),A0 bsr XLB76R move.l (SP)+,A0 move D4,-(SP) bsr XPRTA1 cmpi.b #"0",(A0) bne.s KB237 addq #1,A0 KB237:move.l A1,D0 sub.l A0,D0 sub D0,6(SP) move TILDEF(PC),D0 add D0,(SP) cmpi #$4000,(SP)+ beq.s KB238 tst TILDE bne.s KB238 move.b #"~",(A1)+ clr (A6)+ KB238:move.l A0,-(SP) move.l 4(SP),A0 move 8(SP),D0 bpl.s KB238A clr 8(SP) addq.l #1,(SP) lea TCONST1,A1 bsr XADD1 move.l A2,A0 KB238A:bsr XPRTA1 move.l A1,A6 move.b #".",(A6)+ move 8(SP),D0 bra.s KB241 KB240:move.b #"0",(A6)+ KB241:dbra D0,KB240 move.l (SP)+,A1 KB242:move.b (A1)+,(A6)+ bne.s KB242 move.l A0,A2 move 6(SP),D0 ext.l D0 KB242A:tst.l D0 beq.s KB245 subq #1,A6 tst.b -(A6) beq.s KB243 addq #1,A6 KB243:move.b #32,(A6)+ move.b #"E",(A6)+ move.b #"+",(A6)+ tst.l D0 bpl.s KB244 neg.l D0 addq.b #2,-1(A6) KB244:move.l A6,A0 bsr.s XPREXL move.l A0,A6 clr.b (A6)+ KB245:movem.l (SP)+,A0/A1 MH601:clr.b (A6) move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 move.l A0,A4 bsr XLB76R move.l A4,A0 rts KB250:bsr.s KB255 bra XCMP1 KB255:move.l A2,A0 lea TCONST1,A1 btst #5,(A0) beq.s KB256 move.l A0,A1 bsr SLNH0 add D0,A1 KB256:rts KB252:lea XMULS2(PC),A3 KB253:move.l A2,-(SP) move.l A2,A0 lea TBASE,A1 jsr (A3) move.l (SP),A0 bsr XLB76R move.l (SP)+,A2 rts KB254:lea XDIVS2(PC),A3 bra.s KB253 XPREXS:ext.l D0 XPREXLS:tst.l D0 bpl.s XPREXL move.b #"-",(A0)+ neg.l D0 bra.s XPREXL XPREX:ext.l D0 XPREXL:movem.l D0-D7/A1-A5,-(SP) move.l A0,-(SP) move.l A0,A6 move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 bsr XPOSEL move.l A2,A0 bsr XPRTA1 move.l A0,A2 move.l (SP)+,A0 KB257:move.b (A2)+,(A0)+ bne.s KB257 move.l A0,A6 subq #1,A0 clr.b (A6) move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 movem.l (SP)+,D0-D7/A1-A5 rts SIMF:lea TCONST1,A2 cmpi #$4000,(A0) beq.s KB28 cmpi #$4000,(A1) beq.s KB27 movem.l A0/A1,-(SP) bsr XPGCD cmpi #$4001,(A2) beq.s KB26 move.l (SP)+,A0 move.l A2,-(SP) move.l A2,A1 bsr XDIV1 move.l (SP)+,A1 move.l (SP)+,A0 move.l A1,-(SP) move.l A2,-(SP) bsr XDIV1 move.l A2,A1 movem.l (SP)+,A0/A2 rts KB26:movem.l (SP)+,A0/A1 rts KB27:exg A2,A0 rts KB28:cmpi #$4000,(A1) beq.s KB29 exg A2,A1 KB29:rts XMUL2:btst #5,(A0) beq KB34 btst #5,(A1) beq KB35 bsr SLNH0 bsr SLNH1 move.l A0,A2 add D0,A2 move.l A1,A3 add D1,A3 movem.l A1/A2/A6,-(SP) move.l A3,A1 bsr.s SIMF movem.l (SP)+,A3/A4 movem.l A0/A1,-(SP) move.l A3,A0 move.l A4,A1 bsr SIMF move.l (SP)+,A2 move.l A1,-(SP) move.l A2,A1 bsr XMUL1 movem.l (SP)+,A0/A1 move.l A2,-(SP) bsr XMUL1 move.l (SP)+,A0 move.l A2,A1 bra.s KB352 XPOSEFR:move.l A6,A2 bsr SLNH0 asr D0 subq #1,D0 KB31:move (A0)+,(A6)+ dbra D0,KB31 andi #$5FFF,(A2) move (A1),D1 andi #$5FFF,D1 cmpi #$4001,D1 beq.s KB33 bset #5,(A2) bsr SLNH10 asr D0 subq #1,D0 addq #2,A1 move D1,(A6)+ bra.s KB320 KB32:move (A1)+,(A6)+ KB320:dbra D0,KB32 KB33:rts KB34:btst #5,(A1) beq XMUL1 exg A1,A0 KB35:bsr SLNH0 movem.l A0/A6,-(SP) add D0,A0 bsr SIMF move.l (SP)+,A2 move.l A0,-(SP) move.l A2,A0 bsr XMUL1 move.l (SP)+,A1 move.l A2,A0 KB352:bsr.s XPOSEFR move.l (SP)+,A0 bra XEFFC XINVS2:move (A0),D6 btst #13,D6 beq.s KB38 bsr SLNH0 move.l A0,A1 add D0,A0 KB350:bsr.s XPOSEFR move.l A2,A0 btst #15,D6 beq.s KB37 bset #7,(A0) KB37:rts KB38:cmpi #$4000,(A0) beq ERRDV move.l A0,A1 lea TCONST1,A0 bra.s KB350 XDIVS2:movem.l A0/A6,-(SP) move.l A1,A0 bsr.s XINVS2 move.l (SP)+,A1 bsr XMULS2 move.l (SP)+,A0 bra XEFFC XADDS2:btst #5,(A0) beq KB40 btst #5,(A1) beq KB41 bsr SLNH0 bsr SLNH1 move.l A0,A2 add D0,A0 move.l A1,A3 add D1,A1 movem.l A1-A3/A6,-(SP) bsr SIMF move.l A0,A3 movem.l (SP)+,D0/A0 movem.l D0/A1-A3,-(SP) bsr XMULS1 movem.l 12(SP),A0/A1 move.l A2,-(SP) bsr XMULS1 move.l (SP)+,A0 move.l A2,A1 bsr XADDS1 movem.l (SP)+,D0/D1/A1/A3 addq #4,SP move (A2),D2 cmpi #$4000,D2 beq KL860 move.l A2,A0 movem.l D0-D2/A3,-(SP) bsr SIMF move (A2),D0 movem.l (SP)+,A2/A3 move.l A0,-(SP) cmpi #$4001,D0 beq.s KB39 move.l A3,A0 bsr XMUL1 KB39:move.l A2,A0 move.l 8(SP),A1 bsr XMUL1 move.l (SP)+,A0 move.l A2,A1 move.l (SP)+,D6 addq #4,SP bra.s KB42 KB40:btst #5,(A1) beq XADDS1 exg A1,A0 KB41:bsr SLNH0 move.l A0,A2 add D0,A0 movem.l A0/A6,-(SP) move.l A2,-(SP) bsr XMULS1 move.l (SP)+,A0 move.l A2,A1 bsr XADDS1 move.l A2,A0 move.l (SP)+,A1 move (A0),D6 KB42:bsr XPOSEFR btst #15,D6 beq.s KB43 cmpi #$4000,(A2) beq.s LGF041 bchg #7,(A2) LGF041: KB43:bra KL860 XSUBS2:move.l A6,-(SP) exg A1,A0 bsr XMINUS move.l A2,A0 bsr XADDS2 move.l (SP)+,A0 bra XEFFC XEXPD2:tst D1 beq XPOSEUN move (A0),D0 cmpi #$4001,D0 beq XPOSEUN cmpi #$4000,D0 bne.s KB68 tst D1 bpl XPOSEZ bra.s KB44 KB68:cmpi #$C001,D0 bne.s KB70 bsr XPOSEUN btst #0,D1 beq.s KB69 move #$C001,(A2) KB69:rts KB70:move D1,-(SP) ext.l D1 bpl.s KB52 neg.l D1 bra.s KB52 XEXPS2:move (A0),D0 move (A1),D1 cmpi #$4000,D1 beq XPOSEUN cmpi #$4001,D0 beq XPOSEUN cmpi #$4000,D0 bne.s KB46 btst #15,D1 beq XPOSEZ KB44:moveq #24,D0 trap #15 KB46:btst #13,D1 bne.s KB44 cmpi #$C001,D0 bne.s KB50 bsr SLNH1 bsr XPOSEUN btst #0,-1(A1,D1.W) beq.s KB49 move #$C001,(A2) KB49:rts KB50:move D1,-(SP) bclr #15,D1 ext.l D1 bclr #14,D1 bne.s KB52 cmpi #2,D1 bne.s KB44 move 2(A1),D1 KB52:bclr #5,(A0) beq.s KB572 movem.l D1/A0/A6,-(SP) bsr.s XEXPD2N movem.l (SP)+,D1/A0 bsr SLNH0 bset #5,(A0) add D0,A0 bsr.s XEXPD2N move.l (SP)+,A2 bset #5,(A2) KB570:move (SP)+,D0 bpl.s KB49 move.l A2,-(SP) move.l A2,A0 bsr XINVS2 move.l (SP)+,A0 bra XEFFC KB572:bsr.s XEXPD2N bra.s KB570 XEXPD2N:cmpi #1,D1 beq XPOSE move (A0),D0 bclr #14,D0 beq.s KB525 bclr #15,D0 moveq #11,D4 KB521:moveq #2,D3 asl D4,D3 cmp D0,D3 bne.s KB523 addq #1,D4 mulu D1,D4 cmpi.l #$8000,D4 bcc.s KB525 exg D1,D4 bsr XXP2N btst #0,D4 beq.s KB522 btst #15,(A0) beq.s KB522 bset #15,(A2) KB522:rts KB523:dbcs D4,KB521 KB525:bsr XPOSEUN move.l A2,A1 bsr XPOSE movem.l A1/A2,-(SP) KB53:asr.l D1 movem.l D1/D1,-(SP) move.l A2,A0 bcc.s KB55 bsr XMULS2 move.l A2,A1 move.l 8(SP),A0 bsr XPOSE move.l 4(SP),A0 move.l A2,A3 move.l A1,A2 bsr XEFFC tst.l (SP) beq.s KB57 move.l A3,A2 bsr XEFFC move.l A2,8(SP) move.l A2,A0 KB55:move.l A0,A1 bsr XMUL2 move.l 8(SP),A0 bsr XEFFC move.l (SP)+,D1 move.l (SP),A1 bra.s KB53 KB57:lea 12(SP),SP rts XDIVM2:lea TCONST1,A2 move.l A2,A3 btst #5,(A0) bne.s KB71 btst #5,(A1) beq XDIV1 bra.s KB72 KB71:bsr SLNH0 move.l A0,A2 add D0,A2 btst #5,(A1) beq.s KB73 KB72:bsr SLNH1 move.l A1,A3 add D1,A3 KB73:movem.l A0-A3/A6,-(SP) move.l A2,A0 move.l A3,A1 bsr SIMF move.l A0,-(SP) move.l 4(SP),A0 bsr XMUL1 move.l (SP),A0 move.l 8(SP),A1 move.l A2,-(SP) bsr XMUL1 move.l A2,A1 move.l (SP)+,A0 bsr XDIV1 move.l (SP)+,A0 move.l 12(SP),A1 movem.l A2/A3,-(SP) bsr XMUL1 move.l 4(SP),A0 move.l A2,A1 bsr XDIVS2 move.l (SP)+,A0 lea 20(SP),SP KB74:move.l A2,A1 bsr XPOSE move.l (SP),A6 move.l A2,A5 move.l A1,A0 bsr XPOSE move.l A5,A0 bsr XPOSE move.l (SP)+,A3 KB75:rts XDIVMS:clr.b FDIV movem.l A0/A1,-(SP) bsr XDIVM2 movem.l (SP)+,A0/A1 btst #7,(A1) beq.s KB76 cmpi #$4000,(A2) beq.s LGF042 bchg #7,(A2) LGF042: KB76:btst #7,(A0) beq.s KB75 cmpi #$4000,(A2) beq.s LGF043 bchg #7,(A2) LGF043: cmpi #$4000,(A3) beq.s KB75 st FDIV movem.l A2/A3,-(SP) move.l A1,A0 bsr XABS move.l A2,A0 move.l 4(SP),A1 bsr XSUBS2 move.l (SP)+,A0 bra.s KB74 XDIVMQ:bsr.s XDIVMS tst.b FDIV beq.s KB75 movem.l A2/A3,-(SP) move.l A2,A0 lea TCONSTM,A1 bsr XADDS1 move.l (SP),A0 bsr XLB76R movem.l (SP)+,A2/A3 rts WREEPC:jsr WREEP XCMPS:movem.l A0/A1/A5/A6,-(SP) bsr XSUBS2 move (A2),D0 bmi.s KB77 cmpi #$4000,D0 beq.s KB77 moveq #1,D0 KB77:movem.l (SP)+,A0/A1/A5/A6 rts SQRT1F:moveq #1,D0 bra.s GIB64 SQRT1:moveq #0,D0 GIB64:move D0,TSQRF move (A0)+,D0 andi #$5FFF,D0 bclr #14,D0 bne.s ISQ11 move D0,D1 move (A0),D0 cmpi #2,D1 beq.s ISQ11 cmpi #4,D1 bne.s ISQ13 move.l (A0)+,D0 ISQ11:bsr SQRS move D1,D0 bra XPOSED0 ISQ13:moveq #-1,D2 asr #2,D1 bcc.s ISQ14 moveq #7,D2 ISQ14:addq #1,D2 add D0,D0 bcs.s ISQ15 add D0,D0 bcc.s ISQ14 ISQ15:subq #2,A0 movem.l D2/D3/A6,-(SP) add D2,D2 bsr XROT andi #$7FFF,(A2) move (A2)+,(SP) move.l (A2),D0 bsr.s ISQ11 move.l A2,4(SP) ISQ17:move.l 4(SP),A2 move (A2),D0 move D0,D1 add D0,D0 move (SP),D2 clr -(SP) subq #4,D0 bne.s ISQ19 moveq #2,D0 ISQ19:add D0,D0 addq #4,D0 cmp D2,D0 bcs.s ISQ20 move D2,D0 move D0,(SP) ISQ20:move.l 10(SP),A0 move D0,(A0) asr D0 sub D1,D0 move D0,-(SP) move.l A2,A0 move.l A0,-(SP) move.l A6,A1 move #$4001,(A6)+ bsr XADD1 move.l (SP),A0 bsr XLB76R move.l (SP)+,A2 move (SP)+,D0 add D0,(A2) asr D0 subq #1,D0 ISQ22:clr (A6)+ dbra D0,ISQ22 ISQ24:movem.l 6(SP),A0/A1 exg A1,A0 bsr XDIV1 move (SP)+,D2 beq.s ISQ28 move.l A2,A0 move.l 4(SP),A1 moveq #1,D4 bsr XCMP1 bcs.s ISQ28 move.l A3,A6 bne.s ISQ26 cmpi #$4000,(A6) bne.s ISQ26 moveq #0,D4 ISQ26:movem.l (SP)+,D2/A0 move.l D4,-(SP) neg D2 bsr XROT move.l 4(SP),A0 bsr XLB76R movem.l (SP)+,D4/A2 rts ISQ28:move D2,-(SP) move.l A2,A1 move.l 6(SP),A0 bsr XADD1 move.l A2,A0 moveq #-1,D2 bsr XROT move.l 6(SP),A0 bsr XLB76R move (SP)+,D2 beq ISQ17 tst TSQRF bne.s ISQ26 move D2,-(SP) bra.s ISQ24 SQRS:move.l D0,D1 beq.s ISQ44 swap D1 tst D1 beq.s ISQ48 ori #16,SR bra.s ISQ41 ISQ40:add D2,D1 ISQ41:roxr D1 ISQ42:move.l D0,D2 divu D1,D2 bvs.s ISQ46 cmp D1,D2 bcs.s ISQ40 bne.s ISQ46 swap D2 tst D2 ISQ43:bne.s ISQ46 ISQ44:moveq #0,D4 rts ISQ46:moveq #1,D4 rts ISQ48:move #$100,D1 bra.s ISQ42 TSQRF:dc.w 0 SQRT2:btst #5,(A0) beq SQRT1 bsr SLNH0 move.l A0,A1 add D0,A1 move.l A1,-(SP) bsr SQRT1 move.l (SP)+,A0 movem.l D4/A2,-(SP) bsr SQRT1 move.l A2,A1 move.l 4(SP),A0 or D4,2(SP) bsr XDIVS2 movem.l (SP)+,D4/A0 move.l A0,A1 bsr XLB76R move.l A1,A2 rts XPF1:movem.l A0/A1/A6,-(SP) clr -(SP) bsr XPOSE bra.s KB96 KB95:move.l 10(SP),A0 bsr XLB76R addq #1,(SP) movem.l 6(SP),A1/A2 KB96:move.l A2,A0 bsr XDIV1 move (A3),D4 move.l A2,A0 move.l 6(SP),A1 bsr XCMP1 bcc.s KB960 st TXPF1 KB960:cmpi #$4000,D4 beq.s KB95 move.l A3,A6 move (SP)+,D0 movem.l (SP)+,A0/A1/A2 tst D0 rts TXPF1:dc.w 0 XPF2:cmpi #$4000,(A3) beq.s KB962 move.l A1,-(SP) move.l A3,A0 bsr XCMP1 move.l (SP)+,A1 bcs.s KB98 KB962:move.l A2,A0 movem.l A2-A5,-(SP) bsr.s XPF1 movem.l (SP)+,A0/A3-A5 beq.s KB97 move D0,-2(A1) bsr SLNG1 add D1,A1 move.l A1,D1 sub.l A4,D1 move.l D1,(A4) addq #1,4(A4) cmpi #$4001,(A0) beq.s KB98 move (A3),D1 bmi.s KB98 cmpi #$4000,D1 beq.s KB98 KB97:move.l A4,A0 add.l (A0),A0 addq #2,A0 move.l A5,D1 sub.l A0,D1 move.l A2,A1 sub.l D1,A1 move.l A5,A2 move.l A0,A5 bsr XLB76R move.l A1,A2 move.l A5,A1 tst TXPF1 rts KB98:moveq #1,D0 rts XPF3: STbkslXPF3:move.l A3,-(SP) move.l A6,A5 move.l #6,(A6)+ move #-1,(A6)+ addq #2,A6 move.l A6,A1 move #$4002,(A6)+ bsr XPOSE move.l A5,A4 clr TXPF1 move.l (SP)+,A3 move.l A6,A5 move #$4003,(A6)+ bsr XPF2 bne.s KL12 KL16:lea TINCR+2,A0 move.l #$3FD0503,(A0)+ move.l #$70A0B24,(A0)+ KL166:movem.l A1-A4/A6,-(SP) lea TINCR+2,A0 bsr.s KL167 bsr XADD1 movem.l (SP)+,A1-A5 bsr XPF2 beq.s KL166 KL12:cmpi #$4001,(A2) beq.s KL14 move.l A4,A0 addq #1,4(A0) add.l (A0),A0 move #1,(A0)+ bsr XLB76R move.l A6,D0 sub.l A4,D0 move.l D0,(A4) KL14:move.l A4,A2 add.l (A4),A4 move.l A4,A6 rts KL167:move #$4000,D0 KL161:addq #2,D0 move.l A0,A2 move D0,D1 KL165:move.b (A2)+,D2 beq.s KL164 move.b (A2),D3 addq.b #2,D3 bmi.s KL163 bne.s KL162 clr D1 KL162:sub.b D2,D3 KL163:move.b D3,(A2)+ bra.s KL165 KL164:tst D1 beq.s KL161 move D0,-(A0) rts XRO1:move (A0),D0 cmpi #$4000,D0 beq.s KL18 bclr #15,D0 cmpi #$4001,D0 bne.s KL20 KL18:move.l A6,A2 move D0,(A6)+ clr D4 rts KL20:movem.l D3/A0,-(SP) cmpi #2,D3 bne.s KL26 bsr SQRT1 movem.l (SP)+,D3/A0 rts KL26:bsr XBNB divu D3,D1 move D1,(SP) bsr XXP2N move (SP),D1 movem.l A2/A6,-(SP) KL28:movem.l (SP),A0/A1 move D1,-(SP) KL30:subq #1,A1 subq #8,D1 bpl.s KL30 addq #8,D1 bset D1,(A1) movem.l D1/A1,-(SP) move 20(SP),D1 bsr XEXPD2 move.l A2,A1 move.l 22(SP),A0 move.l A2,A6 bsr XCMP1 movem.l (SP)+,D1/A1 beq.s KL34 bcc.s KL32 bclr D1,(A1) KL32:move (SP)+,D1 dbra D1,KL28 moveq #1,D4 KL33:movem.l (SP)+,A2/A3 movem.l (SP)+,D3/A0 rts KL34:clr D4 addq #2,SP bra.s KL33 XRO2A:btst #5,(A0) beq XRO1 bsr SLNH0 move.l A0,A1 add D0,A1 move.l A1,-(SP) bsr XRO1 move.l (SP)+,A1 movem.l D4/A0/A2,-(SP) move.l A1,A0 bsr XRO1 movem.l (SP)+,D0/A1 or D0,D4 bne.s KL36 move.l A2,A1 move.l (SP),A0 bsr XDIVS2 clr D4 KL35:move.l (SP),A0 bsr XLB76R move.l (SP)+,A2 rts KL36:exg A1,A0 move.l (SP)+,A6 bsr XDIV1 move.l A3,-(SP) move.l A2,A0 bsr XRO1 moveq #1,D4 bra.s KL35 XRO2:btst #7,(A0) beq.s XRO2A btst #0,D3 beq.s KL40 bsr.s XRO2A tst D4 bne.s KL38 cmpi #$4000,(A2) beq.s LGF044 bchg #7,(A2) LGF044: KL38:rts KL40:move.l A6,A2 move #$C001,(A6)+ moveq #1,D4 rts XBNB:move (A0),D0 andi #$5FFF,D0 moveq #0,D1 cmpi #$4000,D0 beq.s KL46 bclr #14,D0 beq.s KL42 moveq #16,D1 bra.s KL44 KL42:move D0,D1 asl.l #3,D1 move 2(A0),D0 KL44:subq #1,D1 roxl D0 bcc.s KL44 KL46:rts XAFR1:movem.l A0/A1,-(SP) move.l A6,-(SP) move #$4000,(A6)+ move.l A6,-(SP) move #$4001,(A6)+ move.l A6,-(SP) move #$4001,(A6)+ move.l A6,-(SP) move #$4000,(A6)+ bsr XPOSE move.l A2,-(SP) KL50:move.l (SP),A2 bsr KB255 bsr XDIV1 movem.l A2/A3,-(SP) move.l A2,A0 move.l 16(SP),A1 bsr XMUL1 move.l A2,A0 move.l 24(SP),A1 move.l A2,-(SP) bsr XADD1 move.l (SP),A0 bsr XLB76R move.l 4(SP),A0 move.l 16(SP),A1 bsr XMUL1 move.l A2,A0 move.l 24(SP),A1 move.l A2,-(SP) bsr XADD1 movem.l (SP),A0/A1 move.l A0,A3 bsr XLB76R cmpi #$4001,(A3) beq.s KL52 bset #5,(A1) KL52:move.l 36(SP),A0 bsr XSUBS2 bclr #7,(A2) move.l 40(SP),A0 move.l A2,A1 bsr XCMPS bmi.s KL54 addq #4,SP move.l (SP)+,A0 lea 24(SP),SP move.l (SP)+,A6 bsr XPOSE movem.l (SP)+,A0/A1 rts KL54:move.l A1,A6 move.l 8(SP),A1 move.l 16(SP),A0 move.l A6,-(SP) bsr XSUBS2 move.l A2,A0 bsr XINVS2 move.l (SP)+,A0 move.l A0,A1 bsr XLB76R movem.l A1/A6,8(SP) move.l 32(SP),A0 movem.l 20(SP),A1/A2 move.l A1,A6 bsr XLB76R move.l A0,28(SP) move.l A1,A2 move.l 16(SP),A6 bsr XLB76R move.l A0,24(SP) movem.l (SP)+,A1/A2 move.l A1,A6 bsr XLB76R move.l A0,12(SP) move.l A1,A2 move.l (SP),A6 bsr XLB76R movem.l (SP)+,A2/A6 move.l A0,(SP) bsr XLB76R bra KL50 XXP2N:move.l A6,-(SP) tst D1 bpl.s KL56 move #$6001,(A6)+ neg D1 KL56:move #$4000,D0 clr D2 cmpi #13,D1 bcs.s KL60 move D1,D2 lsr #4,D2 addq #1,D2 add D2,D2 move D2,(A6)+ subq #2,D2 clr D0 andi #$F,D1 KL60:bset D1,D0 move D0,(A6)+ move.l A6,A2 add D2,A6 bsr VERA6 bra.s KL63 KL62:clr (A2)+ KL63:subq #2,D2 bpl.s KL62 move.l (SP)+,A2 rts XAFR:btst #5,(A0) beq XPOSE move D3,D1 neg D1 bsr.s XXP2N move.l A2,A1 move (A0),-(SP) bclr #7,(A0) bsr XAFR1 move (SP)+,D0 move D0,(A0) cmpi #$4000,(A2) beq.s KL64 andi #$8000,D0 or D0,(A2) KL64:move.l A1,A0 bsr XLB76R move.l A1,A2 rts XROT:move.l A6,A2 cmpi #$4000,(A0) beq.s KL65 bsr XBNB move.l D1,D0 ext.l D2 add.l D2,D0 swap D0 tst D0 bgt ERRDP beq.s KL66 KL65:move #$4000,(A6)+ move (A0),D4 rts KL66:move D2,-(SP) swap D0 neg D2 andi #$F,D2 move (A0)+,D4 move D4,(A6) andi #$8000,(A6) andi #$5FFF,D4 bclr #14,D4 bne.s KL67 move (A0)+,D4 KL67:bset #6,(A6) clr D5 cmpi #13,D0 bcs.s KL68 move D0,D5 lsr #4,D5 addq #1,D5 add D5,D5 bclr #6,(A6) or D5,(A6)+ subq #2,D5 clr (A6) KL68:move D4,D0 andi #$FFEF,SR roxr.l D2,D0 tst D0 bne.s KL70 KL680:swap D4 clr D4 subi.l #16,D1 bmi.s KL69 move (A0)+,D4 KL69:move.l D4,D0 roxr.l D2,D0 KL70:or D0,(A6)+ clr (A6) bsr VERA6 subq #2,D5 bpl.s KL680 move (SP)+,D2 rts XFLO:move TPREC1,D3 XINTE:cmpi #$4000,(A0) beq.s KL73 move.l A0,A2 bsr KB255 exg A1,A0 bsr XBNB move.l D1,D2 add D3,D2 exg A1,A0 bsr XBNB sub.l D1,D2 cmpi.l #$7FFD,D2 bgt ERRRG2 cmpi.l #-$8000,D2; avant #$-$8000 blt ERRRG2 addq #2,D2 bset #0,D2 bsr XROT movem.l D2/A1/A2,-(SP) move.l A2,A0 bsr XDIV1 move.l A2,A0 bsr.s XARON move.l A2,A0 KL72:movem.l (SP)+,D2/A1/A2 move (A2),D0 andi #$8000,D0 or D0,(A0) subq #1,D2 move D2,(A2)+ move.l A2,A6 bsr XPOSE subq #2,A2 rts KL73:move.l A6,A2 move.l #$4000,(A6)+ rts XARON:moveq #-1,D2 bsr XROT btst #0,D4 beq.s KL74 move.l A2,A0 move.l A0,-(SP) lea TCONST1,A1 bsr XADD1 move.l (SP),A0 move (A0),D2 bsr XLB76 move.l (SP)+,A2 cmpi #$4000,(A2) beq.s KL74 andi #$8000,D2 or D2,(A2) KL74:rts XROR:move.l A2,-(SP) neg D2 addq #1,D2 move.l A2,A0 bsr XROT move.l A2,A0 bsr.s XARON move.l (SP),A0 bsr XLB76 move.l (SP)+,A2 rts XDIVMUL:move.l A0,-(SP) move.l A1,A2 bsr KB255 move.l (SP)+,D0 move.l A1,-(SP) move.l D0,A1 bsr XMUL1 move.l A2,A0 move.l (SP)+,A1 XDIVAR:moveq #1,D2 move (A1),D1 move (A0),D0 eor D1,D0 move D0,-(SP) bsr XROT move.l A2,A0 move.l A0,-(SP) bsr XDIV1 moveq #1,D0 and -2(A6),D0 add (A3),D0 move D0,-(SP) move.l A2,A0 bsr XARON move (SP)+,D4 move.l (SP),A0 bsr XLB76 move.l (SP)+,A2 move (SP)+,D0 bpl.s KL75 cmpi #$4000,(A2) beq.s KL75 bset #7,(A2) KL75:rts XSERIE:movem.l A0/A3/A6,-(SP) move (A0)+,D1 bsr XXP2N move.l A6,-(SP) move.l A0,A2 clr.l -(SP) bra.s KL78 KL76:movem.l (SP),D0/A0/A1 addq #2,A1 bsr XMULS1 movem.l (SP),D3/A1/A3 move (A3),D2 bsr XROR KL78:addq.l #1,(SP) cmpi #$4000,(A2) beq.s KL81 movem.l (SP),D0/A0/A1/A3 move.l A2,-(SP) jsr (A3) move.l A2,A1 move.l (SP),A0 bsr.s XDIVAR cmpi #$4000,(A2) beq.s KL80 movem.l 16(SP),D0/A1 cmpi.l #XSER3E,D0 blt.s KL79 move.l A2,(SP) KL79:move.l A2,A0 bsr XADDS1 move.l (SP)+,A0 move.l A2,-(SP) bsr XPOSE move.l (SP)+,A1 move.l 16(SP),A0 movem.l A2/A6,-(SP) move.l A2,A6 move.l A1,A2 bsr XLB76 movem.l (SP)+,A2/A6 move.l A0,4(SP) bsr XLB76 bra.s KL76 KL80:addq #4,SP KL81:movem.l (SP)+,D3/A6 movem.l (SP)+,A0/A1/A2 rts XSER3T:add D0,D0 XSER3L:addq #1,D0 bra XPOSED0 XSER3E:bra XPOSED0 XSER3S:add D0,D0 move D0,D1 addq #1,D1 mulu D1,D0 bra XPOSEL XAEXP:cmpi #$4000,(A0) beq XPOSEUN bclr #7,(A0) beq.s KL816 lea TEXPM(PC),A1 bsr XCMPS bpl.s KL815 move.l A0,-(SP) bsr.s KL82 move.l (SP)+,A0 bset #7,(A0) move.l A2,-(SP) move.l A2,A0 bsr XINVS2 bra KL860 TEXPM:dc.w 2,$ADD5 KL815:bset #7,(A0) bra XPOSEZ KL816:lea TEXPM(PC),A1 bsr XCMPS bpl ERRRG2 KL82:move TPREC1,D3 bsr XINTE move.l A2,-(SP) move TPREC1,D3 add TPREC2,D3 sub (A2),D3 bpl.s KL83 clr D3 KL83:add D3,(A2) move (A2),-(SP) move D3,-(SP) move.l A2,A0 lea XSER3E(PC),A3 bsr XSERIE bra.s KL85 KL84:move D3,-(SP) move.l A2,A0 move.l A2,A1 move.l A2,-(SP) bsr XMULS1 movem.l (SP),D0/D2 bsr XROR move.l (SP),A0 bsr XLB76 move.l (SP)+,A2 KL85:move (SP)+,D3 dbra D3,KL84 move.l A2,A0 bsr XBNB move D1,D0 move (SP)+,D1 move D1,D3 add TPREC1,D3 sub D3,D0 bcc.s KL850 bsr XXP2N move.l A2,A1 bsr XDIVS2 bra.s KL860 KL850:move D1,D2 bsr XROR bra.s KL860 XAORD:move.l A2,A0 move (A0)+,D3 bsr XBNB move D1,D0 exg D1,D3 sub D1,D3 add TPREC2,D3 bpl.s KL86 clr D3 KL86:rts XALOG:cmpi #$4001,(A0) beq XPOSEZ move.l A0,A2 bsr KB255 bsr XCMP1 bcc.s KL87 move.l A2,A0 bsr XINVS2 move.l A2,-(SP) bsr.s KL87 bset #7,(A2) KL860:move.l (SP),A0 bsr XLB76 move.l (SP)+,A2 rts KL87:move.l A2,A0 lea TCONST1,A1 bsr XSUBS2 move TPREC1,D3 clr.l -(SP) move.l A2,-(SP) move.l A2,A0 bsr XINTE move.l (SP),A0 KL88:bsr XLB76 move.l (SP),A2 bsr.s XAORD beq.s KL89 addq #1,6(SP) move TPREC1,D2 add D2,D2 sub D0,D2 addq #1,D2 bclr #0,D2 andi #1,D1 add D1,D2 bsr XROT move.l (SP),A0 add (A0),D2 move D2,-(SP) move D2,D1 move.l A2,A0 bsr XXP2N move.l A2,A1 bsr XADDS1 move.l A2,A0 bsr SQRT1F move.l A2,A0 move (SP),D1 asr D1 bsr XXP2N move.l A2,A1 bset #7,(A1) bsr XADDS1 move (SP)+,D1 asr D1 move.l (SP),A0 move D1,(A0)+ bra.s KL88 KL89:bset #7,(A0) subq #2,A0 lea XSER3L(PC),A3 bsr XSERIE move.l (SP),A0 addq #2,A0 bclr #7,(A0) move.l A2,A1 bsr XMULS1 move.l (SP),A0 move (A0),D2 KL90:bsr XROR move.l A2,A1 KL91:move.l (SP)+,A0 move.l (SP)+,D1 move.l A0,-(SP) sub (A0),D1 bsr XXP2N move.l A2,A0 bsr XMULS2 bra KL860 XARCTG:cmpi #$4000,(A0) beq XPOSEZ bclr #7,(A0) beq.s KL92 move.l A0,-(SP) bsr.s KL92 move.l (SP)+,A0 bset #7,(A0) bset #7,(A2) rts KL92:clr.l -(SP) move TPREC1,D3 bsr XINTE move.l A2,-(SP) KL93:move.l (SP),A2 bsr XAORD beq.s KL94 addq #1,6(SP) move.l A0,A1 bsr XMUL1 move.l A2,A0 bsr XBNB move TPREC1,D2 asl #2,D2 sub D1,D2 addq #1,D2 bclr #0,D2 bsr XROT move.l (SP),A0 move (A0),D1 add D1,D1 add D2,D1 move D1,4(SP) move.l A2,A0 bsr XXP2N move.l A2,A1 bsr XADD1 move.l A2,A0 bsr SQRT1F move 4(SP),D1 asr D1 move.l A2,A0 bsr XXP2N move.l A2,A1 bset #7,(A1) bsr XADDS1 move.l A2,A0 move.l (SP),A1 addq #2,A1 bsr XDIV1 move.l (SP),A0 move 4(SP),D1 asr D1 sub (A0),D1 move D1,(A0)+ bsr XLB76 bra.s KL93 KL94:move.l A0,A1 addq #2,A6 bsr XMUL1 move.l A2,A0 bsr XBNB move TPREC1,D2 sub D1,D2 neg D2 move.l (SP),A1 move (A1),D1 add D1,D1 sub D2,D1 move D1,4(SP) move D1,-(A0) bsr XROR lea -2(A2),A0 bset #7,(A2) lea XSER3T(PC),A3 bsr XSERIE move.l A2,A1 move.l (SP),A0 addq #2,A0 bsr XMUL1 move 4(SP),D2 bra KL90 XASIN:cmpi #$4000,(A0) beq XPOSEZ move TPREC1,D3 bsr XINTE bsr XAORD move.l D3,-(SP) add D3,(A2) move.l A2,-(SP) move (A2),D0 add D0,D0 sub TPREC1,D0 move.l A0,A1 move D0,(A6)+ move D0,4(SP) bsr XMUL1 move TPREC1,D2 bsr XROR lea -2(A2),A0 bset #7,(A2) lea XSER3S(PC),A3 bsr XSERIE move.l A2,A1 move.l (SP),A0 addq #2,A0 bsr XMUL1 move 4(SP),D2 bsr XROR bra.s KL990 KL99:move.l (SP),A0 move (A0)+,D0 movem D0/D3,4(SP) move.l A0,A1 bsr XMUL1 move.l A2,A0 bset #7,(A0) move 4(SP),D1 add D1,D1 bsr XXP2N move.l A2,A1 bsr XADDS1 move.l A2,A0 bsr SQRT1F move.l (SP),A0 addq #2,A0 move.l A2,A1 bsr XMUL1 move.l A2,A0 bsr XBNB sub TPREC1,D1 move D1,D2 subq #1,D2 move.l (SP),A0 move (A0),D0 add D0,D0 sub D1,D0 move D0,(A0) bsr XROR KL990:move 6(SP),D3 move.l (SP),A0 addq #2,A0 move.l A0,A1 bsr XLB76 dbra D3,KL99 bra KL91 XSGN:cmpi #$4000,(A0) beq XPOSEZ bsr XPOSEUN btst #7,(A0) beq.s KM12 bset #7,(A2) KM12:rts XINTLG:move (A0),D0 bmi ERRRG2 cmpi #$4000,D0 beq ERRRG2 XINTLGA:move.l A0,A2 bsr KB255 movem.l A0/A1/A6,-(SP) bsr XCMP1 movem.l (SP)+,A0/A1 bcs.s GEC45 bsr XDIV1 move.l A2,A0 bsr XBNB bra.s GEC47 GEC45:exg A1,A0 bsr XDIV1 move.l A2,A0 cmpi #$4000,(A3) beq.s GEC46 lea TCONST1,A1 bsr XADD1 move.l A2,A0 GEC46:bsr XBNB neg.l D1 GEC47:move.l (SP)+,A6 move.l D1,D0 bra LA88 XVALN:tst D3 beq XPOSEZ tst (A0) smi D0 ext D0 ext.l D0 cmpi #4,D3 bhi.s GED26 subq #1,D3 GED24:asl.l #8,D0 move.b (A0)+,D0 dbra D3,GED24 bra LA88 GED26:movem.l D0/D3/A6,-(SP) move.l A6,A1 addq #1,D3 move D3,(A6)+ add D3,A6 bsr VERA6 sub D3,A6 subq #2,D3 btst #0,D3 beq.s GEE66 addq #1,(A1) clr.b (A6)+ GEE66:move.b #1,(A6)+ GEE67:move.b (A0)+,(A6)+ dbra D3,GEE67 movem.l (SP)+,D0/D1 asl #3,D1 sub D0,D1 bsr XXP2N move.l A2,A0 exg A1,A0 bsr XSUB1 move.l (SP),A0 bsr XLB76 move.l (SP)+,A2 rts XINTE2:move TPREC1,D2 move (A0)+,-(SP) addi #16,D2 bsr.s GIB30 move (SP)+,D0 add D0,(A2) rts XPOSF1:lea TCONST1,A0 XINTE1:move TPREC1,D2 GIB30:cmpi #$4000,(A0) beq KL73 bsr XBNB ext.l D2 sub.l D1,D2 cmpi.l #$7FFD,D2 bgt.s ERRRG2 cmpi.l #-$8000,D2; avant #$-$8000 blt.s ERRRG2 addq #2,A6 bsr XROT move D2,-(A2) rts ERRRG2:moveq #50,D0;=ERRRG trap #15 FTPOL1:move.l A0,-(SP) bsr FTPOL move.l A2,A0 move.l (SP)+,A1 bra.s XFLMUL XFLMULQ:move.l A0,A1 XFLMUL: STbkslXFLMUL:move (A0)+,D0 move (A1)+,A2 move #$4000,D1 cmp (A0),D1 beq KL73 cmp (A1),D1 beq KL73 ext.l D0 add.l A2,D0 movem.l D0/A6,-(SP) bsr XMULS1 move.l A2,A0 bsr.s XINTE1 movem.l (SP)+,D0/A0 move (A2)+,A1 add.l A1,D0 move D0,A1 cmp.l A1,D0 beq.s KM20 tst.l D0 bmi.s ERRRG2 move.l A0,A6 bra KL73 KM20:move.l A0,A1 move D0,(A0)+ bsr XLB76 move.l A1,A2 rts XUNFL:move (A0)+,D2 cmpi #$4000,(A0) beq XPOSEZ bsr SLNH0 lea (A0,D0.W),A1 moveq #-16,D0 moveq #16,D3 GIB52:add.l D3,D0 move -(A1),D1 beq.s GIB52 GIB54:addq.l #1,D0 asr D1 bcc.s GIB54 subq.l #1,D0 ext.l D2 cmp.l D2,D0 blt.s GIB56 neg D2 bra XROT GIB56:sub.l D0,D2 movem.l D2/A6,-(SP) neg D0 move D0,D2 bsr XROT tst (SP)+ bne ERRDP move (SP)+,D1 bmi ERRDP bsr XXP2N move.l (SP)+,A2 bset #5,(A2) rts XFLINV:move.l A6,-(SP) move (A0)+,D2 bsr XBNB add TPREC1,D1 bmi ERRRG2 sub D1,D2 bvs ERRRG2 neg D2 move D2,-(SP) bsr XXP2N move.l A2,A1 exg A1,A0 move (A1),-(SP) bsr XDIV1 move (SP)+,D0 bpl.s ML84 cmpi #$4000,(A2) beq.s LGF046 bchg #7,(A2) LGF046: ML84:move (SP)+,-(A2) bra KL860 XFLDIV:;CPVPRG2 XFLDIV TTbkslXFLDIV: STbkslXFLDIV:movem.l A0/A6,-(SP) move.l A1,A0 bsr.s XFLINV move.l (SP)+,A0 move.l A2,A1 bsr XFLMUL bra KL860 XFLSUB: STbkslXFLSUB:move.l A1,-(SP) exg A1,A0 bsr.s XFLCHS bsr.s XFLADD move.l (SP)+,A0 XFLCHS:move.l (A0),D0 cmpi #$4000,D0 beq.s KM22 eori #$8000,D0 move.l D0,(A0) KM22:rts XFLADD: STbkslXFLADD:move #$4000,D0 cmp 2(A1),D0 beq.s KM25 cmp 2(A0),D0 bne.s KM26 KM24:move.l A1,A0 KM25:bsr XPOSEF subq #2,A2 rts KM26:move (A1),D2 ext.l D2 move (A0),A2 sub.l A2,D2 bmi.s KM27 exg A1,A0 neg.l D2 KM27:move D2,A2 cmp.l A2,D2 bne.s KM24 move.l A6,-(SP) addq #2,A0 bsr XROT move.l A2,A0 move (A1)+,-(SP) bsr XADDS1 move.l A2,A0 bsr XINTE1 move (SP)+,D0 cmpi #$4000,2(A2) beq KL860 ext.l D0 move (A2),A1 add.l A1,D0 move D0,A1 cmp.l A1,D0 bne ERRRG2 move D0,(A2) bra KL860 XFLI64:subq #8,D3 bne.s ERR107R move.l (A0)+,D0 move.l (A0)+,D1 move.l D1,D2 or.l D0,D2 beq KL73 movem.l D0/D1/A6,-(SP) bsr.s XFLIE2 movem.l (SP),D0/D1 moveq #11,D2 GAR16:add.l D1,D1 addx.l D0,D0 dbra D2,GAR16 moveq #51,D2 GAR18:bsr.s XFLIE1 dbra D2,GAR18 move.l (SP)+,D0 bpl.s GAR20 bset #7,2(A2) GAR20:swap D0 lsr #4,D0 andi #$7FF,D0 subi #1023,D0 addq #4,SP GAR22:sub D0,(A2) bra KL860 ERR107R:moveq #107,D0 trap #15 XFLIE1:addq #1,(A0) add.l D1,D1 addx.l D0,D0 bcc.s GAP90 movem.l D0-D2/A0/A2,-(SP) move.l A2,A1 bsr XFLADD move.l 16(SP),A0 bsr XLB76 movem.l (SP)+,D0-D2/A0/A2 GAP90:rts XFLIE2:move.l A6,-(SP) bsr XPOSF1 bsr XPOSF1 move.l (SP)+,A0 rts XFLI32:subq #4,D3 bne.s ERR107R move.l (A0),D0 beq KL73 movem.l D0/A6,-(SP) bsr.s XFLIE2 move.l (SP),D0 moveq #9,D1 asl.l D1,D0 moveq #22,D2 GAP92:bsr.s XFLIE1 dbra D2,GAP92 move.l (SP)+,D0 bpl.s GAP94 bset #7,2(A2) GAP94:swap D0 lsr #7,D0 andi #$FF,D0 subi #127,D0 bra.s GAR22 XFFSH:;CPVPRG XFFSH TTbkslXFFSH: STbkslXFFSH:moveq #0,D0 bsr.s XFFHYP lea XFFEXPA(PC),A3 bmi.s GAP33 bra.s GAP31 XFFCH:;CPVPRG XFFCH TTbkslXFFCH: STbkslXFFCH:moveq #1,D0 GAP31:lea XFFEXPB(PC),A3 GAP33:movem.l D0/A6,-(SP) jsr (A3) move.l A1,-(SP) jsr (A3) move.l (SP)+,A0 tst.l (SP)+ beq.s GAP34 bsr XFLADD bra.s GAP35 GAP34:bsr XFLSUB GAP35:bsr XFFDV2 bra KL860 XFFHYP:movem.l D0/A0/A6,-(SP) bsr XPOSEF bclr #7,(A2) bsr XPOSF1 addq #4,(A2) move.l A2,A1 move.l 8(SP),A0 bsr.w XFLCMP movem.l (SP)+,D0/A0/A6 rts XFFSIN:;CPVPRG XFFSIN TTbkslXFFSIN: STbkslXFFSIN:lea XFFSIN1(PC),A3 bra.s GAP64 XFFTAN:;CPVPRG XFFTAN TTbkslXFFTAN: STbkslXFFTAN:lea XFFTAN1(PC),A3 bra.s GAP64 XFFTH:;CPVPRG XFFTH TTbkslXFFTH: STbkslXFFTH:lea XFFTH1(PC),A3 bra.s GAP64 XFFASH:lea XFFASH1(PC),A3 GAP64:move.l (A0),-(SP) move.l A0,-(SP) bclr #7,2(A0) jsr (A3) move.l (SP)+,A0 move (SP)+,(A0)+ move (SP)+,(A0)+ bpl.s GAP39 addq #2,A2 cmpi #$4000,(A2) beq.s LGF055 bchg #7,(A2) LGF055: subq #2,A2 GAP39:rts XFFEXP1:;CPVPRG XFFEXP1 TTbkslXFFEXP1: STbkslXFFEXP1:cmpi #$4000,2(A0) beq KL73 move.l A6,-(SP) bsr.w XFFHYP bmi.s GAR34 bsr XFFEXP bsr XPOSF1 move.l (SP),A0 move.l A2,A1 bsr XFLSUB bra KL860 GAR34:bsr XFFEXPA move.l A1,A2 bra KL860 XFFTH1:subq #1,(A0)+ bvs XPOSF1 cmpi #$4000,(A0) beq KL73 bchg #7,(A0) subq #2,A0 move.l A6,-(SP) bsr.w XFFHYP bmi.s GAP44 bsr XFFEXP bsr XPOSF1 move.l A2,A0 move.l (SP),A1 move.l A0,-(SP) bsr XFLSUB move.l (SP)+,A0 move.l (SP),A1 move.l A2,-(SP) bsr XFLADD move.l A2,A1 move.l (SP)+,A0 GAP42:bsr XFLDIV bra KL860 GAP44:bsr.s XFFEXPA move.l A1,-(SP) bsr XPOSF1 subq #1,(A2) move.l (SP),A0 move.l A2,A1 bsr XFLADD move.l (SP)+,A0 move.l A2,A1 lea 2(A0),A2 cmpi #$4000,(A2) beq.s LGF057 bchg #7,(A2) LGF057: bra.s GAP42 XFFEXPB:movem.l A0/A3,-(SP) bsr.s XFFEXP GAP37:move.l A2,A1 movem.l (SP)+,A0/A3 lea 2(A0),A2 cmpi #$4000,(A2) beq.s LGF058 bchg #7,(A2) LGF058: rts XFFEXPA:movem.l A0/A3,-(SP) bsr XUNFL move.l A2,A0 bsr XAEXP move.l A2,A0 lea TCONST1,A1 bsr XSUBS2 move.l A2,A0 bsr XFLO bra.s GAP37 XFFEXP:;CPVPRG XFFEXP TTbkslXFFEXP: STbkslXFFEXP:move TPREC,D0 cmp TPRECL,D0 ble.s KM30 KM290:move.l A6,-(SP) bsr XUNFL move.l A2,A0 bsr XAEXP KM29:move.l A2,A0 bsr XFLO bra KL860 KM30:move.l A0,A1 moveq #4,D4 bsr LB95C addq #2,A0 exg A1,A0 bsr XFLDVQ move.l A2,A0 move.l A3,A6 move (A3)+,D0 andi.l #$5FFF,D0 bclr #14,D0 bne.s KM301 cmpi #2,D0 bne.s KM300 move (A3)+,D0 bra.s KM301 KM300:swap D0 KM301:tst (A6) bpl.s KM302 neg.l D0 KM302:cmpi.l #-$7000,D0 bge.s KM303 move.l A2,A6 bra KL73 KM303:move D0,A3 cmp.l D0,A3 bne ERRRG2 movem.l D0/A0,-(SP) move TPREC,D0 cmpi #43,D0 ble.s KM305 bsr.s KM290 KM304:move.l (SP)+,D0 sub D0,(A2) bvs ERRRG2 bra KL860 KM305:cmpi #$4000,2(A0) beq.s KM306 lea DFEXP,A1 bsr.s FTPOL bra.s KM304 KM306:bsr XPOSF1 bra.s KM304 FTPOL:move (A1)+,D0 move.l A1,A2 lea 2(A1,D0.W),A1 move.l A6,A3 movem.l A0-A3/A6,-(SP) bsr XPOSF1 move.l 4(SP),A1 KM35:move.l A1,4(SP) move.l (SP),A0 move.l 12(SP),A1 bsr XFLMUL move.l A2,12(SP) move.l A2,A0 move.l 4(SP),A1 bsr XFLMUL move.l A2,A0 move.l 8(SP),A1 bsr XFLADD move.l A2,8(SP) move.l 4(SP),A1 add -2(A1),A1 tst (A1)+ bne.s KM35 lea 16(SP),SP bra KL860 XFFLOG1:;CPVPRG XFFLOG1 TTbkslXFFLOG1: STbkslXFFLOG1:move.l A6,-(SP) bsr.w XFFHYP bmi.s GAR24 move.l A0,-(SP) bsr XPOSF1 move.l A2,A1 move.l (SP)+,A0 bsr XFLADD move.l A2,A0 bsr.s STbkslXFFLOG bra KL860 GAR24:bsr XUNFL move.l A2,A0 lea TCONST1,A1 bsr XADDS2 bra.s GAR26 XFFLOG:;CPVPRG XFFLOG TTbkslXFFLOG: STbkslXFFLOG:move 2(A0),D0 bmi ERRRG2 cmpi #$4000,D0 beq ERRRG2 move.l A6,-(SP) move TPREC,D0 cmp TPRECL,D0 ble.s KM360 bsr XUNFL GAR26:move.l A2,A0 bsr XALOG bra KM29 KM360:move (A0)+,A2 bsr XBNB move.l D1,D2 sub.l A2,D2 move.l D2,-(SP) move D1,(A6)+ bsr XPOSE lea -2(A2),A0 move TPREC,D0 cmpi #43,D0 ble.s KM362 bsr XUNFL move.l A2,A0 bsr XALOG move.l A2,A0 bsr XFLO KM361:move.l (SP)+,D0 move.l A2,-(SP) bsr LA88 move.l A2,A0 bsr XINTE1 move.l A2,A1 moveq #4,D4 bsr LB95C addq #2,A0 bsr XFLMUL move.l A2,A0 move.l (SP)+,A1 bsr XFLADD bra KL860 KM362:lea TCONSFL1,A1 bsr XFLSUB move.l A2,A0 lea DFLOG,A1 bsr FTPOL1 bra.s KM361 XFLCMP:movem.l A0/A1/A6,-(SP) bsr XFLSUB movem.l (SP)+,A0/A1/A6 move 2(A2),D0 bmi.s KM39 cmpi #$4000,D0 beq.s KM39 moveq #1,D0 KM39:rts XFLEXP:movem.l A1/A6,-(SP) bsr XFFLOG move.l (SP)+,A0 move.l A2,A1 bsr XFLMUL move.l A2,A0 bsr XFFEXP bra KL860 XFFATN: TTbkslXFFATN: STbkslXFFATN:move.l A6,-(SP) bsr XUNFL move.l A2,A0 bsr XARCTG bra KM29 XFFATN3:move TPREC,D0 cmpi #43,D0 bgt.s XFFATN XFFATN1:;CPVPRG XFFATN1 TTbkslXFFATN1: STbkslXFFATN1:lea TCONSFL1,A1 move.l (A0),-(SP) bclr #7,2(A0) bsr.w XFLCMP move.l (SP)+,A2 movem.l A2/A2,(A0) ble.s XFFATN2 move.l A6,-(SP) bsr XFLINV move.l A2,A0 bsr.s XFFATN2 bsr XFFDV2 bclr #7,2(A2) beq.s ML80 ML802:bsr.s ML82 ML801:addq #2,A2 cmpi #$4000,(A2) beq.s LGF064 bchg #7,(A2) LGF064: subq #2,A2 bra KL860 ML80:bsr.s ML82 bra KL860 ML82:move.l A2,A1 moveq #3,D4 bsr LB95C addq #2,A0 bsr XFLSUB subq #1,(A2) rts XFFATN2:move.l A6,-(SP) lea DFATN,A1 bsr ML70 bra KL860 XFFANG:;CPVPRG2 XFFANG STbkslXFFANG:bclr #7,2(A0) bne.s ML94 cmpi #$4000,2(A0) bne.s ML86 btst #7,2(A1) beq.s ML86 move.l A0,A2 bsr.s ML82 bset #7,2(A2) rts ML86:move.l A6,-(SP) move.l (A1),-(SP) bclr #7,2(A1) bsr.w XFLCMP move.l (SP)+,A2 movem.l A2/A2,(A1) bmi.s ML92 exg A1,A0 bsr XFLDIV move.l A2,A0 bsr XFFATN3 bra KL860 ML92:move 2(A1),-(SP) bsr XFLDIV move.l A2,A0 bsr XFFATN3 bsr XFFDV2 bclr #7,2(A2) tst (SP)+ bpl ML80 bra ML802 ML94:move.l A6,-(SP) move 2(A1),-(SP) bsr.s ML86 bsr XFFDV4 bclr #7,2(A2) tst (SP)+ bpl.s ML96 bsr ML82 subq #1,(A2) bra ML801 ML96:bsr ML82 subq #1,(A2) bra KL860 XFLRND:move.l A6,-(SP) move TPREC1,D1 bsr XXP2N move.l A2,A0 bsr XRND move.l A2,A0 move.l (SP),A1 bsr XDIVS2 move.l A2,A0 bsr XFLO bra KL860 XFFSQR:;CPVPRG XFFSQR TTbkslXFFSQR: STbkslXFFSQR:btst #7,2(A0) bne ERRRT move.l A6,-(SP) move (A0)+,D0 move TPREC,D2 addq #1,D2 bclr #0,D2 move D2,D3 asr D0 bcc.s KM58 subq #1,D2 KM58:asr D3 add D3,D0 addq #2,D2 move D0,-(SP) bsr XROT move.l A2,A0 bsr SQRT1F move.l A2,A0 bsr XARON move (SP)+,-(A2) bra KL860 XFLDV1:move (A0)+,D0 move (A1)+,D2 move.l A6,-(SP) cmp D0,D2 blt.s ML62 move.l A1,-(SP) movem.l D2/A6,-(SP) bra.s ML63 ML62:movem.l D0/A0/A6,-(SP) exg D0,D2 move.l A1,A0 ML63:sub D0,D2 bvs ERRRG2 bsr XROT movem.l (SP),D0/A0/A1 bsr XDIV1 move.l A2,-(SP) move.l A3,A0 bsr XINTE1 move.l A6,A5 move.l A2,A6 move.l (SP)+,A2 move.l (SP)+,D0 add D0,(A6) bvs ERRRG2 addq #8,SP move.l (SP)+,A0 move.l A0,A3 bsr XLB76 move.l A0,A1 move.l A5,A6 bsr XLB76 move.l A1,A2 rts XFLDVS:clr.b FDIV movem.l A0/A1,-(SP) bsr.s XFLDV1 exg A3,A2 movem.l (SP)+,A0/A1 addq #2,A1 move (A1),D5 bpl.s ML65 cmpi #$4000,(A2) beq.s LGF066 bchg #7,(A2) LGF066: ML65:btst #7,2(A0) beq.s ML66 cmpi #$4000,(A2) beq.s LGF067 bchg #7,(A2) LGF067: cmpi #$4000,2(A3) beq.s ML66 st FDIV movem.l D5/A1-A3,-(SP) bclr #7,(A1) lea -2(A1),A0 move.l A3,A1 bsr XFLSUB movem.l (SP)+,D5/A1/A3 move D5,(A1) bra KL860 ML66:exg A3,A2 rts XFLDVQ:bsr.s XFLDVS movem.l A2/A3,-(SP) move.l A3,A0 tst.b FDIV bne.s ML68 bsr XPOSE bra.s ML69 ML68:lea TCONSTM,A1 bsr XADDS1 ML69:move.l A6,A3 move.l A2,A6 move.l (SP)+,A2 move.l (SP),A0 bsr XLB76 exg A6,A3 bsr XLB76 move.l (SP)+,A2 rts XFFTG1:lea DFTAN,A1 ML70:move.l A0,-(SP) move.l A1,-(SP) bsr XFLMULQ move.l (SP)+,A1 move.l A2,A0 bsr FTPOL move.l A2,A1 move.l (SP)+,A0 bra XFLMUL XFLDVP:move.l A0,A1 moveq #3,D4 bsr LB95C addq #2,A0 exg A1,A0 move.l A1,-(SP) bsr XFLDVS move -2(A2),D0 tst (A3) bpl.s ML71 neg D0 ML71:add.b FDIV,D0 andi #3,D0 move.l (SP)+,A0 btst #0,D0 beq.s ML72 move D0,-(SP) move.l A2,A1 bsr XFLSUB move (SP)+,D0 ML72:rts XFFCOS:;CPVPRG XFFCOS TTbkslXFFCOS: STbkslXFFCOS:addq #1,(A0) bvs XPOSF1 move.l A6,-(SP) move.l A0,A1 moveq #3,D4 bsr LB95C addq #2,A0 bsr XFLADD move.l A2,A0 bra.s XFFSN1 XFFTWO:addq #1,(A0) bvc.s GAP30 subq #1,(A0) GAP30:rts XFFDV2:addq #1,(A2) GAP32:bvc.s GAP30 move.l A2,A6 bra KL73 XFFDV4:addq #2,(A2) bra.s GAP32 XFFSIN1:bsr.s XFFTWO bvs CFLRE move.l A6,-(SP) XFFSN1:bsr.w XFLDVP move.l A2,A0 move D0,-(SP) move TPREC,D1 cmpi #43,D1 ble.s ML75 subq #1,(A0) bsr XUNFL move.l A2,A0 bsr XASIN move.l A2,A0 bsr XFLO ML73:move (SP)+,D6 cmpi #2,D6 blt.s ML74 addq #2,A2 cmpi #$4000,(A2) beq.s LGF069 bchg #7,(A2) LGF069: subq #2,A2 ML74:bra KL860 ML75:bsr XFFTG1 move.l A2,A0 move.l A0,-(SP) bsr XFLMULQ move.l A2,A0 lea TCONSFL1,A1 bsr XFLADD move.l A2,A1 move.l (SP)+,A0 bsr XFLDIV subq #1,(A2) bra.s ML73 XFFTAN1:move TPREC,D0 move.l A6,-(SP) cmpi #43,D0 bgt.s ML77 bsr.w XFLDVP move D0,-(SP) move.l A2,A0 bsr XFFTG1 move (SP),D0 beq.s ML73 cmpi #3,D0 beq.s ML73 move.l A2,A0 bsr XFLINV bra.s ML73 ML77:move.l A0,-(SP) bsr STbkslXFFSIN move.l (SP)+,A0 bsr STbkslXFFCOS move.l (SP),A0 move.l A2,A1 bsr XFLDIV bra KL860 GAP57:bra XPOSEUN XFLSQ1:move (A0)+,A1 cmpi #$4000,(A0) beq.s GAP57 bsr XBNB add.l D1,D1 cmp.l D1,A1 ble.s GAP60 move.l A6,-(SP) subq #2,A0 bsr XUNFL move.l A2,A0 bsr.s GAP57 move.l A2,A1 bsr XADDS2 bra KL860 GAP60:movem.l A0/A1/A6,-(SP) move A1,D1 add D1,D1 bsr XXP2N move.l A2,-(SP) move.l A0,A1 bsr XMUL1 move.l (SP)+,A0 move.l A2,A1 bsr XADDS1 move.l A2,A0 bsr SQRT1F move.l (SP)+,A0 move.l A2,A1 bsr XADDS1 move.l (SP)+,D0 move D0,-(A2) move.l A2,A0 bsr XUNFL bra KL860 XFFASH1:move.l A6,-(SP) bsr.w XFFHYP bmi.s GAP66 move.l A0,-(SP) bsr XFLMULQ move.l A2,-(SP) bsr XPOSF1 move.l (SP)+,A0 move.l A2,A1 bsr XFLADD move.l A2,A0 bsr XFFSQR move.l (SP)+,A0 move.l A2,A1 bsr XFLADD move.l A2,A0 bsr XFFLOG bra KL860 GAP66:bsr XFLSQ1 move.l A2,A0 bsr XALOG bra KM29 CFLO:movem.l A1/A6,-(SP) bsr XFLO move.l (SP)+,A0 bsr XFLO move.l (SP)+,A2 rts CFLO1:move.l A6,-(SP) bsr XPOSEF bsr KL73 move.l (SP)+,A2 rts XTCX:bsr XPSF move.l A2,A0 bsr XFORMC bsr XFDEV move.l A0,A2 tst (A0)+ bne.s GAN48 lea TCONST0,A1 move (A0)+,D0 bne.s GAN50 addq #2,A0 GAN46:moveq #0,D0 GAN47:rts GAN48:move.l A2,A6 moveq #1,D0 bra.s GAN47 GAN50:subq #1,D0 bne.s GAN48 move TCMPX,D0 beq.s GAN48 cmp (A0)+,D0 bne.s GAN48 exg A1,A0 move (A1)+,D1 addq #2,A1 beq.s GAN46 bsr SLNG1 lea 2(A1,D1.W),A0 bra.s GAN46 CFLAVI:addq #2,A1 bsr SLNH1 add D1,A1 CFLAVI2:addq #2,A0 bsr SLNH0 add D0,A0 rts CFLADD:movem.l A0/A1/A6,-(SP) bsr XFLADD movem.l (SP)+,A0/A1 bsr.s CFLAVI bsr XFLADD GAN76:move.l (SP)+,A2 rts CFLSUB:movem.l A0/A1/A6,-(SP) bsr XFLSUB movem.l (SP)+,A0/A1 bsr.s CFLAVI bsr XFLSUB bra.s GAN76 CFLMUL:;CPXPRG2 CFLMUL TTbkslCFLMUL: STbkslCFLMUL:move.l A6,-(SP) bsr.s CFLMRE bsr CFLAVI1 bsr.s CFLMRE move.l A2,A0 bsr.s CFLMIM move.l (SP),A0 move.l A2,A1 bsr.s CFLADD bra KL860 CFLMRE:movem.l A0/A1/A6,-(SP) bsr XFLMUL movem.l (SP),A0/A1 bsr.s CFLAVI2 bsr XFLMUL movem.l (SP)+,A0/A1/A2 rts CFLMIM:movem.l A0/A6,-(SP) bsr.s CFLAVI2 bsr XMINUSF move.l (SP)+,A0 bsr XPOSEF move.l (SP)+,A2 rts CFLCJG:move.l A6,-(SP) bsr XPOSEF move.l A4,A0 bsr XMINUSF move.l (SP)+,A2 rts CFLINV:movem.l A0/A6,-(SP) lea $4000.W,A2 addq #2,A0 cmp (A0)+,A2 bne.s GAN78 move.l A2,(A6)+ bsr XFLINV addq #2,A2 cmpi #$4000,(A2) beq.s LGF070 bchg #7,(A2) LGF070: GAN77:movem.l (SP)+,A0/A2 rts GAN78:move.l (SP),A0 bsr CFLAVI2 cmp 2(A0),A2 move.l (SP),A0 bne.s GAN80 bsr XFLINV bsr KL73 bra.s GAN77 GAN80:bsr.s CFLCJG move.l (SP)+,A0 bsr.s CFLN2 move.l A2,A0 bsr XFLINV move.l (SP),A0 move.l A2,A1 bsr CFLMRE GAN82:bra KL860 CFLN2:movem.l A0/A6,-(SP) bsr XFLMULQ move.l (SP)+,A0 bsr CFLAVI2 bsr XFLMULQ move.l (SP),A0 move.l A2,A1 bsr XFLADD bra.s GAN82 CFLIM:bsr CFLAVI2 CFLRE:bsr XPOSEF subq #2,A2 rts CFLN1:move.l A6,-(SP) bsr.s CFLN2 move.l A2,A0 bsr XFFSQR bra.s GAN82 CFLDIV:;CPXPRG2 CFLDIV TTbkslCFLDIV: STbkslCFLDIV:movem.l A0/A6,-(SP) move.l A1,A0 bsr CFLINV move.l (SP)+,A0 move.l A2,A1 bsr STbkslCFLMUL bra.s GAN82 CFLEXP:;CPXPRG CFLEXP TTbkslCFLEXP: STbkslCFLEXP:movem.l A0/A6,-(SP) bsr CFLAVI2 movem.l A0/A6,-(SP) bsr XPOSEF move.l (SP)+,A0 bsr STbkslXFFCOS move.l (SP)+,A0 move.l A2,-(SP) bsr STbkslXFFSIN move.l 4(SP),A0 bsr XFFEXP move.l A2,A1 move.l (SP)+,A0 bsr CFLMRE addq #4,SP bra.w GAN82 CFLLOG:;CPXPRG CFLLOG TTbkslCFLLOG: STbkslCFLLOG:movem.l A0/A6,-(SP) bsr.w CFLN2 move.l A2,A0 bsr XFFLOG bsr XFFDV2 move.l (SP)+,A0 move.l A2,-(SP) move.l A0,A1 bsr CFLAVI1 bsr XFFANG move.l (SP)+,A2 bra KL860 XFCADJ:cmp D0,D5 beq.s GAS12 move D5,D3 sub D0,D3 move D0,D5 movem D4/D5,-(SP) move.l 18(SP),A0 bsr XFCEXPA move.l A2,A1 move.l 12(SP),A0 bsr.s XFCMUL move.l 12(SP),A0 bsr XLB76 movem (SP)+,D4/D5 GAS12:rts XFCMUL:move (A0)+,D0 move (A1)+,D1 cmp D0,D1 bne.s GAS15 move D0,(A6)+ addq #1,D0 bne.s GAS14 bsr XFLMUL GAS13:subq #2,A2 rts GAS14:bsr CFLMUL bra.s GAS13 GAS15:bgt.s GAS16 exg A1,A0 GAS16:move #-2,(A6)+ bsr CFLMRE bra.s GAS13 XFCADD:move (A0)+,D0 move (A1)+,D1 cmp D0,D1 bne.s GAS20 move D0,(A6)+ addq #1,D0 bne.s GAS18 bsr XFLADD bra.s GAS13 GAS18:bsr CFLADD bra.s GAS13 GAS20:blt.s GAS22 exg A1,A0 GAS22:movem.l A1/A6,-(SP) bsr CFLO1 move.l (SP)+,A0 move.l A2,A1 move #-2,(A6)+ bsr.s GAS18 bra KL860 XFCEXPS:tst D3 bpl.s XFCEXP beq XFCUN neg D3 bsr.s XFCEXP move.l A2,-(SP) move (A2)+,D0 move.l A2,A0 move D0,(A6)+ addq #1,D0 bne.s GAS34 bsr XFLINV GAS32:subq #2,A2 bra KL860 GAS34:bsr CFLINV bra.s GAS32 XFCEXPA:move.l (A0),A0 bra.s XFCEXP XFCPOS:moveq #1,D3 XFCEXP:move.l A0,A1 cmpi #2,D3 beq XFCMUL move.l A6,-(SP) move (A0)+,D2 move D2,(A6)+ bsr XPOSEF move.l A4,A0 addq #1,D2 beq.s GAS24 bsr XPOSEF GAS24:cmpi #1,D3 bne.s GAS26 move.l (SP)+,A2 rts GAS26:movem.l D3/A6,-(SP) bsr.s XFCUN GAS28:move.l (SP)+,D3 asr D3 bcc.s GAS30 movem.l (SP),A0/A1 move D3,-(SP) bsr XFCMUL move.l 2(SP),A0 bsr XLB76 move (SP)+,D3 bne.s GAS30 move.l (SP)+,A2 bra KL860 GAS30:move.l D3,-(SP) move.l 8(SP),A0 move.l A0,A1 bsr XFCMUL move.l 4(SP),A0 move.l A2,-(SP) bsr.s XFCPOS move.l 12(SP),A0 move.l A2,A1 move.l (SP)+,A2 move.l A1,D1 sub.l A2,D1 bsr LB76 move.l A0,4(SP) bsr XLB76 bra.s GAS28 XFCUN:move #-1,(A6)+ bsr XPOSF1 subq #2,A2 rts ERRSIN:moveq #119,D0 trap #15 XFSTP:move.l A6,-(SP) move (A0)+,D6 subq #1,D6 move D6,-(SP) GAR52:move (A0)+,D0 move.l A1,A2 GAR54:move (A2)+,D1 bmi.s ERRSIN move.l (A2)+,D2 cmp D1,D0 bne.s GAR54 move.l D2,(A6)+ bsr VERA6 dbra D6,GAR52 move (A0)+,D4 move (A0),D5 move.l A6,-(SP) move #-1,(A6)+ bsr KL73 GAR58:move.l A0,-(SP) move (A0),D0 bsr XFCADJ move 8(SP),D3 move.l 10(SP),A0 move.l (SP)+,A1 movem D3-D5,-(SP) movem.l A0/A1,-(SP) lea 2(A1),A0 add D3,A0 add D3,A0 move #-1,(A6)+ bsr XINTE1 subq #2,A2 bra.s GAR61 GAR60:move D3,-(SP) move (A1),D3 beq.s GAR62 movem.l A0/A1,-(SP) move.l A2,-(SP) bsr XFCEXPA move.l A2,A1 move.l (SP)+,A0 bsr XFCMUL GAR61:movem.l (SP)+,A0/A1 GAR62:move (SP)+,D3 addq #2,A1 addq #4,A0 dbra D3,GAR60 move.l A1,-(SP) move.l A2,A1 move.l 8(SP),A0 bsr XFCADD move.l 8(SP),A0 bsr XLB76 move.l (SP)+,A0 bsr SLNH0 add D0,A0 movem (SP)+,D4/D5 dbra D4,GAR58 move.l A0,-(SP) clr D0 bsr XFCADJ addq #4,SP move.l (SP)+,A2 addq #2,SP bra KL860 XFSTV: STbkslXFSTV:movem.l A1/A6,-(SP) move (A0)+,-(SP) move.l A0,-(SP) move #-1,(A6)+ bsr XFLO move.l (SP)+,A0 bsr SLNG0 add D0,A0 move (SP)+,D6 move.l (SP)+,A1 GAR66:subq #1,D6 beq.s GAR68 move.l (A0)+,D0 lea -2(A0,D0.L),A2 move (A2)+,D3 movem.l D3/D6/A1/A2,-(SP) bsr XFSTP move.l A2,A0 move.l (SP)+,D3 bsr XFCEXPS move.l 12(SP),A0 move.l A2,A1 bsr XFCMUL move.l 12(SP),A0 bsr XLB76 movem.l (SP)+,D6/A1 move.l (SP)+,A0 bra.s GAR66 GAR68:move.l (SP)+,A2 rts XMINV:move.l A6,-(SP) move #$4001,(A6)+ move.l A6,-(SP) bsr XPOSE move.l A6,-(SP) move #$4000,(A6)+ move.l A6,-(SP) move.l A1,A0 bsr XPOSE MI10:move.l (SP),A1 cmpi #$4000,(A1) bne.s MI12 addq #8,SP move.l (SP)+,A6 move.l (SP)+,A2 rts MI12:move.l 8(SP),A0 bsr XDIV1 move.l A3,-(SP) move.l A2,A0 move.l 8(SP),A1 bsr XMULS1 cmpi #$4000,(A2) beq.s LGF071 bchg #7,(A2) LGF071: move.l A2,A1 move.l 16(SP),A0 bsr XADDS1 move.l (SP),A0 move.l A2,-(SP) bsr XPOSE movem.l A2/A6,-(SP) movem.l 16(SP),A0/A2/A3/A6 exg A6,A0 bsr XLB76 move.l A6,24(SP) move.l 12(SP),A6 bsr XLB76 move.l A6,20(SP) move.l (SP)+,A6 move.l (SP)+,A1 move.l (SP)+,A2 bsr XLB76 addq #8,SP move.l A6,-(SP) move.l A1,A6 bsr XLB76 bra.s MI10 XMINVSA:move.l A1,-(SP) tst (A0) bpl.s MI14 bsr XMINV bchg #7,(A2) bra.s MI16 MI14:bsr XMINV MI16:move.l (SP)+,A0 cmpi #$4001,(A6) MI17:rts XMINVS:bsr.s XMINVSA bne ERRDV XMINVSB:tst (A2) bpl.s MI17 move.l A2,A1 move.l A2,-(SP) bsr XSUB1 bra KL860 XMINVS1:bsr.s XMINVSA beq.s XMINVSB move.l A2,A6 bra MI520 XMPOSE:move.l A3,-(SP) move.l A0,-(SP) move.l A3,A1 bsr XDIV1 move.l A2,A6 move.l A3,A2 move.l (SP)+,A0 move.l (SP)+,A3 tst (A0) bpl.s MI22 XMCHG:cmpi #$4000,(A2) beq.s MI22 move.l A3,-(SP) move.l A2,-(SP) move.l A2,A1 move.l A3,A0 bsr XSUB1 MI19:move.l (SP),A0 bsr XLB76 MI20:move.l (SP)+,A2 MI21:move.l (SP)+,A3 MI22:rts XMMUL:move.l A3,-(SP) bsr XMUL1 move.l (SP),A3 move.l A2,A0 move.l A0,-(SP) bsr.s XMPOSE bra.s MI19 XMMULS:move (A0),D0 move (A1),D1 eor D1,D0 move D0,-(SP) bsr.s XMMUL move (SP)+,D0 bmi.s XMCHG rts XMADD:move.l A3,-(SP) bsr XADD1 move.l (SP),A1 move.l A2,A0 move.l A2,-(SP) bsr XCMP1 bcs.s MI20 movem.l (SP),A0/A1 MI24:bsr XSUB1 bra.s MI19 XMSUB:movem.l A0/A1/A3,-(SP) bsr XCMP1 movem.l (SP)+,A0/A1 bcc.s MI25 move.l A1,-(SP) move.l 4(SP),A1 bsr XADD1 move.l A2,A0 move.l (SP)+,A1 move.l A2,-(SP) bra.s MI24 MI25:bsr XSUB1 bra.s MI21 XMEXP:move.l A3,-(SP) move.l A6,-(SP) move #$4001,(A6)+ cmpi #$4000,(A1) beq.s MI20 move.l A6,-(SP) move.l A0,-(SP) move.l A1,A0 bsr XPOSE move.l (SP)+,A0 move.l 8(SP),A3 bclr #7,(A2) beq.s MI26 move.l A3,A1 bsr XMINVS bra.s MI27 MI26:bsr XMPOSE MI27:move.l A2,-(SP) MI28:movem.l (SP),A0-A3 btst #0,-1(A0) bne.s MI30 move.l A2,A0 bsr XPOSE move.l 12(SP),A3 bra.s MI31 MI30:move.l A2,A1 bsr XMMUL MI31:move.l A2,-(SP) move.l 8(SP),A0 moveq #-1,D2 bsr XROT move #$4000,D0 cmp (A2),D0 beq.s MI315 move.l 4(SP),A0 cmp (A0),D0 bne.s MI32 move.l (SP),A2 move D0,(A2)+ MI315:move.l A2,A6 move.l (SP)+,A2 addq #8,SP bra MI19 MI32:move.l A2,-(SP) move.l 8(SP),A0 move.l A0,A1 bsr XMMUL move.l A2,A1 move.l A6,A4 move.l (SP)+,A6 move.l (SP)+,A2 addq #8,SP move.l (SP),A0 bsr XLB76 move.l A6,-(SP) move.l A1,A6 bsr XLB76 move.l A6,-(SP) move.l A4,A6 bsr XLB76 bra.s MI28 XRND:bsr XBNB asr.l #4,D1 addq #1,D1 move D1,D3 addq #1,D1 add D1,D1 movem.l A0/A6,-(SP) move D1,(A6)+ add D1,A6 bsr VERA6 sub D1,A6 MI36:bsr MOORER move D0,(A6)+ dbra D3,MI36 move.l (SP)+,A3 move.l (SP),A0 bsr XMPOSE bra KL860 XMPT1:bsr SLNH0 btst #0,-1(A0,D0.W) bne.s XMPT2 MI41:moveq #1,D0 MI42:rts XMPT2:movem.l A0/A6,-(SP) lea TCONST1,A1 bsr XSUB1 move.l A2,A0 move.l A6,A2 moveq #0,D2 MI43:move.b -(A2),D0 bne.s MI45 addq #8,D2 bra.s MI43 MI44:addq #1,D2 MI45:ror.b D0 bcc.s MI44 movem.l D0/D2/A6,-(SP) neg D2 bsr XROT lea TCONST2,A0 bsr.s XMPT3 addq #4,SP move.l 8(SP),A0 lea TCONSE8,A1 bsr XCMP1 bcc.s MI46 lea TCONST0,A3 addq #8,SP movem.l (SP)+,A0/A6 bsr XPF3 move.l A2,A6 tst 4(A6) bra.s MI42 MI46:move #24,(SP) move.l A6,-(SP) MI48:move.l (SP),A6 move.l 12(SP),A0 bsr XRND move (A2),D0 subi #$4000,D0 cmpi #7,D0 bcs.s MI48 move.l A2,A0 bsr.s XMPT3 subq #1,4(SP) bne.s MI48 lea 16(SP),SP move.l (SP)+,A6 moveq #0,D0 rts XMPT3:movem.l 12(SP),A1/A3 bsr XMEXP move.l A2,-(SP) clr.l -(SP) cmpi #$4001,(A2) bne.s MI50 MI49:movem.l (SP)+,D0/A6 rts MI50:move.l 4(SP),A0 move.l 28(SP),A1 bsr XCMP1 beq.s MI49 move.l (SP)+,D0 move.l (SP),A0 cmpi #$4001,(A0) beq.s MI52 addq #1,D0 cmp 14(SP),D0 bcc.s MI52 move.l D0,-(SP) move.l A0,A1 bsr XMMUL move.l 4(SP),A0 bsr XLB76 bra.s MI50 MI52:lea 24(SP),SP move.l (SP)+,A6 bra MI41 XMPT:cmpi #$4002,(A0) beq.s MI53 bsr XMPT1 beq.s MI53 move.l A6,A2 MI520:move #$4000,(A6)+ rts MI53:move.l A6,A2 move #$C001,(A6)+ rts XMPRS1:lea TCONSP,A1 bsr XDIV1 move.l A3,A6 moveq #0,D0 move (A3)+,D0 bclr #14,D0 bne.s MI56 move (A3),D0 MI56:lea TINCR1,A0 clr D1 moveq #1,D3 MI57:move.b (A0)+,D1 beq.s MI58 move.l D0,D2 divu D1,D2 swap D2 tst D2 bne.s MI570 clr D3 bra.s MI571 MI570:sub D1,D2 MI571:move.b D2,(A0)+ bra.s MI57 MI58:rts XMPRS2:move.l A0,A1 lea TINCR1,A0 bsr KL167 cmpi #$6000,D0 bcs.s MI59 subi #$4000,(A0) move #2,-(A0) MI59:bra XADD1 XMPRSA:lea TCONST1,A1 bsr XADD1 bra.s MI546 XMPRS:bsr XPOSE MI546:cmpi #$4002,(A2) beq.s MI55 bset #0,-1(A6) move (A2),D0 subi #$4000,D0 cmpi #9,D0 bne.s MI540 move #$400B,(A2) MI540:cmpi #14,D0 bcs.s MI55 move.l A2,-(SP) move.l A2,A0 bsr XMPRS1 tst D3 bne.s MI544 MI542:move.l (SP),A0 bsr.s XMPRS2 move.l (SP),A0 bsr XLB76 MI544:move.l (SP),A0 bsr XMPT2 move.l (SP)+,A2 beq.s MI55 move.l A2,-(SP) bra.s MI542 MI55:rts XMPSB:movem.l A0/A3/A6,-(SP) move.l A0,A1 move.l A3,A0 bsr XSUB1 move.l (SP),A0 move.l A2,A1 bsr XCMP1 bcc.s MI60 movem.l (SP)+,A0/A3/A6 move.l A3,-(SP) bsr XPOSE move.l (SP)+,A3 rts MI60:movem.l (SP)+,A0/A3/A4 bchg #7,(A2) rts XMPRND:movem.l A3/A6,-(SP) move #1,(A6)+ move D0,(A6)+ move D1,(A6)+ MI67:move D1,(A6)+ move.l (SP),A0 bsr XPOSE dbra D1,MI67 move.l 4(SP),A0 lea XRND(PC),A4 bsr.s XMPTR move.l (SP)+,A3 bra KL860 XMPNOR:bsr.s XMPPM move.l A2,A0 move (A0)+,D0 add D0,D0 add D0,A0 tst (A0)+ add D0,A0 bne.s MI69 cmpi #$4000,(A0) beq.s MI68 move #$4001,(A0)+ move.l A0,A6 MI68:rts MI69:cmpi #$4001,(A0) beq.s MI68 movem.l A2/A3,-(SP) move.l A3,A1 MI690:bsr XMINVS move.l A2,A1 movem.l (SP),A0/A3 bsr.s XMPCMUL bra MI19 XMPCMUL:lea XMMUL(PC),A4 bra.s XMPTR XMPCMULT:move.l A4,A1 XMPCMULS:lea XMMULS(PC),A4 bra.s XMPTR MI87:bsr.s XMPPM move.l A2,-(SP) move.l A2,A0 bsr.s XMPPB bra KL860 XMPPB:lea XMPSB(PC),A4 bra.s XMPTR XMPPM:lea XMPOSE(PC),A4 XMPTR:move.l A6,-(SP) move (A0)+,D0 move D0,(A6)+ move (A0)+,(A6)+ cmpi #1,D0 bcc.s MI62 jsr (A4) MI61:move.l (SP)+,A2 rts MI62:bne ERRFAT move (A0)+,D1 move.l A6,-(SP) move D1,(A6)+ MI64:move (A0)+,(A6)+ movem.l D1/A0/A1/A3/A4,-(SP) jsr (A4) movem.l (SP)+,D1/A0/A1/A3/A4 cmpi #$4000,(A2) bne.s MI66 lea -2(A2),A6 move.l (SP),A2 subq #1,(A2) MI66:bsr SLNG0 add D0,A0 dbra D1,MI64 move.l (SP)+,A0 tst (A0)+ bmi XPSP00 bne.s MI61 tst (A0) bne.s MI61 lea -2(A0),A2 bra KL860 XMPADD:movem.l A3/A6,-(SP) bsr XADDP move.l A2,A0 move.l (SP)+,A3 bsr.s XMPPM bra KL860 XMPSUB:movem.l A3/A6,-(SP) bsr XSUBP move.l A2,A0 move.l (SP)+,A3 bsr.s XMPPM bra KL860 XMPMUL:movem.l A3/A6,-(SP) bsr XMULP move.l A2,A0 move.l (SP)+,A3 bsr XMPPM bra KL860 XMPDIV1:move.l A0,-(SP) move.l A1,A0 bsr XMPNOR move.l A2,A1 move.l (SP)+,A0 move.l (A1),D0 bne XPSDIV cmpi #$4000,4(A1) beq ERRDV move.l A6,A3 bsr XPSP0 bra XPSAP XMPMOD1:move.l A4,A1 XMPMOD:move.l A3,-(SP) bsr.s XMPDIV1 move.l A2,A6 move.l A3,A0 move.l (SP)+,A3 move.l A1,-(SP) bsr XMPPM bra KL860 XMPDIV:movem.l A1/A3,-(SP) bsr.s XMPDIV1 move.l (SP)+,A0 movem.l A1-A3/A6,-(SP) move (A0)+,D0 add D0,D0 add D0,D0 addq #2,D0 add D0,A0 move.l 16(SP),A1 bsr XMINVS movem.l 8(SP),A0/A1/A3 bsr XMPPM movem.l (SP)+,D0/A0 addq #4,SP movem.l (SP)+,A1/A3 movem.l D0/A2,-(SP) bsr XMPCMULS move.l (SP)+,A0 move.l A6,A5 move.l A2,A6 move.l (SP)+,A2 move.l A0,A3 bsr XLB76 exg A6,A5 bsr XLB76 move.l A5,A2 rts XMMMUL:movem.l A3/A4/A6,-(SP) bsr XMULP move.l A2,A0 move.l (SP)+,A3 move.l (SP),A1 bsr.s XMPMOD move.l (SP)+,A4 bra KL860 XMPEXP:bsr XPSP1 cmpi #$4000,(A1) beq.s MI74 movem.l A2/A3/A4,-(SP) move.l A6,-(SP) exg A1,A0 bsr XPOSE move.l A1,A0 movem.l 8(SP),A3/A4 bclr #7,(A2) beq.s MI700 bsr XMPINV bra.s MI701 MI700:bsr XMPMOD1 MI701:move.l A2,-(SP) MI70:movem.l (SP),A0-A4 btst #0,-1(A0) bne.s MI71 move.l A2,A0 bsr XPSAP bra.s MI72 MI71:move.l A2,A1 bsr.s XMMMUL MI72:move.l A2,-(SP) move.l 8(SP),A0 moveq #-1,D2 bsr XROT cmpi #$4000,(A2) bne.s MI75 move.l A2,A6 move.l (SP)+,A2 addq #8,SP move.l (SP),A0 bsr XLB76 movem.l (SP)+,A2/A3/A4 MI74:rts MI75:move.l A2,-(SP) move.l 8(SP),A0 move.l A0,A1 bsr XMMMUL move.l A2,A1 move.l A6,A4 move.l (SP)+,A6 move.l (SP)+,A2 addq #8,SP move.l (SP),A0 bsr XLB76 move.l A6,-(SP) move.l A1,A6 bsr XLB76 move.l A6,-(SP) move.l A4,A6 bsr XLB76 bra.s MI70 XMPDEG:moveq #0,D5 move.l A0,-(SP) move (A0)+,D5 addq #4,A0 bne.s MI77 cmpi #$4000,-(A0) bne.s MI76 moveq #-1,D5 MI76:move.l (SP)+,A0 rts MI77:move (A0),D5 bra.s MI76 XMPGCD1:move.l A4,A1 XMPGCD:movem.l A1/A6,-(SP) bsr XMPNOR move.l (SP)+,A0 bsr XMPNOR MI78:move.l A2,A0 bsr.s XMPDEG tst.l D5 bpl.s MI81 move.l A2,A6 move.l (SP)+,A2 rts MI81:bne.s MI82 move.l (SP)+,A6 bra XPSP1 MI82:move.l (SP),A0 move.l A2,A1 move.l A2,-(SP) bsr XMPMOD move.l A2,A0 move.l A2,-(SP) bsr XMPNOR move.l A6,A5 move.l A2,A4 move.l (SP)+,A6 move.l (SP)+,A2 move.l (SP),A0 bsr XLB76 exg A6,A5 move.l A4,A2 bsr XLB76 move.l A5,A2 bra.s MI78 XMPINV:move.l A3,-(SP) move.l A6,-(SP) bsr XPSP1 movem.l A4/A6,-(SP) bsr XMPPM move.l (SP)+,A0 move.l A6,-(SP) bsr XPSP0 move.l A6,-(SP) bsr XMPPM MI90:move.l (SP),A1 tst.l (A1) bne.s MI92 cmpi #$4000,4(A1) bne.s MI92 addq #4,SP move.l (SP)+,A6 move.l (SP)+,A0 tst.l (A0)+ bne ERRDV move.l 4(SP),A1 bra MI690 MI92:movem.l 8(SP),A0/A2/A3 bsr XMPDIV move.l A3,-(SP) move.l A2,A0 move.l 8(SP),A1 move.l 20(SP),A3 bsr XMPMUL move.l A2,A1 move.l 16(SP),A0 bsr XMPSUB move.l (SP),A0 move.l A2,-(SP) bsr XPSAP movem.l A2/A6,-(SP) movem.l 16(SP),A0/A2/A3/A6 exg A6,A0 bsr XLB76 move.l A6,24(SP) move.l 12(SP),A6 bsr XLB76 move.l A6,20(SP) move.l (SP)+,A6 move.l (SP)+,A1 move.l (SP)+,A2 bsr XLB76 addq #8,SP move.l A6,-(SP) move.l A1,A6 bsr XLB76 bra MI90 XMPSQF:move.l A0,-(SP) tst (A0) beq.s MI94 move.l (A0),D0 movem.l A3/A6,-(SP) bsr XDVP move.l A2,A1 move.l (SP)+,A3 bsr XMPGCD move.l (SP)+,A6 tst.l (A2)+ bne.s MI94 cmpi #$4001,(A2) MI94:move.l (SP)+,A0 rts XMFMD:move.l A0,A1 move (A0)+,D1 subq #2,D1 bmi.s MI97 bsr SLNG0 add D0,A0 MI96:move.l (A0)+,D0 cmp 6(A0),D5 bcs.s MI98 add.l D0,A0 dbra D1,MI96 MI97:rts MI98:move.l A6,A5 movem.l D5/A1/A3,-(SP) lea XMFMD1(PC),A2 bsr.s XFREP move.l (SP)+,D5 move.l (SP),A0 bsr XLB76 movem.l (SP)+,A0/A3 bra.s XMFMD XFREP:movem.l A0/A1/A5/A6,-(SP) jsr (A2) move.l (SP),A0 move.l -(A0),D0 add.l D0,A0 move.l (A0),D1 cmpi #1,D1 beq.s MJ10 move.l A2,A0 bsr XEXPF MJ10:move.l A2,A1 move.l A6,A5 move.l (SP)+,A4 move.l A4,D1 move.l (SP)+,A2 sub.l A2,D1 bsr PLB76 subq #1,(A5) move.l -(A6),D0 lea (A4,D0.L),A2 move.l (SP)+,D1 sub.l A2,D1 bsr PLB76 move.l A5,A0 bsr XCONCP bra KL860 MJ12:movem.l (SP)+,D5/A0/A3/A6 XMFMD1:move.l (A0),D0 movem.l D5/A0/A3/A6,-(SP) move D5,D1 subq #1,D1 move D1,(SP) add D5,D1 bsr XMPRND tst.l (A2) beq.s MJ12 move.l 8(SP),A0 cmpi #$4002,(A0) bne.s MJ16 MJ14:subq #1,(SP) bmi.s MJ18 movem.l (SP),D5/A0/A3/A4 exg A4,A0 move.l A3,A1 bsr XMPEXP move.l A2,A0 move.l 12(SP),A1 move.l 8(SP),A3 bsr XMPADD move.l 12(SP),A0 bsr XLB76 bra.s MJ14 MJ16:move.l (SP),D1 bsr XEXPD2 move.l A2,A0 moveq #-1,D2 bsr XROT movem.l (SP),D0/D1/A0/A3 exg A3,A0 move.l A2,A1 move.l D1,A4 bsr XMPEXP move.l A2,A0 move.l 8(SP),A3 lea TCONSTU,A1 bsr XMPSUB move.l 12(SP),A0 bsr XLB76 MJ18:movem.l (SP),D0/A0/A3/A4 move.l A4,A1 bsr.s XMFPAR beq MJ12 cmpi #1,(A3) beq MJ12 move.l A3,A0 move.l A5,A1 bsr XCONCP move.l 12(SP),A0 bsr XLB76 movem.l (SP)+,D5/A0/A3/A4 move.l A4,A2 rts XMFPAR:movem.l A0/A3/A6,-(SP) bsr XMPGCD movem.l (SP)+,A0/A3 tst.l (A2) bne.s MJ20 move.l (SP)+,A6 rts MJ20:move.l A2,A1 bsr XMPDIV move.l A2,A0 bsr XPSAF move.l (SP)+,A0 movem.l A0/A2/A6,-(SP) bsr XPSAF move.l A6,A5 movem.l (SP)+,A0/A2/A6 move.l A0,A3 bsr XLB76 exg A6,A5 bsr XLB76 moveq #1,D0 rts XMFPLU:st XMFPLUF XMFPLUQ:move (A0),D0 beq XPSAF movem.l A0/A3/A6,-(SP) addq #8,A0 move #1,(A6)+ bsr XMPOSE move.l (SP)+,A0 bsr XMPNOR movem.l A2/A6,-(SP) move.l (A2),D2 bsr LB17 clr.l -(SP) MJ24:movem.l (SP),D5/A0 tst.l (A0)+ beq.s MJ26 move.l (A0),D0 addq #1,D5 move.l D5,(SP) add D5,D5 cmp D5,D0 bcc.s MJ28 MJ26:movem.l (SP)+,D0/A0 bsr XPSAF move.l A2,A1 addq #8,SP move.l (SP),A0 bsr XCONCP bra KL860 MJ28:movem.l (SP),D0/D1/A0/A1 move.l D1,A4 move.l A1,A3 bsr XMPEXP move.l 8(SP),A0 bsr XLB76 MJ30:movem.l (SP),D0/A0/A1/A3 move.l (A0),D2 move.l A1,A0 move.l A6,A1 bsr LB17 bsr XMPSUB movem.l (SP),D0/A0/A1/A3 move.l A2,A1 bsr XMPGCD tst.l (A2) beq.s MJ24 move.l A2,-(SP) move.l A2,A0 bsr XPSAF move.l A2,A0 movem.l (SP),D0/D5/A1/A2/A3 bsr XMFMD move.l 20(SP),A0 bsr XCONCP move.l (SP)+,A1 movem.l A2/A6,-(SP) movem.l 12(SP),A0/A2/A3 bsr XMPDIV movem.l A2/A6,-(SP) movem.l 24(SP),A0/A3 move.l A2,A1 bsr XMPMOD move.l A6,A5 movem.l 8(SP),A2/A6 move.l 32(SP),A0 bsr XLB76 movem.l (SP)+,A2/A6 addq #8,SP move.l A0,4(SP) bsr XLB76 move.l A0,8(SP) move.l A5,A6 bsr XLB76 tst.b XMFPLUF bne MJ30 bra MJ24 XMFBEZ:movem.l A3/A6,-(SP) move.l #$24001,(A6)+ move.l #8,(A6)+ bsr XPSP1 move #1,(A6)+ bsr XPSP1 move (A0)+,D1 bsr SLNG0 add D0,A0 subq #1,D1 move.l A0,-(SP) move.l A2,-(SP) move #1,-(SP) move D1,-(SP) MJ32:movem.l (SP),D5/A0/A1/A3 cmp (SP),D5 bcs.s MJ36 move.l A0,A6 lea 16(SP),SP move.l (SP)+,A2 rts MJ34:add.l (A1)+,A1 MJ36:subq #1,D5 bne.s MJ34 move.l (A1)+,D0 pea 4(A1,D0.L) bsr XMPMUL move.l (SP)+,A0 movem.l A2/A6,-(SP) move.l A2,A4 bsr XMPINV move.l A6,-(SP) movem.l 8(SP),D4-D6/A2/A3/A5 move.l D4,A0 addq #1,(A5) move.l (A5)+,(A6)+ MJ38:addq #4,A6 move.l (A2)+,D0 move.l A2,D4 add.l D0,A2 subq #1,D5 bmi.s MJ40 move.l (A5)+,D0 move.l A5,A1 add.l D0,A5 movem.l D4/D5/A0/A2/A3/A5/A6,-(SP) bsr XMPMUL move.l A2,A0 move.l (SP)+,A1 bsr XMPMOD move.l 20(SP),A0 bsr XLB76 movem.l (SP)+,D5/A0/A2/A3/A5 move.l (SP)+,A1 move #1,(A6)+ move.l A6,D0 sub.l A1,D0 move.l D0,-(A1) bra.s MJ38 MJ40:move.l D4,A1 move.l A6,-(SP) bsr XMPMUL move.l A2,A1 lea TCONSTU,A0 bsr XMPSUB move.l A2,A0 move.l 8(SP),A1 bsr XMPDIV tst.l (A3)+ bne.s ERRDV cmpi #$4000,(A3) bne.s ERRDV move.l (SP),A0 bsr XLB76 move.l (SP)+,A1 move #1,(A6)+ move.l A6,D0 sub.l A1,D0 move.l D0,-(A1) movem.l (SP)+,D6/A0/A1 bsr XPSAP move.l A6,A5 move.l A2,A6 move.l D6,A2 move.l 16(SP),A0 bsr XLB76 movem.l (SP)+,D5/D6 addq #1,D5 movem.l D5/A0,-(SP) move.l A5,A6 bsr XLB76 bra MJ32 ERRDV:moveq #23,D0 trap #15 XMFBEZC:move (A0)+,D5 subq #1,D5 ble.s ERRIS bsr SLNG0 add D0,A0 addq #4,A0 move.l (A0),D4 MJ42:subq #1,D5 bmi.s MJ44 cmp.l (A0),D4 bne.s ERRIS bsr WPOLYUC add.l -(A0),A0 addq #8,A0 bra.s MJ42 MJ44:rts ERRIS:moveq #34,D0 trap #15 XMFINT:moveq #0,D0 moveq #-1,D1 movem.l D0/D1/A0/A6,-(SP) move.l A6,-(SP) move.l A6,-(SP) move #$4002,(A6)+ MJ48:move.l (SP),A0 bsr XMPRSA move.l (SP),A0 bsr XLB76 move.l (SP),A3 move.l 16(SP),A0 addq #8,A0 bsr XMPOSE move.l A2,A6 cmpi #$4000,(A2) beq.s MJ48 move.l 16(SP),A0 bsr XMPNOR move.l A2,A0 bsr XMPSQF exg A6,A0 bne.s MJ48 exg A6,A0 move.l (SP),A3 move.l A0,-(SP) clr.b XMFPLUF bsr XMFPLUQ move (A2),D0 cmp 16(SP),D0 bhi.s MJ52 move D0,16(SP) movem.l (SP)+,D0/D1 movem.l A2/A6,-(SP) move.l D0,A6 move.l D1,A2 move.l 24(SP),A0 bsr XLB76 movem.l (SP)+,A2/A6 move.l A0,(SP) bsr XLB76 move.l A6,-(SP) move.l 20(SP),A0 bsr XPOSE move.l A6,-(SP) MJ52:move.l (SP)+,A6 addq #1,8(SP) movem 8(SP),D0-D2 cmpi #2,D2 bne.s MJ54 movem.l (SP)+,D1-D4/A0/A6 bra XPSAF MJ54:subi #10,D2 cmpi #4,D2 ble.s MJ55 moveq #4,D2 MJ55:cmp D0,D2 bge MJ48 move.l (SP)+,A6 move.l (SP)+,A0 addq #8,SP movem.l (SP),A2/A3 move.l A0,-(SP) move.l A6,A5 lea 8(A2),A4 lea XMPCMULT(PC),A2 bsr XFREPI move.l (SP),A0 bsr XLB76 move.l 4(SP),A0 move.l A6,-(SP) move #$4000,(A6)+ addq #4,A0 move.l (A0)+,-(SP) MJ56:move.l A0,-(SP) move.l A0,A1 bsr XMUL1 move.l A2,A0 move.l 8(SP),A1 bsr XADD1 move.l 8(SP),A0 bsr XLB76 move.l (SP)+,A0 bsr SLNH0 add D0,A0 addq #2,A0 subq #1,(SP) bpl.s MJ56 move.l (SP)+,D2 move.l (SP),A0 add D2,D2 bsr XROT move.l A2,A0 bsr SQRT1 move.l (SP),A0 bsr XLB76 movem.l (SP),D0/A0/A1/A3 bsr XMFBEZ move.l A2,-(SP) move.l A3,A0 bsr XPOSE move.l A2,-(SP) MJ58:move.l (SP),A0 move.l A0,A1 bsr XMUL1 move.l A2,-(SP) move.l A2,A3 movem.l 12(SP),D5/A0/A4 move.l D5,A5 addq #8,A4 lea LITCU1(PC),A2 bsr XFREPI move.l A2,-(SP) move.l A2,A0 bsr XDEVFP move.l A2,-(SP) move.l 8(SP),A3 move.l 28(SP),A0 move.l A2,A1 bsr XMPSUB move.l A2,A0 move.l 12(SP),A1 bsr XDCTE move.l (SP),A0 bsr XLB76 movem.l (SP),A0-A4 bsr LIFTA move.l 4(SP),A3 bsr LIFTB move.l (SP),A0 bsr XLB76 move.l 8(SP),A0 move.l 20(SP),A1 bsr XCMP1 bcc MJ68 move.l 20(SP),A0 bsr XPOSE move.l A2,-(SP) bsr XPSP1 move.l A2,-(SP) move.l 24(SP),A4 move (A4)+,D6 addq #2,A4 MJ60:subq #1,D6 beq.s MJ66 move.l (A4)+,D0 move.l A4,A0 add.l D0,A4 bsr XPSAP move.l 8(SP),A3 movem.l D6/A4,-(SP) move (A3)+,D6 addq #2,A3 MJ62:subq #1,D6 beq.s MJ64 move.l (A3)+,D0 move.l A3,A1 add.l D0,A3 cmp 2(SP),D6 beq.s MJ62 move.l A2,A0 movem.l D6/A2/A3,-(SP) bsr XMULP bsr XLB76 movem.l (SP)+,D6/A2/A3 bra.s MJ62 MJ64:move.l A2,A1 move.l 8(SP),A0 bsr XSUBP bsr XLB76 movem.l (SP)+,D6/A4 bra.s MJ60 MJ66:move.l (SP),A0 move.l 16(SP),A3 bsr XMPPM move.l A2,A0 move.l 20(SP),A1 bsr XDCTE move.l A2,A0 movem.l 12(SP),A1-A4 bsr LIFTA move.l 24(SP),A3 bsr LIFTB move.l (SP),A0 bsr XLB76 move.l 16(SP),A0 bsr XPOSE move.l A6,A5 move.l A2,A4 move.l (SP)+,A3 move.l (SP)+,A6 move.l (SP)+,A2 lea 20(SP),SP move.l (SP),A0 bsr XLB76 move.l A6,-(SP) move.l A3,A6 bsr XLB76 move.l A6,-(SP) move.l A4,A6 bsr XLB76 move.l A6,-(SP) move.l A5,A6 bsr XLB76 bra MJ58 MJ68:move.l 8(SP),A0 bsr XPOSE move.l A6,A5 move.l A2,A6 move.l (SP)+,A2 lea 20(SP),SP move.l (SP),A0 bsr XLB76 move.l A6,-(SP) move.l A5,A6 bsr XLB76 move.l A6,-(SP) move.l #$14001,(A6)+ move.l 12(SP),A0 bsr XPSAP move.l A2,-(SP) MJ70:move.l 12(SP),A0 move (A0)+,D6 subq #2,D6 bne.s MJ72 subq #8,SP MJ71:addq #8,SP move.l (SP)+,A0 bsr XPSAF move.l A2,A1 move.l (SP)+,A0 bsr XCONCP lea 12(SP),SP bra KL860 MJ72:move D6,-(SP) clr -(SP) move #-1,(A6)+ move.l A6,-(SP) MJ73:move.l (SP)+,A6 movem (SP),D0/D6 addq #1,(SP) move.l A6,-(SP) MJ74:move D6,(A6)+ subq #1,D6 bmi.s MJ71 dbra D0,MJ74 move D0,(A6)+ MJ76:move.l 8(SP),A0 addq #8,A0 move.l A6,-(SP) clr.l (A6)+ bsr XPOSE movem.l (SP),A2/A3 move.l 24(SP),A4 bsr CALPRO MJ88:move.l (SP),A0 move.l 20(SP),A3 bsr XMPPM move.l A2,A0 bsr XMPPB move.l A2,A0 bsr XPP move.l (SP),A0 bsr XLB76 move.l (SP),A1 move.l 12(SP),A0 bsr XCTDIV1 beq.s MJ94 move.l (SP)+,A6 lea -2(A6),A5 move.l A5,A0 MJ90:move -(A0),D0 bmi.s MJ73 move.l A0,A1 MJ92:subq #1,D0 beq.s MJ90 move D0,(A1)+ cmp.l A5,A1 bcc.s MJ76 bra.s MJ92 MJ94:move.l A2,-(SP) move.l 28(SP),A2 move.l 8(SP),A1 move 12(SP),D0 move.l A6,-(SP) move (A2)+,D6 move D6,(A6) sub D0,(A6)+ move (A2)+,(A6)+ MJ96:subq #1,D6 beq.s MJ98 cmp (A1),D6 beq.s MJ97 move.l (A2),D1 addq #4,D1 bsr PLB76 bra.s MJ96 MJ97:add.l (A2)+,A2 addq #2,A1 bra.s MJ96 MJ98:move.l 28(SP),A0 bsr XPOSE move.l A2,-(SP) move.l A6,-(SP) move.l 16(SP),A0 bsr XPSAF move.l A2,A0 move.l 32(SP),A1 bsr XCONCP bsr XLB76 move.l 12(SP),A0 bsr XPSAP move.l A6,A5 move.l A2,A4 move.l (SP)+,A3 move.l (SP)+,A6 move.l (SP)+,A2 lea 28(SP),SP move.l (SP),A0 bsr XLB76 move.l A6,-(SP) move.l A3,A6 bsr XLB76 move.l A6,-(SP) move.l A4,A6 bsr XLB76 move.l A6,-(SP) move.l A5,A6 bsr XLB76 bra MJ70 LITCU1:move.l A6,-(SP) pea -2(A0,D0.L) move.l (A0)+,(A6)+ move.l (A0)+,(A6)+ bsr SLNH0 add D0,A0 move.l A0,-(SP) move.l A4,A0 bsr XMPOSE MJ79:move.l (SP)+,A2 move.l (SP)+,D1 sub.l A2,D1 bsr PLB76 move.l (SP)+,A2 rts XFREPI:movem.l A5/A6,-(SP) move.l (A0)+,(A6)+ move.l (A0)+,D0 pea (A0,D0.L) addq #4,A6 jsr (A2) move #1,(A6)+ move.l A6,D0 sub.l A2,D0 move.l D0,-(A2) bra.s MJ79 LIFTA:movem.l A0/A3/A6,-(SP) move.l (A1)+,(A6)+ move (A4)+,D6 addq #2,A4 MJ80:subq #1,D6 beq.s MJ82 move.l (A4)+,D0 move.l A4,A0 add.l D0,A4 addq #4,A6 movem.l D6/A1/A4/A6,-(SP) movem.l 16(SP),A1/A3 bsr XMPMUL move.l 4(SP),A1 move.l (A1)+,D0 addq.l #4,D0 add.l D0,4(SP) move.l A2,A0 bsr XMPMOD move.l A2,A0 move.l A3,A1 bsr XMCTE movem.l (SP)+,D6/A1/A4 move.l (SP),A0 bsr XLB76 move #1,(A6)+ move.l (SP)+,A0 move.l A6,D0 sub.l A0,D0 move.l D0,-(A0) bra.s MJ80 MJ82:movem.l (SP)+,A0/A3 MJ83:move.l (SP)+,A2 rts LIFTB:move.l A6,-(SP) move.l (A3)+,(A6)+ move (A2)+,D6 addq #2,A2 MJ84:subq #1,D6 beq.s MJ83 move.l (A3)+,D0 move.l A3,A0 add.l D0,A3 move.l (A2)+,D0 move.l A2,A1 add.l D0,A2 addq #4,A6 movem.l D6/A2/A3,-(SP) bsr XADDP move #1,(A6)+ move.l A6,D0 sub.l A2,D0 move.l D0,-(A2) movem.l (SP)+,D6/A2/A3 bra.s MJ84 XPP:movem.l A0/A6,-(SP) move.l (A0),D0 bsr XCONT move.l (SP)+,A0 lea 4(A2),A1 bsr XDCTE bra KL860 XJPDIV:tst.l (A1)+ bne.s MK10 move.l A6,-(SP) bsr XPSP0 bsr XDCTE move.l (SP)+,A3 rts MK10:addq #4,A1 movem.l A0/A1/A6,-(SP) lea -8(A1),A0 bsr XDCTE move.l A2,A1 move.l (SP)+,A0 move.l (A1),D0 bsr XPSDIV move.l (SP)+,A1 movem.l A2/A3,-(SP) move.l A2,A0 bsr XDCTE move.l A6,A5 move.l A2,A4 move.l (SP)+,A6 move.l (SP)+,A2 move.l (SP)+,A0 move.l A0,A3 bsr XLB76 move.l A4,A2 move.l A5,A6 move.l A0,A1 bsr XLB76 move.l A1,A2 rts XJPMOD:bsr.s XJPDIV move.l A2,A6 move.l A3,A2 rts XJPINV:move.l A6,-(SP) bsr XPSP1 move.l A6,-(SP) bsr XPSAP move.l A1,A0 move.l A6,-(SP) bsr XPSP0 move.l A6,-(SP) bsr XPSAP MK11:move.l (SP),A1 tst.l (A1) bne.s MK12 cmpi #$4000,4(A1) bne.s MK12 addq #4,SP move.l (SP)+,A6 move.l (SP),A1 move (A1)+,D0 add D0,D0 add D0,D0 add D0,A1 addq #2,A1 move.l 4(SP),A0 bsr XDCTE move.l (SP)+,A0 movem.l A2/A6,-(SP) bsr XDCTE move.l A6,A3 movem.l (SP)+,A2/A6 move.l (SP),A0 bsr XLB76 exg A6,A3 bsr XLB76 move.l (SP)+,A2 rts MK12:move.l 8(SP),A0 bsr XJPDIV move.l A3,-(SP) move.l A2,A0 move.l 8(SP),A1 bsr XMULP move.l A2,A1 move.l 16(SP),A0 bsr XSUBP move.l (SP),A0 move.l A2,-(SP) bsr XPSAP movem.l A2/A6,-(SP) movem.l 16(SP),A0/A2/A3/A6 exg A6,A0 bsr XLB76 move.l A6,24(SP) move.l 12(SP),A6 bsr XLB76 move.l A6,20(SP) move.l (SP)+,A6 move.l (SP)+,A1 move.l (SP)+,A2 bsr XLB76 addq #8,SP move.l A6,-(SP) move.l A1,A6 bsr XLB76 bra MK11 XJPDHG:moveq #1,D1 XJPSCT:exg D0,D1 move.l A6,-(SP) move #1,(A6)+ bsr LA88 move.l (SP),A1 move D1,D0 bsr XSBSP move.l A2,A0 bsr XDEVFP bra KL860 XJPANY:movem.l D0/A0/A6,-(SP) move (A0)+,D6 move D6,D0 add D0,D0 add D0,A0 move (A0)+,D5 mulu D5,D0 add.l D0,A6 bsr VERA6 sub.l D0,A6 move D5,D4 MK20:move D6,D3 bra.s MK23 MK22:move (A0)+,(A6)+ MK23:dbra D3,MK22 bsr SLNG0 add D0,A0 dbra D4,MK20 movem.l (SP)+,D0/A0/A2 rts XJPHTS:move.l A0,-(SP) move (A0)+,D6 add D6,A0 add D6,A0 move (A0)+,D5 MK24:bsr.s MK28 move.l D3,D4 bra.s MK26 MK25:bsr SLNG0 add D0,A0 bsr.s MK28 cmp.l D3,D4 bne.s MK27 MK26:dbra D5,MK25 moveq #0,D0 MK27:move.l (SP)+,A0 rts MK28:moveq #0,D3 moveq #0,D0 moveq #0,D1 move D6,D2 bra.s MK30 MK29:move (A0)+,D0 beq.s MK30 add.l D0,D3 addq #1,D1 MK30:dbra D2,MK29 rts XJPHMG:bsr.s XJPANY movem.l D0/A0/A2,-(SP) move (A0)+,D1 move D5,(SP) bra.s MK33 MK32:cmp (A0)+,D0 beq ERRMO MK33:dbra D1,MK32 addq #2,A0 move.l A0,-(SP) move.l A2,A0 move.l A2,A6 moveq #0,D4 MK34:bsr.s MK28 cmp.l D3,D4 bge.s MK35 move.l D3,D4 MK35:dbra D5,MK34 move.l D4,-(SP) bsr XPSP0 MK36:movem.l (SP),D4/A0-A2 move (A2)+,D6 bsr.s MK28 sub.l D3,D4 move.l D4,D2 cmpi.l #$FFFF,D2 bcc ERROV move.l 4(SP),A0 move.l A6,-(SP) move D1,(A6)+ move.l A6,A1 add D1,A6 add D1,A6 clr (A6)+ bra.s MK39 MK37:move (A0),D0 beq.s MK38 move D0,(A6)+ move (A2),(A1)+ MK38:addq #2,A0 addq #2,A2 MK39:dbra D6,MK37 bsr XPOSE move.l A4,8(SP) move 14(SP),D0 bsr XPSMON move.l (SP)+,A0 bsr XMULP move.l A2,A1 move.l 16(SP),A0 bsr XADDP bsr XLB76 subq #1,8(SP) bpl.s MK36 movem.l (SP)+,D0-D2/A0/A2 rts XJPHMG1:clr (A6)+ bsr XJPHMG lea -2(A2),A0 bsr XFFCT1 move.l A0,A2 rts XJFHMG:lea XJPHMG1(PC),A2 tst (A0) bne.s XFREC addq #2,A0 clr (A6)+ bsr XJPHMG subq #2,A2 rts XFREC:movem.l D0/A2/A6,-(SP) move (A0)+,D1 move #1,(A6)+ bsr XPOSE subq #1,D1 bra.s MK44 MK42:move.l (A4)+,D0 move.l A4,A0 add.l D0,A4 movem.l (SP),D0/A2 movem.l D1/A4,-(SP) move -(A4),(SP) jsr (A2) move (SP),D1 cmpi #1,D1 beq.s MK43 move.l A2,A0 bsr XEXPF MK43:move.l A2,A1 move.l 16(SP),A0 bsr XCONCP bsr XLB76 movem.l (SP)+,D1/A4 MK44:dbra D1,MK42 addq #8,SP move.l (SP)+,A2 rts CALPRO:move (A4)+,D6 addq #2,A4 ML30:move (A3)+,D5 bmi.s ML32 ML31:subq #1,D6 move.l (A4)+,D0 move.l A4,A1 add.l D0,A4 cmp D5,D6 bne.s ML31 move.l A2,A0 movem.l D5/D6/A2-A4,-(SP) bsr XMULP bsr XLB76 movem.l (SP)+,D5/D6/A2-A4 bra.s ML30 ML32: rts XPSP00:move.l (SP)+,A6 XPSP0:moveq #0,D0 bra.s XPSP XPSP1:moveq #1,D0 XPSP:move.l A6,A2 clr.l (A6)+ bsr XPOSEL subq #4,A2 rts XLONGP:movem.l D1/D2/A1,-(SP) move.l A0,A1 move (A1)+,D0 add D0,D0 add D0,A1 move (A1)+,D1 KC10:add D0,A1 bsr SLNG12 add D2,A1 dbra D1,KC10 move.l A1,D0 sub.l A0,D0 movem.l (SP)+,D1/D2/A1 rts XPSAP:movem.l D0/A0/A1,-(SP) bsr.s XLONGP move.l A6,A2 add.l D0,A6 bsr VERA6 move.l A2,A1 KC12:move.l (A0)+,(A1)+ cmp.l A6,A1 blt.s KC12 movem.l (SP)+,D0/A0/A1 rts XCHSP:movem.l D0-D2/A2,-(SP) move (A2)+,D0 add D0,D0 add D0,A2 move (A2)+,D1 add D0,A2 cmpi #$4000,(A2) beq.s LGF072 bchg #7,(A2) LGF072: bra.s KC15 KC14:add D0,A2 bchg #7,(A2) KC15:bsr SLNG2 add D2,A2 dbra D1,KC14 movem.l (SP)+,D0-D2/A2 rts XADDP:tst.l (A0) bne.s KC16 cmpi #$4000,4(A0) bne.s KC16 exg A1,A0 bsr.s XPSAP exg A1,A0 rts KC16:tst.l (A1) bne.s KC17 cmpi #$4000,4(A1) beq.s XPSAP KC17:move.l A6,A2 movem.l A0-A2,-(SP) move (A0)+,D0 move (A1)+,D1 move D0,D2 swap D2 move D1,D2 add.l D2,D2 move.l D2,-(SP) clr D2 addq #2,A6 bra.s KC18 KC175:move #1,(A6)+ KC176:subq #1,D0 addq #2,A0 KC177:addq #1,D2 KC18:tst D0 bne.s KC21 KC19:tst D1 beq.s KC25 KC20:subq #1,D1 addq #2,A1 move #2,(A6)+ bra.s KC177 KC21:tst D1 beq.s KC175 move (A0),D3 cmp (A1),D3 bcs.s KC175 bne.s KC20 move #3,(A6)+ subq #1,D1 addq #2,A1 bra.s KC176 KC25:move D2,(A2) move.l A6,-(SP) move (A0)+,D4 move (A1)+,D5 moveq #-1,D6 addq #2,A6 KC26:move.l 16(SP),A2 move (A2)+,D2 subq #1,A2 tst D4 bpl.s KC34 tst D5 bmi KC62 KC28:subq #1,D5 addq #1,D6 KC29:subq #1,D2 bmi.s KC32 addq #2,A2 btst #1,(A2) beq.s KC30 move (A1)+,(A6)+ beq.s KC29 bset #2,(A2) bra.s KC29 KC30:clr (A6)+ bra.s KC29 KC32:exg A1,A0 bsr XPOSE move.l A1,A0 move.l A4,A1 bra.s KC26 KC34:tst D5 bpl.s KC44 KC38:subq #1,D4 addq #1,D6 KC39:subq #1,D2 bmi.s KC42 addq #2,A2 btst #0,(A2) beq.s KC40 move (A0)+,(A6)+ beq.s KC39 bset #2,(A2) bra.s KC39 KC40:clr (A6)+ bra.s KC39 KC42: bsr XPOSE move.l A4,A0 bra.s KC26 KC44:move.l A0,A3 move.l A1,A4 move.l A2,A5 move D2,D3 KC46:subq #1,D3 bmi.s KC52 addq #2,A5 move.b (A5),D0 btst #0,D0 bne.s KC48 tst (A4)+ beq.s KC46 bra.s KC28 KC48:btst #1,D0 bne.s KC50 tst (A3)+ beq.s KC46 bra.s KC38 KC50:cmpm (A3)+,(A4)+ bcs.s KC38 bne KC28 bra.s KC46 KC52:movem 4(SP),D0/D1 movem.l A0/A2/A6,-(SP) movem D2/D4-D6,-(SP) add D2,A6 add D2,A6 add D0,A0 add D1,A1 movem.l A0/A1,-(SP) bsr XADDS2 move (A2),D0 movem.l (SP)+,A0/A1 movem (SP)+,D2/D4-D6 move.l (SP)+,A4 movem.l (SP)+,A2/A3 cmpi #$4000,D0 bne.s KC56 move.l A3,A6 KC54:bsr SLNG0 add D0,A0 bsr SLNG1 add D1,A1 subq #1,D4 subq #1,D5 bra KC26 KC56:addq #1,D6 move.l A4,A0 KC59:subq #1,D2 bmi.s KC54 addq #2,A2 btst #0,(A2) beq.s KC60 move (A0)+,(A3)+ beq.s KC59 bset #2,(A2) bra.s KC59 KC60:clr (A3)+ bra.s KC59 KC62:tst D6 bpl.s KC64 addq #8,SP movem.l (SP)+,A0/A1/A6 bra XPSP0 KC64:move.l (SP)+,A3 move D6,(A3)+ addq #4,SP movem.l (SP),A0/A1/A2 addq #2,A0 addq #2,A1 move.l A6,A4 move (A2)+,D2 clr D3 move.l A2,A5 KC69:subq #1,D2 bmi.s KC74 move (A5)+,D0 btst #0,D0 beq.s KC70 move (A0)+,D1 KC70:btst #1,D0 beq.s KC71 move (A1)+,D1 KC71:btst #2,D0 bne.s KC72 clr D1 move D2,(A4)+ addq #1,D3 bra.s KC69 KC72:move D1,(A2)+ bra.s KC69 KC74:movem.l (SP)+,A0/A1 KC75:tst D3 beq.s KC84 st (A4) move.l (SP),A5 move (A5),D2 sub D3,(A5) move D6,(A2)+ KC76:move.l A6,A4 move D2,D3 move (A4)+,D5 KC78:subq #1,D3 bmi.s KC81 cmp D3,D5 bne.s KC79 addq #2,A3 move (A4)+,D5 bra.s KC78 KC79:move (A3)+,(A2)+ bra.s KC78 KC81:bsr SLNG30 asr D0 subq #1,D0 KC82:move (A3)+,(A2)+ dbra D0,KC82 dbra D6,KC76 move.l A2,A6 KC84:move.l (SP)+,A2 rts XSUBP:cmp.l A0,A1 beq XPSP0 move.l A1,A2 bsr XCHSP bsr XADDP exg A2,A1 bsr XCHSP exg A2,A1 rts XMULM:move.l A6,A2 movem.l A0/A1/A3/A6,-(SP) move (A0)+,D0 move (A1)+,D1 clr D2 addq #2,A6 bra.s KD18 KD15:move #1,(A6)+ KD16:subq #1,D0 addq #2,A0 KD17:addq #1,D2 KD18:tst D0 bne.s KD21 KD19:tst D1 beq.s KD25 KD20:subq #1,D1 addq #2,A1 tst (A3)+ beq.s KD18 move #2,(A6)+ bra.s KD17 KD21:tst D1 beq.s KD15 move (A0),D3 cmp (A1),D3 bcs.s KD15 bne.s KD20 subq #1,D1 addq #2,A1 tst (A3)+ beq.s KD15 move #3,(A6)+ bra.s KD16 KD25:move D2,(A2) move (A0)+,D4 move D4,(A6)+ KD26:movem.l 8(SP),A1/A2 move (A2)+,D2 bra.s KD31 KD27:move (A2)+,D0 clr D1 btst #1,D0 beq.s KD29 KD28:move (A1)+,D1 beq.s KD28 KD29:btst #0,D0 beq.s KD30 add (A0)+,D1 bcc.s KD30 ERROV:moveq #26,D0 trap #15 ERRSZ:moveq #52,D0 trap #15 ERROD:moveq #21,D0 trap #15 KD30:move D1,(A6)+ KD31:dbra D2,KD27 KD32:tst (A1)+ beq.s KD32 subq #2,A1 movem.l D4/A0,-(SP) bsr XMULS2 movem.l (SP)+,D4/A0 bsr SLNG0 add D0,A0 dbra D4,KD26 movem.l (SP)+,A0/A1/A3 move.l (SP),A2 lea 2(A0),A4 lea 2(A1),A5 move (A2)+,D2 bra.s KD37 KD33:move (A2),D0 btst #0,D0 beq.s KD34 move (A4)+,D1 KD34:btst #1,D0 beq.s KD36 KD35:move (A5)+,D1 tst (A3)+ beq.s KD35 KD36:move D1,(A2)+ KD37:dbra D2,KD33 KD38:tst (A3)+ beq.s KD38 subq #2,A3 bsr SLNG30 add D0,A3 move.l (SP)+,A2 rts XMULPQ:move.l A0,A1 XMULP:movem.l A0/A1,-(SP) tst.l (A1) beq.s KD45 exg A1,A0 tst.l (A1) beq.s KD45 move.l A0,A2 move.l A1,A3 move (A2)+,D0 add D0,D0 add D0,A2 move (A2)+,D0 move (A3)+,D1 add D1,D1 add D1,A3 move (A3)+,D1 cmp D1,D0 bcc.s KD42 exg A1,A0 exg A3,A2 exg D0,D1 KD42:move.l A6,-(SP) bsr XPSP0 KD43:move D1,-(SP) bsr XMULM movem.l A0/A1/A3,-(SP) move.l 14(SP),A0 move.l A2,A1 bsr XADDP LGG073:move (A2)+,(A0)+ cmp.l A6,A2 blt.s LGG073 move.l A0,A6 movem.l (SP)+,A0/A1/A3 move (SP)+,D1 dbra D1,KD43 move.l (SP)+,A2 movem.l (SP)+,A0/A1 rts KD45:addq #4,A1 bsr XMCTE movem.l (SP)+,A0/A1 rts XCOEF1:move.l A6,A2 movem.l A0/A6,-(SP) move (A0)+,D2 moveq #-1,D6 subq #1,D2 move D2,D4 move D2,(A2)+ bmi.s KD52 KD50:move (A0)+,D3 cmp D3,D0 bne.s KD51 move D2,D6 dbra D2,KD50 bra.s KD52 KD51:bset #15,D3 move D3,(A2)+ dbra D2,KD50 KD52:tst D6 bpl.s KD55 movem.l (SP)+,A0/A2 tst D1 beq XPSAP bra XPSP0 KD55:move.l A2,-(SP) addq #2,A2 move (A0)+,D5 move.l A2,A6 neg D6 add D4,D6 add D6,D6 addq #1,D4 add D4,D4 move D4,-(SP) moveq #-1,D4 KD57:cmp (A0,D6.W),D1 beq.s KD59 add (SP),A0 bsr SLNG0 add D0,A0 dbra D5,KD57 bra.s KD62 KD59:addq #1,D4 move.l 10(SP),A1 move (A1)+,D2 move D6,-(SP) addq #2,D6 KD60:subq #2,D6 beq.s KD610 move (A0),(A6)+ beq.s KD61 bclr #7,(A1) KD61:addq #2,A1 KD610:addq #2,A0 dbra D2,KD60 bsr XPOSE move.l A4,A0 move (SP)+,D6 dbra D5,KD57 KD62:tst D4 bpl.s KD64 addq #6,SP movem.l (SP)+,A0/A6 bra XPSP0 KD64:addq #2,SP move.l (SP)+,A3 move D4,(A3)+ move.l 4(SP),A2 move.l A6,A4 move (A2)+,D2 move.l A2,A5 clr D3 KD69:subq #1,D2 bmi.s KD74 move (A5)+,(A2)+ bpl.s KD69 move D2,(A4)+ addq #1,D3 subq #2,A2 bra.s KD69 KD74:move.l (SP)+,A0 move D4,D6 bra KC75 XCOEFP:movem D0/D1,-(SP) movem.l A1/A3/A5,-(SP) bsr XCOEF1 movem.l (SP)+,A1/A3/A5 movem (SP)+,D0/D1 rts XDEG:move.l A0,A2 move (A2)+,D2 move D2,D4 add D4,D4 lea (A2,D4.W),A3 clr D5 bra.s KD81 KD80:cmp (A2)+,D0 beq.s KD82 KD81:dbra D2,KD80 rts KD82:add D2,D2 addq #2,D2 neg D2 add D4,D2 move (A3)+,D3 KD84:cmp (A3,D2.W),D5 bcc.s KD85 move (A3,D2.W),D5 KD85:add D4,A3 bsr SLNG31 add D1,A3 dbra D3,KD84 rts KD88:bsr XPSAF1 move.l A2,A0 rts XSBSP:bsr.s XDEG tst D5 beq.s KD88 movem.l D0/D5/A0/A5/A6,-(SP) bsr XVAL move D5,(SP) move.l A1,-(SP) move.l A1,A0 bsr XPSF move.l A2,A0 jsr XNUMF1 bsr XFDEV lea 2(A0),A1 move.l (SP)+,A0 move.l A1,-(SP) bsr XPSF move.l A2,A0 jsr XDENF1 bsr XFDEV addq #2,A0 move.l A0,-(SP) bsr XPSAF1 move.l A2,A0 move 14(SP),D1 neg D1 move.l A0,20(SP) bsr XEXPF move.l 20(SP),A0 bsr XLB76 move 8(SP),D1 beq.s KD89 movem.l (SP),D0/A0 bsr XPSAF1 move.l A2,A0 move 8(SP),D1 move.l A0,-(SP) bsr XEXPF move.l (SP)+,A0 move.l A0,A1 bsr XLB76 move.l 20(SP),A0 bsr XCONCP bsr XLB76 KD89:bsr XPSP1 move.l A2,-(SP) movem.l 12(SP),D0/D1/A0 bsr XCOEFP move.l A2,-(SP) bra.s KD91 KD90:move D1,22(SP) movem.l (SP),D0/A0/A1 bsr XMULP move.l (SP),A0 move.l 12(SP),A1 move.l A2,-(SP) bsr XMULP move.l A6,A3 move.l A2,A6 movem.l (SP),A0/A1/A2 exg A2,A0 bsr XLB76 addq #4,SP move.l A0,(SP) move.l A3,A6 bsr XLB76 movem.l 16(SP),D0/D1/A0 bsr XCOEFP move.l A2,A0 move.l 4(SP),A1 bsr XMULP move.l A0,A1 bsr XLB76 move.l (SP),A0 bsr XADDP bsr XLB76 move 22(SP),D1 KD91:move 16(SP),D0 cmp D1,D0 dbcc D1,KD90 move.l (SP)+,A0 bsr XPSAF1 move.l (SP)+,A0 move.l A0,A1 bsr XLB76 lea 20(SP),SP move.l (SP)+,A0 bsr XMULF move.l A0,A2 move.l (SP),A0 bsr XLB76 move.l (SP)+,A2 rts XPRTAP:movem.l A0/A6,-(SP) move (A0)+,D0 add D0,D0 move D0,-(SP) add D0,A0 move (A0)+,D6 clr (A6)+ KE10:move D6,-(SP) move.l A0,-(SP) add 6(SP),A0 move.b #" ",-(A6) tst.b -(A6) beq.s KE12 addq #2,A6 KE12:move #" +",D0 move (A0),D1 bclr #15,D1 beq.s KE13 move #" -",D0 KE13:move D0,(A6)+ cmpi #$4001,D1 bne.s KE17 move.l (SP),A1 move 6(SP),D0 moveq #" ",D1 KE14:subq #2,D0 bmi.s KE17 tst (A1)+ beq.s KE14 bra.s KE18 KE17:bsr XPRTA2 moveq #"*",D1 subq #2,A6 tst.b (A6) beq.s KE18 addq #1,A6 KE18:move.l (SP)+,A1 move.l 4(SP),A4 move (A4)+,D4 move.l A6,A0 KE20:subq #1,D4 bmi.s KE24 tst (A1) beq.s KE23 move.b D1,(A0)+ moveq #"*",D1 bsr VERIFM0 move (A4),D2 bsr XFLIT subq #1,A0 moveq #0,D0 move (A1),D0 cmpi #1,D0 beq.s KE23 move.b #"^",(A0)+ bsr XPREXL move.b #22,(A0)+ KE23:addq #2,A1 addq #2,A4 bra.s KE20 KE24:clr.b (A0)+ clr.b (A0) move.l A0,A6 move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 bsr SLNG1 add D1,A1 move.l A1,A0 move (SP)+,D6 dbra D6,KE10 addq #6,SP KE25:move.l (SP)+,A0 lea 2(A0),A1 move.l A1,A2 cmpi #" +",(A0) bne.s KE26 move #" ",(A0) KE26:move.b (A2)+,D0 cmpi.b #" ",D0 bne.s KE27 cmpi.b #"+",(A2) beq.s KE27 cmpi.b #"[",(A2) beq.s KE27 cmpi.b #"E",(A2) beq.s KE27 cmpi.b #"-",(A2) bne.s KE26 KE27:move.b D0,(A1)+ bne.s KE26 clr.b (A1) move.l A1,A6 move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 rts XPRTAF:lea TFRMTY(PC),A1 move TFRMTX,(A1) move (A0)+,D0 beq XPRTAP bpl KE273 move TFRMT,(A1) movem.l D0/A0/A1/A6,-(SP) move #" ",(A6)+ tst 2(A0) bpl.s KE270 move #" -",-2(A6) KE270:bsr.s XPRTAG movem.l (SP)+,D0/A0/A1 addq #1,D0 beq KE271 addq #2,A0 bsr SLNH0 add D0,A0 subq #2,A6 tst.b (A6) beq.s GAN42 addq #1,A6 GAN42:moveq #32,D1 move.b D1,(A6)+ moveq #"+",D0 tst 2(A0) bpl.s GAN44 moveq #"-",D0 GAN44:move.b D0,(A6)+ exg A6,A0 move TCMPX,D2 bsr XFLIT exg A6,A0 move.b #"*",-1(A6) move.b D1,(A6) move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 bsr.s XPRTAG bra KE25 XPRTAG:move #1,TILDEF move.l A6,-(SP) cmpi #$4000,2(A0) bne.s GIB80 bsr MH33 bra.s GIB82 GIB80:tst (A1) bmi.s KE272 bne.s KE275 bsr XUNFL move.l A2,A0 bsr XPRTA20 GIB82:tst TILDE bne.s KE276 tst -(A6) bne.s GIB84 move #$7E00,(A6)+ bra.s KE276 GIB84:ori #$7E,(A6)+ clr (A6)+ bra.s KE276 KE275:bsr XUNFL move.l A2,A0 bsr XPRTA2F KE276:move.l A0,A2 move.l (SP),A0 bsr XLB76 KE271:move.l (SP)+,A0 rts KE272:move TPREC,D0 move D0,D1 mulu #57374,D1 swap D1 subi #100,D1 cmp (A0),D1 bgt.s GIB68 cmpi #800,D0 bgt.s GIB66 mulu #58081,D0 swap D0 addi #200,D0 bra.s GIB67 GIB66:move D0,D1 mulu #716,D1 swap D1 add D1,D0 addi #100,D0 GIB67:cmp (A0),D0 bge.s KE275 GIB68:move.l A0,-(SP) addq #2,A0 bsr XINTLGA movem.l (SP),A0/A6 sub (A0),D1 move D1,-(SP) move.b #1,NIVEAU7 lea ESCAPE(PC),A1 move (A1),-(SP) move.l A1,-(SP) move #$4E75,(A1) lea TPREC,A1 move (A1)+,-(SP) move.l (A1)+,-(SP) move.l A1,-(SP) move.l #$140004,-(A1) move #16,-(A1) lea TBASE,A0 bsr XALOG move.l (SP)+,A1 move.l (SP)+,-(A1) move (SP)+,-(A1) move.l (SP)+,A1 move (SP)+,(A1) lea NIVEAU7,A0 tst.b (A0) bmi ESC2R clr.b (A0) move.l A2,A0 bsr XINVS2 move (SP)+,D0 bsr XLGCV move.l D0,D1 divs TFRMTM+2,D1 swap D1 sub D1,D0 move D0,-(SP) move TPREC,D0 bsr.s XLGCV move (SP),D1 neg D1 ext.l D1 divs D0,D1 move.l D1,D2 swap D2 tst D2 bpl.s GIB76 add D0,D2 subq #1,D1 GIB76:movem D0/D1,-(SP) bsr.s XEXPFG move (SP)+,D2 move (SP)+,D3 beq.s GIB78 move.l A2,-(SP) move D3,-(SP) bsr.s XEXPFG move.l A2,A0 move #-1,-(A0) move (SP)+,D3 bsr XFCEXPS lea 2(A2),A1 move.l (SP)+,A0 bsr XFLMUL GIB78:move.l 2(SP),A0 move.l A2,A1 bsr XFLMUL move.l A2,A0 bsr XUNFL bclr #7,(A2) move.l 6(SP),A0 bsr XLB76 move (SP)+,D0 addq #4,SP move.l (SP),A2 bsr XPRTA2E bra KE276 XEXPFG:move D2,D1 lea TBASE,A0 bsr XEXPD2 move.l A2,A0 bra XINTE1 XLGCV:movem.l A2/A6,-(SP) move D0,-(SP) bpl.s GIB70 neg D0 GIB70:mulu #192,D0 divu #277,D0 bsr XPOSED0 move.l A2,A0 move.l 2(SP),A1 bsr XDIVMUL move (A2)+,D0 bclr #14,D0 bne.s GIB72 subq #2,D0 bne ERRDP move (A2)+,D0 bmi ERRDP GIB72:tst (SP)+ bpl.s GIB74 neg D0 GIB74:movem.l (SP)+,A2/A6 ext.l D0 rts KE273:move.l A6,-(SP) move #" ",(A6)+ btst #7,(A0) beq.s KE28 move #" -",-2(A6) KE28:subq #2,D0 bmi KE36 move D0,-(SP) move.l A0,-(SP) move (A0)+,D1 bclr #15,D1 clr (A6)+ cmpi #$4001,D1 beq.s KE29 subq #2,A6 subq #2,A0 bsr XPRTA2 move.l A6,A0 clr (A6)+ move.b #"*",-(A0) tst.b -(A0) bne.s KE29 move.b #" ",(A0) KE29:move.l (SP)+,A0 bsr SLNG0 add D0,A0 move.b #" ",-(A6) tst.b -(A6) beq.s KE30 addq #2,A6 KE30:move #" [",(A6)+ bra.s KE310 KE31:move.l #" * [",(A6)+ move D0,-(SP) KE310:move.l (A0)+,D0 move.l A0,-(SP) add.l D0,(SP) bsr XPRTAP move.b #" ",-(A6) tst.b -(A6) beq.s KE32 addq #2,A6 KE32:move #"] ",(A6)+ move.l (SP),A0 move -(A0),D0 cmpi #1,D0 beq.s KE34 move.b #"^",(A6)+ move.l A6,A0 bsr XPREXS move.b #22,(A0)+ move.l A0,A6 move.b #" ",(A6) move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 KE34:move.l (SP)+,A0 move (SP)+,D0 KE35:dbra D0,KE31 clr (A6)+ bra KE25 KE36:bsr XPRTA2 move.l (SP)+,A0 rts XCMPP1:movem.l D0-D2/A0/A1,-(SP) bra.s KE74 XCMPP:cmp.l A0,A1 beq.s KE810 movem.l D0-D2/A0/A1,-(SP) move.l (A1)+,D0 cmp.l (A0)+,D0 bne.s KE81 KE74:move (A0)+,D0 cmp (A1)+,D0 bne.s KE81 move D0,D2 subq #1,D0 bmi.s KE76 KE75:cmpm (A1)+,(A0)+ dbne D0,KE75 bne.s KE81 KE76:move (A0)+,D1 cmp (A1)+,D1 bne.s KE81 KE77:move D2,D0 subq #1,D0 bmi.s KE79 KE78:cmpm (A1)+,(A0)+ dbne D0,KE78 bne.s KE81 KE79:bsr SLNG0 asr D0 subq #1,D0 KE80:cmpm (A1)+,(A0)+ dbne D0,KE80 bne.s KE81 dbra D1,KE77 KE81:movem.l (SP)+,D0-D2/A0/A1 KE810:rts XVAL:move.l A0,A2 move (A2)+,D2 move D2,D4 add D4,D4 lea (A2,D4.W),A3 moveq #-1,D5 bra.s KE812 KE811:cmp (A2)+,D0 beq.s KE82 KE812:dbra D2,KE811 rts KE82:add D2,D2 addq #2,D2 neg D2 add D4,D2 move (A3)+,D3 KE84:cmp (A3,D2.W),D5 bcs.s KE85 move (A3,D2.W),D5 KE85:add D4,A3 bsr SLNG31 add D1,A3 dbra D3,KE84 rts XVALP:bsr XPSF1 movem.l A0/A2,-(SP) bsr XPSAP move.l A2,-(SP) move (A0)+,D1 subq #1,D1 bmi.s KE88 KE86:move (A0)+,D0 movem.l D1/A0,-(SP) move.l 8(SP),A0 bsr.s XVAL addq #1,D5 beq.s KE87 subq #1,D5 beq.s KE87 movem.l D0/A6,-(SP) move #1,(A6)+ move D0,(A6)+ clr (A6)+ move D5,(A6)+ move #$4001,(A6)+ move.l A6,A0 move.l #$24001,(A6)+ clr (A6)+ move.l #$C0001,(A6)+ move D0,(A6)+ clr (A6)+ move.l #$14001,(A6)+ move D5,(A6)+ move.l 24(SP),A1 bsr XCONCP movem.l (SP)+,D0/A1 move.l A2,-(SP) move.l 12(SP),A0 bsr XCTDIV move.l (SP)+,A0 movem.l A2/A6,-(SP) move.l A2,A6 move.l 24(SP),A2 exg A2,A0 bsr XLB76 movem.l (SP)+,A2/A6 move.l A0,8(SP) bsr XLB76 KE87:movem.l (SP)+,D1/A0 dbra D1,KE86 KE88:move.l 8(SP),A2 move.l (SP)+,A0 cmpi #1,(A2) beq.s KE89 move.l A2,-(SP) bsr XPSAF move.l A2,A0 move.l (SP)+,A1 bsr XCONCP move.l (SP),A0 move.l A2,-(SP) bsr XPSAF neg -2(A6) move.l A2,A0 move.l (SP)+,A1 bsr XCONCP move.l 4(SP),A0 bsr XLB76 KE89:movem.l (SP)+,A0/A2 rts XRED2:move.l A0,-(SP) move (A0)+,D1 subq #2,D1 bmi.s KE91 bsr SLNG0 add D0,A0 KE90:move.l (A0)+,D0 move.l A0,A1 add.l D0,A1 movem.l D1/A1,-(SP) bsr XVALP cmpi #1,(A2) bne.s KE92 move.l A2,A6 movem.l (SP)+,D1/A0 dbra D1,KE90 KE91:move.l (SP)+,A0 rts KE92:movem.l (SP)+,D1/A1 move -(A1),D1 move.l A2,A0 bsr XEXPF move.l A2,A1 move.l (SP),A0 bsr XCONCP bsr XLB76 move.l (SP)+,A0 bra.s XRED2 XPSF:movem.l D0/D1/A0,-(SP) move.l A0,A2 move (A0)+,D1 bne.s KE95 clr (A6)+ bsr XPSAP subq #2,A2 bra.s KE98 KE95:bsr SLNG0 add D0,A0 subq #1,D1 beq.s KE97 subq #1,D1 KE96:add.l (A0)+,A0 dbra D1,KE96 KE97:move.l A0,D1 sub.l A2,D1 bsr VERA6B move.l A0,-(SP) bsr LB76 move.l (SP)+,A2 KE98:movem.l (SP)+,D0/D1/A0 rts XPSAF:move.l A5,-(SP) movem.l A0/A6,-(SP) tst.l (A0) bne.s KF10 move #1,(A6)+ addq #4,A0 bsr XPOSE bra.s KF11 KF10:bsr XNORPE move #1,(A6)+ movem.l A0/A6,-(SP) move #2,(A6)+ move.l A1,A0 bsr XINVS2 movem.l (SP),A2/A3 move.l A3,D0 sub.l A2,D0 move.l D0,(A6)+ bsr KJ48 movem.l (SP)+,D0/A2 move.l 4(SP),A0 bsr XLB76 KF11:movem.l (SP)+,A0/A2/A5 rts XPSAF1:movem.l A0/A5,-(SP) bsr.s XPSAF move.l A2,A0 bsr XRED2 move.l A0,A2 movem.l (SP)+,A0/A5 rts XCONCP:movem.l A0/A1/A6,-(SP) addq #2,A6 addq #2,A0 addq #2,A1 bsr XMULS2 moveq #1,D3 cmpi #$4000,(A2) beq.s KF19 movem.l (SP),A0/A1 move (A0)+,D0 bsr SLNG01 add D1,A0 move (A1)+,D2 bsr SLNG1 add D1,A1 subq #1,D0 bmi ERRFAT subq #1,D2 bmi ERRFAT bra.s KF14 KF135:subq #1,D2 KF136:addq #1,D3 move.l A0,A3 bsr LB76H move D4,(A6)+ move.l A3,A0 KF14:tst D0 bgt.s KF16 tst D2 ble.s KF19 KF15:move.l (A1)+,D1 move.l D1,(A6)+ subq.l #2,D1 move.l A1,A2 add.l D1,A1 move (A1)+,D4 bra.s KF135 KF16:tst D2 bgt.s KF18 KF17:move.l (A0)+,D1 move.l D1,(A6)+ subq.l #2,D1 move.l A0,A2 add.l D1,A0 move (A0)+,D4 subq #1,D0 bra.s KF136 KF18:bsr XCMPP bcs.s KF15 bne.s KF17 move.l (A0)+,D1 addq #4,A1 move.l D1,(A6)+ subq.l #2,D1 move.l A0,A2 add.l D1,A0 add.l D1,A1 subq #1,D2 subq #1,D0 move (A0)+,D4 add (A1)+,D4 bne.s KF136 subq #4,A6 bra.s KF14 KF19:movem.l (SP)+,A0-A2 move D3,(A2) rts XDIVF:exg A1,A0 movem.l A0/A1,-(SP) cmpi.l #$14000,(A0) beq ERRDV bsr.s XINVF move.l (SP),A0 bsr XLB76 movem.l (SP)+,A0/A1 exg A1,A0 XMUL:tst (A0) beq.s KF362 XMULF:move.l #$14000,D0 cmp.l (A0),D0 beq.s KF363 cmp.l (A1),D0 beq.s KF363 bsr XREDP bsr XCONCP move.l A0,A1 bsr XLB76 move.l A1,A0 rts KF362:addq #2,A0 addq #2,A1 bsr XMULP KF364:move.l A0,A1 bsr XLB76 move.l A1,A0 subq #2,A0 rts KF363:move.l A0,A6 XPSF0:moveq #0,D0 bra.s KXPSF XPSF1:moveq #1,D0 KXPSF:move #1,(A6)+ bsr XPOSEL subq #2,A2 rts XINVF:moveq #-1,D1 XEXPF:tst D1 beq.s XPSF1 movem.l D1/A0/A6,-(SP) move (A0)+,(A6)+ bsr XEXPD2 movem.l (SP)+,D3/A2 move (A2)+,D2 subq #2,D2 bmi.s KF39 bsr SLNG20 add D0,A2 KF37:move.l (A2)+,D1 move.l D1,(A6)+ subq.l #2,D1 bsr LB76H move (A2)+,D1 muls D3,D1 move D1,D0 ext.l D0 cmp.l D0,D1 bne ERROV move D1,(A6)+ dbra D2,KF37 KF39:move.l (SP)+,A2 rts XPGCDF:bsr XREDP XPGCDF1:movem.l A0/A1/A6,-(SP) move.l #$4001,(A6)+ move (A0)+,D0 bsr SLNG01 add D1,A0 move (A1)+,D2 bsr SLNG1 add D1,A1 subq #1,D0 bmi ERRFAT subq #1,D2 bmi ERRFAT moveq #1,D3 bra.s KF42 KF40:addq #1,D3 move.l D1,(A6)+ subq.l #2,D1 move.l A0,A3 bsr LB76H move D4,(A6)+ move.l A3,A0 KF42:tst D0 bgt.s KF44 tst D2 ble.s KF47 KF43:move.l (A1)+,D1 move.l A1,A2 add.l D1,A1 subq #1,D2 move -2(A1),D4 bpl.s KF42 bra.s KF40 KF44:tst D2 bgt.s KF46 KF45:move.l (A0)+,D1 move.l A0,A2 add.l D1,A0 subq #1,D0 move -2(A0),D4 bpl.s KF42 bra.s KF40 KF46:bsr XCMPP bcs.s KF43 bne.s KF45 move.l (A0)+,D1 addq #4,A1 move.l A0,A2 add.l D1,A0 add.l D1,A1 subq #1,D0 subq #1,D2 move -2(A0),D4 cmp -2(A1),D4 ble.s KF40 move -2(A1),D4 bra.s KF40 KF47:movem.l (SP)+,A0-A2 move D3,(A2) rts XEXPP:tst D1 beq XPSP1 bmi ERRFAT move (A0)+,D0 add D0,A0 add D0,A0 tst (A0) sub D0,A0 sub D0,A0 bne.s KF54 move.l A6,-(SP) move D0,(A6)+ move D0,D2 bra.s KF51 KF50:move (A0)+,(A6)+ KF51:dbra D2,KF50 move (A0)+,(A6)+ bra.s KF53 KF52:move (A0)+,D2 mulu D1,D2 swap D2 tst D2 bne ERROV swap D2 move D2,(A6)+ KF53:dbra D0,KF52 bsr XEXPD2 move.l (SP)+,A2 rts KF54:bsr XPSP1 move.l A2,A1 subq #2,A0 bsr XPSAP movem.l A1/A2,-(SP) KF55:asr D1 movem D1/D1,-(SP) move.l A2,A0 bcc.s KF56 bsr XMULP move.l A2,A1 bsr XPSAP move.l 2(SP),A0 exg A2,A1 move.l A1,D1 sub.l A2,D1 bsr LB76 move.l A0,6(SP) tst (SP) beq.s KF57 bsr XLB76 move.l 6(SP),A0 KF56:bsr XMULPQ move.l 6(SP),A0 bsr XLB76 move (SP)+,D1 movem.l (SP),A1/A2 bra.s KF55 KF57:addq #2,SP movem.l (SP)+,A2/A6 rts XDEVFP:movem.l A0/A6,-(SP) move (A0)+,D2 clr.l (A6)+ bsr XPOSE move.l A4,A0 subq #2,D2 bmi.s KF61 KF60:move.l (A0)+,D0 move.l A0,A1 add.l D0,A1 movem.l D2/A1,-(SP) move -(A1),D1 bmi.s KF600 bsr XEXPP move.l A2,A1 move.l 12(SP),A0 bsr XMULP bsr XLB76 KF600:movem.l (SP)+,D2/A0 dbra D2,KF60 KF61:movem.l (SP)+,A0/A2 rts XADD:tst (A0) beq KF63 XADDF:cmpi.l #$14000,(A1) beq KF630 cmpi.l #$14000,(A0) beq KF631 movem.l A0/A1,-(SP) bsr XNUMF movem.l A2/A6,-(SP) move.l 12(SP),A0 bsr XNUMF bsr XDENF move.l A2,-(SP) move.l 12(SP),A0 bsr XDENF move.l A2,A1 move.l (SP)+,A0 bsr XPGCDF movem.l A0-A2,-(SP) move.l A2,A1 bsr XCONCI movem.l A2/A6,-(SP) move.l 12(SP),A0 bsr XCONCI movem.l 20(SP),A0/A1 bsr XPGCDF1 move.l A2,A1 bsr XCONCI movem.l A1/A2,-(SP) move.l 32(SP),A0 bsr XCONCI move.l A2,A0 bsr XDEVFP move.l A2,-(SP) move.l 16(SP),A0 bsr XDEVFP move.l A2,A1 move.l (SP)+,A0 bsr XMULP move.l A2,-(SP) move.l 8(SP),A0 bsr XDEVFP move.l A2,-(SP) move.l 16(SP),A0 bsr XDEVFP move.l A2,A1 move.l (SP)+,A0 bsr XMULP move.l (SP)+,A0 move.l A2,A1 bsr XADDP movem.l A2/A6,-(SP) movem.l 36(SP),A0/A1 clr D0 bsr XCOMF movem.l 24(SP),A0/A1 clr D0 bsr XCOMF move.l A2,A1 move.l 4(SP),A0 bsr XCONCI move.l 4(SP),A0 bsr XLB76 movem.l 20(SP),A0/A1 bsr XCONCP move.l A2,A0 move.l 4(SP),A1 bsr XCONCP move.l A0,-(SP) move.l A2,A1 move.l 12(SP),A0 bsr XCONCI movem.l (SP)+,D2-D4 lea 36(SP),SP move.l (SP),A0 movem.l A2/A6,-(SP) move.l D3,A2 move.l D4,A6 bsr XLB76 move.l A0,A1 move.l D2,A6 bsr XLB76 movem.l (SP)+,A2/A6 movem.l A0/A1,-(SP) bsr XLB76 move.l 8(SP),A0 bsr XPSAF1 move.l A2,-(SP) move.l 8(SP),A0 bsr XPSF move.l A2,A1 move.l (SP)+,A0 bsr XMULF move.l (SP)+,A1 bsr XCONCP movem.l (SP)+,D0/A0/A1 move.l A0,A1 bsr XLB76 move.l A1,A0 rts KF63:addq #2,A0 addq #2,A1 bsr XADDP bra KF364 KF630:move.l A1,A6 rts KF631:move.l A1,A2 move.l A0,A1 bsr XLB76 move.l A1,A0 rts XSUB:tst (A0) beq.s KF632 XSUBF:cmpi.l #$14000,(A1) beq.s KF630 bchg #7,2(A1) bra XADDF KF632:addq #2,A0 addq #2,A1 bsr XSUBP bra KF364 XFFCT1:tst (A0) bne.s KF64 XFFCT:movem.l D1/A0,-(SP) addq #2,A0 bsr XPSAF1 subq #2,A0 bsr XLB76 movem.l (SP)+,D1/A0 KF64:rts XFFCT0:addq #2,A0 bsr XPSAF subq #2,A0 move.l A0,A1 bsr XLB76 move.l A1,A0 rts XFDEV:tst (A0) beq.s KF64 move.l A0,A2 bsr.s XTPOLY bne.s KF64 movem.l A0/A5,-(SP) clr (A6)+ bsr XDEVFP subq #2,A2 bsr XLB76 movem.l (SP)+,A0/A5 rts XPRIOR:tst PRIOR beq.s XFDEV tst (A0) bne.s KF65 move.l A5,-(SP) bsr.s XFFCT move.l (SP)+,A5 KF65:rts XTPOLY:move.l A0,-(SP) move.l A2,A0 move (A0)+,D1 ble.s KF70 bsr SLNG0 add D0,A0 subq #1,D1 bra.s KF69 KF68:add.l (A0)+,A0 tst -2(A0) bmi.s KF70 KF69:dbra D1,KF68 clr D0 KF70:move.l (SP)+,A0 rts XTREEL:move.l A2,A0 move (A0)+,D3 beq.s KF72 subq #1,D3 rts KF72:tst.l (A0)+ rts XTADR:bsr.s XTREEL bne.s KF76 XTADR1:moveq #0,D3 move (A0)+,D3 bclr #13,D3 bne.s KF76 bclr #15,D3 beq.s KF77 KF73:bclr #14,D3 bne.s KF74 cmpi #2,D3 bne.s KF75 move (A0)+,D3 KF74:neg.l D3 cmp D3,D3 rts KF75:cmpi #4,D3 bne.s KF76 move.l (A0)+,D3 btst #31,D3 beq.s KF74 cmpi.l #$80000000,D3 KF76:rts KF77:bsr.s KF73 bne.s KF76 neg.l D3 btst #31,D3 rts XTINDX:bsr.s XTADR bne.s KF76 cmpi.l #$7FFF,D3 bgt.s KF76 cmpi.l #-$8000,D3 blt.s KF76 cmp D3,D3 rts XEXP:move.l A0,-(SP) move.l A1,A2 move.l A1,A6 bsr.s XTINDX bne KB44 move.l (SP),A0 move D3,D1 tst (A0) bne.s KF780 tst D1 bpl.s KF781 bsr XFFCT KF780:bsr XEXPF KF78A:move.l (SP),A0 bsr XLB76 move.l (SP)+,A0 rts KF781:clr (A6)+ addq #2,A0 bsr XEXPP move.l (SP),A0 subq #2,A2 bsr XLB76 move.l (SP)+,A0 rts TCND:dc.w 0 XCND1:movem.l D0/A0/A1/A6,-(SP) move (A0)+,D1 subq #2,D1 move #1,(A6)+ bsr XPOSE KG10:move.l (A4)+,D0 move.l A4,A0 add.l D0,A4 movem.l D1/A4,-(SP) move 10(SP),D0 move.l 16(SP),A1 bsr XPSDIV tst.l (A2)+ bne.s KG12 cmpi #$4000,(A2) bne.s KG12 bsr XPSAF1 bra.s KG14 KG12:movem.l D2/A4,-(SP) st TCND move.l A3,A0 bsr XPSAF1 movem.l (SP)+,D2/A0 tst D2 beq.s KG14 movem.l D2/A2,-(SP) bsr XPSAF1 move.l A2,A0 move.l (SP)+,D1 neg D1 bsr XEXPF move.l (SP)+,A0 move.l A2,A1 bsr XCONCP KG14:move.l 4(SP),A4 move -(A4),D1 move.l A2,A0 bsr XEXPF move.l A2,A1 move.l 20(SP),A0 tst TCND beq.s KG142 bsr XMULFA bra.s KG144 KG142:bsr XCONCP KG144:bsr XLB76 movem.l (SP)+,D1/A4 dbra D1,KG10 movem.l (SP)+,D0/A0-A2 move.l A0,A3 bsr XLB76 move.l A3,A0 rts XCND2:clr TCND move.l TMCOND,A0 KG16:move (A0)+,D0 beq.s KG18 move.l A0,-(SP) cmpi #$8000,D0 beq.s KG160 bsr.s GF50 beq.s KG17 KG160:move.l A0,D1 sub.l TMCOND,D1 asr D1 addi #PILEINT,D1 bsr XICND KG17:move.l (SP)+,A0 bra.s KG16 KG18:move TCMPX,D0 beq.s KG20 bsr.s GF50 beq.s KG20 moveq #1,D1 bsr XICND addq #4,A0 move.l A5,-(SP) bsr XRDC3 move.l (SP)+,A5 bsr MB590;=MG620 KG20:rts GF50:movem.l D0/A0,-(SP) bsr LB95A move.l (SP),D2 bsr XMEMBER movem.l (SP)+,D0/A0 rts XCARQ:movem.l A0/A6,-(SP) move (A0)+,D0 asl #2,D0 lea 2(A0,D0.W),A0 btst #7,(A0) beq.s KG29 movem.l (SP)+,A2/A6 bsr XCHSP move.l A2,A0 bsr.s XCARQ1 bne.s KG28 movem.l A0/A2,-(SP) move.l A6,A1 move TCMPX,D2 bsr LB160 move.l A2,A0 bsr XCONCP bsr XLB76 movem.l (SP)+,A0/A2 clr D0 KG28:move SR,-(SP) exg A2,A0 bsr XCHSP exg A2,A0 move (SP)+,SR rts KG29:movem.l (SP)+,A0/A6 XCARQ1:movem.l A0/A6,-(SP) move #1,(A6)+ move (A0)+,D0 add D0,D0 lea 2(A0,D0.W),A0 KG30:subq #2,D0 bmi.s KG34 move (A0)+,D1 btst #0,D1 beq.s KG30 KG32:movem.l (SP)+,A0/A6 moveq #1,D0 rts KG34:bsr SQRT2 tst D4 bne.s KG32 movem.l (SP),A0/A2 tst.l (A0) bne.s KG36 addq #8,SP rts KG36:movem.l (SP),A0/A6 bsr XPSAF1 lea 2(A2),A0 btst #7,(A0) bne.s KG32 bsr SQRT2 tst D4 bne.s KG32 move.l A2,A6 move.l 4(SP),A0 bsr XREDQM move (A0)+,D1 bsr SLNG0 add D0,A0 subq #2,D1 KG38:add.l (A0)+,A0 asr -2(A0) dbcs D1,KG38 bcs.s KG32 move.l 4(SP),A0 addq #2,A0 btst #7,(A0) bne.s KG32 move #1,(A6)+ bsr SQRT2 tst D4 bne.s KG32 lea -2(A2),A1 move.l 4(SP),A0 bsr XCONCI bsr XLB76 clr D0 movem.l (SP)+,A0/A2 rts XDVP:movem.l D0/A0/A6,-(SP) bsr XPSP0 move.l (SP)+,D0 bsr XDEG move D5,D1 KG40:tst D1 ble.s KG42 bsr XCOEFP move.l A6,A1 subq #1,D1 beq.s KG41 move #1,(A6)+ move D0,(A6)+ KG41:clr (A6)+ movem D0/D1,-(SP) move D1,(A6)+ addq #1,D1 move D1,D0 move.l A2,A5 bsr XPOSED0 move.l A5,A0 bsr XMULP move.l A2,A1 move.l 8(SP),A0 bsr XADDP bsr XLB76 movem (SP)+,D0/D1 move.l (SP),A0 bra.s KG40 KG42:movem.l (SP)+,A0/A2 rts XDV:movem.l D0/A0/A6,-(SP) move (A0)+,D1 bne.s KG44 clr (A6)+ bsr.s XDVP bsr XLB76 movem.l (SP)+,D0/A0/A1 rts KG44:move.l #$14000,(A6)+ subq #1,D1 bsr SLNG0 add D0,A0 KG46:subq #1,D1 bmi.s KG48 move.l (A0)+,D0 move.l A0,A1 add.l D0,A1 movem.l D1/A1,-(SP) move 10(SP),D0 bsr XDVP move.l A2,-(SP) bsr XPSAF move #-1,-2(A6) move.l (SP),A0 move.l A2,-(SP) bsr XPSAF1 move.l A2,A1 move.l (SP)+,A0 bsr XMULFA move.l A2,A1 move.l 8(SP),A0 move -(A0),D0 ext.l D0 move.l A6,A0 move #1,(A6)+ bsr LA88 bsr XCONCP move.l (SP)+,A0 move.l A0,A1 bsr XLB76 move.l 16(SP),A0 bsr XADDF movem.l (SP)+,D1/A0 bra.s KG46 KG48:movem.l (SP)+,D0/A0/A1 bra XMULF XRQ2:movem.l D0/A0/A6,-(SP) bsr XDEG asr D5 beq.s KG52 bcc.s KG54 subq #8,SP KG51:addq #8,SP KG52:movem.l (SP)+,D0/A0/A6 moveq #1,D1 rts KG54:move D5,D6 add D6,D6 move.l A0,A3 move (A3)+,D4 add D4,D4 add D4,A3 move (A3)+,D3 KG56:move (A3,D2.W),D1 beq.s KG58 cmp D5,D1 beq.s KG58 cmp D6,D1 bne.s KG52 KG58:add D4,A3 bsr SLNG31 add D1,A3 dbra D3,KG56 move D5,D1 move D1,(SP) bsr XCOEFP add D1,D1 bsr XCOEFP move.l A2,-(SP) clr D1 bsr XCOEFP move.l A2,-(SP) move.l 16(SP),A0 lea TCONSTH+4,A1 bsr XMCTE move.l (SP)+,A0 move.l (SP),A1 move.l A2,-(SP) bsr XMULP move.l (SP),A0 move.l A2,-(SP) bsr XMULPQ move.l A2,A0 move.l (SP)+,A1 bsr XSUBP move.l A2,A0 bsr XCARQ bne.s KG51 move.l A2,A0 bsr XFDEV lea 2(A0),A1 move.l (SP)+,A0 bsr XADDP move.l (SP),A0 move.l A2,-(SP) movem 8(SP),D0/D2 exg D0,D2 bsr XPSMON bsr XMULP move.l A2,A0 move.l (SP)+,A1 bsr XADDP move.l (SP)+,A0 addq #4,SP move.l A2,-(SP) bsr XPSAF1 move.l A2,-(SP) move.l A2,A0 bsr XREDQQ ML54:move.l (SP),A0 move (A0)+,D1 bsr SLNG0 add D0,A0 ML56:subq #1,D1 beq.s ML58 move.l (A0)+,D0 move.l A0,A1 add.l D0,A0 movem.l D1/A0,-(SP) move.l 12(SP),A0 bsr XCTDIV2 beq.s ML60 movem.l (SP)+,D1/A0 bra.s ML56 ML58:addq #4,SP move.l (SP),A1 move.l 4(SP),A0 bsr XCTDIV2 bmi KG52 move.l A2,A0 bsr XPSAF1 move.l (SP)+,A0 move.l A2,-(SP) bsr XPSAF1 move.l (SP)+,A0 move.l A2,A1 bsr XCONCP move.l 4(SP),A0 bsr XLB76 movem.l (SP)+,A0/A2 clr D0 rts ML60:addq #8,SP move.l A2,-(SP) move.l A1,A0 bsr XPSAF move.l A2,A1 move.l 4(SP),A0 bsr XCONCI move.l A6,A5 move.l A2,A4 move.l A1,A6 move.l (SP)+,A2 addq #8,SP move.l 4(SP),A0 move.l A0,-(SP) bsr XLB76 move.l A6,-(SP) move.l A5,A6 move.l A4,A2 bsr XLB76 bra ML54 XRQ3:move.l A0,A1 move (A1)+,D1 beq.s KG61 subq #1,D1 KG60:move (A1)+,D0 movem.l D1/A1,-(SP) bsr XRQ2 movem.l (SP)+,D1/A1 beq.s KG62 dbra D1,KG60 KG61:bra XPSAF KG62:rts XREDQL:clr D0 XFRL2:lea XFRL1,A2 ML46:move.l A0,-(SP) bsr XFREC bra KF78A XREDQM:bsr.s XREDQL lea XFRM2,A2 bra.s ML46 XREDQ:tst D3 bmi.s XREDQL beq.s XREDQM XREDQQ:bsr.s XREDQM lea XJFG,A2 bsr.s ML46 tst TCMPX beq.s ML48 lea XRQ3(PC),A2 move (A0),-(SP) bsr.s ML46 move (A0),D0 cmp (SP)+,D0 bne.s XREDQQ ML48:rts XMONO:move.l A6,A4 clr (A6)+ move.l A1,A2 move.l A0,A3 move D2,D3 KG75:subq #2,D3 bmi.s KG77 move (A2)+,D0 tst (A3)+ beq.s KG75 addq #1,(A4) move D0,(A6)+ bra.s KG75 KG77:clr (A6)+ move.l A1,A2 move D2,D3 KG78:subq #2,D3 bmi.s KG79 move (A0)+,D0 beq.s KG78 move D0,(A6)+ bra.s KG78 KG79:rts XMODPR:bsr XPSP0 movem.l A1/A2,-(SP) move (A0)+,D2 move.l A0,A1 add D2,D2 add D2,A0 move (A0)+,D1 KG80:bsr.s XMONO movem.l D1/D2/A0/A1/A4,-(SP) move.l 20(SP),A1 bsr XDIVMS cmpi #$4000,(A3) bne.s KG84 movem.l (SP)+,D1/D2/A0/A1/A6 KG82:bsr SLNG0 add D0,A0 dbra D1,KG80 movem.l (SP)+,A1/A2 rts KG84:move.l A2,A6 move.l 24(SP),A0 move.l 16(SP),A1 bsr XADDP bsr XLB76 movem.l (SP)+,D1/D2/A0/A1/A4 bra.s KG82 KG26:move TCMPX,D0 lea VARCMP+6,A1 XCND3:addq #2,A1 tst (A1) bne.s KG86 move.l A0,A2 movem.l A1/A2,-(SP) bsr XTPOLY bne ERRPY bsr XFDEV clr (A6)+ move.l (SP)+,A1 addq #2,A0 addq #4,A1 bsr.s XMODPR subq #2,A2 move.l (SP),A0 bsr XLB76 move.l (SP)+,A0 KG85:rts KG86:cmpi #1,(A0) bgt XCND1 beq.s KG85 movem.l D0/A1,-(SP) bsr XFFCT0 movem.l (SP)+,D0/A1 cmpi #1,(A0) beq.s KG87 bsr XCND1 KG87:move.l A0,A2 bsr XTPOLY bne.s KG85 bra XFDEV XRDC1:move.l TCMPX-2,D0 cmp.l (A0),D0 KG90:rts XRDC2:move TCMPX,D0 moveq #0,D1 bsr XCOEFP move.l A2,-(SP) moveq #1,D1 bsr XCOEFP move.l A2,-(SP) moveq #1,D2 bsr XPSMON move.l A2,A0 bsr XMULP move.l A2,A1 move.l 4(SP),A0 bsr XSUBP move.l A2,A0 bsr XPSAF1 move.l (SP)+,A0 move.l A2,-(SP) bsr XMULPQ move.l A2,-(SP) move.l 8(SP),A0 bsr XMULPQ move.l A2,A1 move.l (SP)+,A0 bsr XADDP move.l A2,A0 bsr XPSAF1 move.l A2,A1 move.l (SP)+,A0 bsr XDIVFA bra KL860 XRDC4:move.l A6,-(SP) lea TCMPX-2,A1 move 2(A1),D0 bsr XPSDIV move.l A2,A6 move.l A3,A2 bra KL860 XFORMC:tst TCMPX beq.s GAN13 bsr KG26 lea XRDC1A(PC),A4 bra.s XRDC3A XRDC1A:movem.l D1/A0,-(SP) move TCMPX,D0 move (A0)+,D1 bra.s GAN11 GAN10:cmp (A0)+,D0 beq.s GAN12 GAN11:dbra D1,GAN10 GAN12:movem.l (SP)+,D1/A0 GAN13:rts XRDC3:lea XRDC1(PC),A4 XRDC3A:move (A0),D1 subq #2,D1 bmi.s GAN13 bsr XNLITF move.l A0,-(SP) move.l A2,-(SP) bsr XCLITF move (A2),D1 subq #2,D1 bpl.s GAN14 move.l (SP)+,A6 move.l (SP)+,A0 rts GAN14:move.l A2,A0 move.l A4,-(SP) GAN15:move (A0),D1 subq #2,D1 bmi.s GAN20 move.l A0,-(SP) addq #2,A0 bsr SLNG0 add D0,A0 GAN16:move.l (A0)+,D0 move.l A0,A1 add.l D0,A1 move -2(A1),D2 bpl.s GAN18 move.l 4(SP),A3 jsr (A3) bne.s GAN18 move D2,-(SP) movem.l A0/A1/A6,-(SP) bsr XRDC2 move.l A2,A3 move.l A6,A4 movem.l (SP)+,A0/A2/A6 subq #4,A0 bsr XLB76 move.l A4,A6 move.l A3,A0 move (SP)+,D1 neg D1 bsr XEXPF move.l A2,A1 move.l (SP)+,A0 subq #1,(A0) bsr XMULF bra.s GAN15 GAN18:move.l A1,A0 dbra D1,GAN16 move.l (SP),A0 bsr.s XCMISO move.l A1,-(SP) move.l A2,A0 bsr XPSAF move.l A2,A0 bsr KG26 bsr XRED2 move.l (SP)+,A1 exg A1,A0 bsr XMULF move.l A0,A2 move.l (SP),A0 bsr XLB76 move.l (SP)+,A0 GAN20:addq #4,SP move.l A0,A1 move.l (SP)+,A0 bsr XMULF move.l A0,A2 bra KF78A XCMISO:move TCMPX,D2 bsr XNLIT movem.l A0/A2/A6,-(SP) bsr XCLIT1 move.l A2,A0 bsr XDEVFP bsr XLB76 movem.l (SP)+,A0/A1/A2 rts XREIM:move D0,-(SP) bsr XFORMC bsr XFFCT1 cmpi.l #$14000,(A0) beq.s GAN28 bsr.s XCMISO move (SP),D1 move.l A0,-(SP) move.l A1,-(SP) move.l A2,A0 move TCMPX,D0 bsr XCOEFP move.l A2,A0 bsr XPSAF1 move.l A2,A1 move.l (SP)+,A0 bsr XMULF move.l A0,A2 move.l (SP),A0 bsr XLB76 move.l (SP)+,A0 GAN28:addq #2,SP bra XPRIOR XCC:bsr XFORMC bsr XFFCT1 move.l A0,-(SP) bsr.s XRE1 move.l (SP),A1 bsr XSUBFA move.l A2,A1 bsr XADDF bsr XPRIOR GAN99:move.l A0,A2 bra KF78A XRE1:moveq #0,D0 GAN98:bsr XPSF move.l A2,A0 bsr.s XREIM bra XFFCT1 XIM1:moveq #1,D0 bra.s GAN98 XCMOD:bsr XFORMC move.l A0,-(SP) bsr.s XRE1 moveq #2,D1 bsr XEXPF move.l (SP),A0 move.l A2,-(SP) bsr.s XIM1 moveq #2,D1 bsr XEXPF move.l A2,A1 move.l (SP)+,A0 bsr XADDF bra.s GAN99 XSROOT:move.l A0,-(SP) addq #2,A0 move D2,D0 bsr XDEG move D5,D1 subq #1,D1 bmi ERRPY bsr.s GAP24 move.l A1,-(SP) addq #1,D1 bsr.s GAP24 move.l (SP)+,A0 bsr XDIVF lea 2(A0),A2 cmpi #$4000,(A2) beq.s LGF078 bchg #7,(A2) LGF078: subq #2,A2 bra KF78A GAP24:movem.l D0/D1/A0,-(SP) clr (A6)+ bsr XCOEF1 lea -2(A2),A0 bsr XFFCT1 move.l A0,A1 movem.l (SP)+,D0/D1/A0 rts XEUINV:movem.l D0/A1/A6,-(SP) bsr XGCD move.l A2,A1 bsr XCTDIV movem.l (SP)+,D0/A0 movem.l D0/A2/A6,-(SP) bsr XCTDIV bsr XPSP1 movem.l A2/A6,-(SP) bsr XPSP0 GIB10:movem.l 8(SP),D0/A0/A1 tst.l (A1) bne.s GIB12 cmpi #$4000,4(A1) bne.s GIB12 bsr XPSAF1 move.l (SP)+,A0 lea 16(SP),SP move.l A2,-(SP) bsr XPSAF1 move.l A2,A0 move.l (SP)+,A1 bsr XDIVFA bra KL860 GIB12:bsr XPSDIV movem.l A2-A4,-(SP) move D2,D1 move.l A4,A0 bsr XEXPP move.l A2,A0 move.l 12(SP),A1 bsr XMULP move.l (SP),A0 move.l 16(SP),A1 move.l A2,-(SP) bsr XMULP move.l A2,A1 move.l (SP)+,A0 bsr XSUBP move.l (SP),A0 bsr XLB76 movem.l (SP),A0/A1 bsr XGCD move.l A1,A0 move.l A2,A1 bsr XCTDIV movem.l A1/A2,-(SP) move.l 24(SP),A0 bsr XPSAP move.l (SP),A1 move.l 8(SP),A0 movem.l A2/A6,-(SP) bsr XCTDIV movem.l (SP)+,A1/A3-A5 move.l A6,A4 lea 12(SP),SP move.l (SP),A6 movem.l 12(SP),A0/A2 bsr XLB76 move.l A6,16(SP) move.l A5,A2 move.l A1,A6 bsr XLB76 move.l A6,(SP) move.l A3,A6 bsr XLB76 move.l A6,4(SP) move.l A4,A6 bsr XLB76 bra GIB10 XMEMBER:move (A0)+,D6 bne.s GF44 GF40:move (A0)+,D1 bra.s GF402 GF401:cmp (A0)+,D2 beq.s GF42 GF402:dbra D1,GF401 GF41:moveq #0,D3 rts GF42:moveq #-1,D3 rts GF44:bsr SLNG01 add D1,A0 GF45:subq #1,D6 beq.s GF41 move.l (A0)+,D1 lea (A0,D1.L),A1 bsr.s GF40 bne.s GF42 move.l A1,A0 bra.s GF45 XAPY:bsr XPSP0 movem.l D3/A2,-(SP) move (A0)+,D2 move.l A0,A1 add D2,D2 add D2,A0 move (A0)+,D1 KH10:bsr XMONO move.l (SP),D3 movem.l D1/D2/A0/A1/A4,-(SP) bsr XAFR cmpi #$4000,(A2) bne.s KH14 movem.l (SP)+,D1/D2/A0/A1/A6 KH12:bsr SLNG0 add D0,A0 dbra D1,KH10 movem.l (SP)+,D3/A2 rts KH14:move.l 24(SP),A0 move.l 16(SP),A1 bsr XADDP bsr XLB76 movem.l (SP)+,D1/D2/A0/A1/A4 bra.s KH12 XAVA:move.l A5,-(SP) movem.l D3/A0/A6,-(SP) tst (A0)+ bne.s KH16 clr (A6)+ bsr.s XAPY KH15:movem.l (SP)+,D3/A0/A2/A5 move.l A0,A1 bsr XLB76 move.l A1,A0 rts KH16:move #1,(A6)+ bsr XAFR movem.l (SP),D3/A0 move (A0)+,D1 subq #2,D1 bmi.s KH15 bsr SLNG0 add D0,A0 KH18:move.l (A0)+,D0 move.l A0,A1 add.l D0,A1 move.l (SP),D3 movem.l D1/A1,-(SP) bsr XAPY move.l A2,A0 bsr XPSAF movem.l (SP),D1/A0 move -(A0),-2(A6) move.l A2,A1 move.l 16(SP),A0 bsr XMULF movem.l (SP)+,D1/A0 dbra D1,KH18 bra.s KH15 XTKP1:movem.l D0/D1/A0/A6,-(SP) clr D1 bsr XCOEFP movem.l (SP),D0/D1 KH22:tst D1 beq.s KH24 move.l 8(SP),A0 movem D0/D1,-(SP) bsr XCOEFP move.l A6,A1 move #1,(A6)+ move D0,(A6)+ clr (A6)+ move D1,(A6)+ move #$4001,(A6)+ move.l A2,A0 bsr XMULP move.l A2,A1 move.l 16(SP),A0 bsr XADDP bsr XLB76 movem (SP)+,D0/D1 dbra D1,KH22 KH24:movem.l (SP)+,D0/D1/A0/A2 rts XTKP2:moveq #0,D2 move D1,D2 ext.l D3 movem.l D0/D2/D3/A0/A6,-(SP) clr D1 bsr XCOEFP move.l A2,A1 bsr XSUBP move.l (SP),D0 move.l A2,-(SP) move.l A2,A0 bsr XVAL movem.l (SP),D0-D3 divu D5,D2 tst D3 bmi.s KH26 cmp D3,D2 bcs.s KH26 move D3,D2 KH26:move D2,4(SP) clr.l (A6)+ bsr XPSP1 move.l 20(SP),A1 bra.s KH30 KH28:move.l A2,A0 move D2,-(SP) bsr XMULP move (SP)+,D2 KH30:move.l A2,(A6)+ dbra D2,KH28 move.l -(A6),A0 bsr XPSP0 move.l A2,-(SP) bsr XPSP1 KH32:move.l A2,A1 bsr XMULP move.l A0,D0 move.l (SP)+,A0 movem.l D0/A1,-(SP) move.l A2,A1 bsr XADDP movem.l (SP)+,D0/A0 move.l D0,A3 tst.l -(A3) beq.s KH34 move.l (SP),A1 movem.l D0/A2/A6,-(SP) bsr XMULP movem.l 16(SP),D0/D1 move.l A2,A0 bsr XTKP1 move.l A2,A0 move.l A6,A1 clr.l (A6)+ move.l 24(SP),D0 subq.l #1,24(SP) bsr LA88 addq #1,20(SP) move 20(SP),D0 movem.l A0-A2,-(SP) move.l A2,A0 bsr XPOSED0 move.l A2,A1 bsr XDIVS2 movem.l (SP),D0/D1/A0 bsr XLB76 movem.l (SP)+,A0-A2 bsr XMULP movem.l (SP)+,A0/A3/A4 move.l -(A0),A1 movem.l A0-A2/A6,-(SP) move.l A3,A2 move.l A4,A6 bsr XLB76 movem.l (SP)+,D0/D3/A2/A6 move.l D0,-(SP) movem.l D3/A0,-(SP) bsr XLB76 movem.l (SP)+,A0/A2 bra KH32 KH34:movem.l (SP)+,D0-D4/A0 movem.l D3/A0/A2/A6,-(SP) bsr XPSAF1 move.l A2,A0 move.l (SP)+,D1 bsr XEXPF move.l A2,A3 move.l A6,A4 movem.l (SP)+,A0/A2/A6 movem.l A0/A3/A4,-(SP) bsr XLB76 move.l A0,A3 movem.l (SP)+,A1/A2/A6 bra XLB76 XTKP:movem.l D0/D1/A0/A5,-(SP) bsr XFFCT1 bsr XRED2 bsr XPSP1 movem.l A2/A6,-(SP) move #1,(A6)+ move (A0)+,D1 bsr XPOSE move.l A4,A0 subq #2,D1 bmi.s KH42 KH38:move.l (A0)+,D0 move.l A0,A1 add.l D0,A1 movem.l D1/A1,-(SP) move 18(SP),D0 bsr XVAL tst D5 bne.s KH44 movem.l 16(SP),D0/D1 move -(A1),D3 bsr XTKP2 move.l 8(SP),A0 move.l A3,-(SP) bsr XMULP move.l A2,A0 movem.l 20(SP),D0/D1 bsr XTKP1 move.l (SP)+,A1 move.l 12(SP),A0 movem.l A2/A6,-(SP) bsr XCONCP move.l A2,A3 move.l A6,A4 movem.l (SP)+,A2/A6 move.l 8(SP),A0 bsr XLB76 move.l A3,A2 move.l A4,A6 move.l A0,12(SP) KH40:bsr XLB76 movem.l (SP)+,D1/A0 dbra D1,KH38 KH42:move.l (SP)+,A0 bsr XPSAF1 movem.l (SP)+,A0/A3/A4 move.l A2,A1 bsr XCONCP move.l (SP),A0 bsr XLB76 movem.l (SP)+,A0/A5 rts KH44:move -(A1),-(SP) bsr XPSAF move (SP)+,-2(A6) move.l A2,A1 move.l 12(SP),A0 bsr XCONCP bra.s KH40 SSER:movem.l D0/D1/A0/A1,-(SP) bsr XPSF1 movem.l A2/A6,-(SP) bsr XPSP1 bsr XPSF1 move.l A2,-(SP) KH48:move.l 8(SP),A0 move.l 20(SP),A1 bsr XMULP movem.l 12(SP),D0/D1 move.l A2,A0 bsr XTKP1 tst.l (A2) beq KH58 move.l A2,-(SP) bsr XPSF1 move.l 28(SP),A0 move.l A2,-(SP) KH50:move.l (A0)+,D0 beq.s KH52 move.l A0,A2 add.l D0,A2 move.l A2,-(SP) move -(A2),-(SP) bsr XPSF move.l A2,A0 move (SP)+,D1 bsr XEXPF move.l A2,A1 move.l 4(SP),A0 bsr XCONCP bsr XLB76 move.l (SP)+,A0 bra.s KH50 KH52:movem.l (SP)+,A0-A2 cmpi.l #$14000,(A0) beq KH59 movem.l A0/A1/A6/A7,-(SP) move.l A2,A0 bsr XPSF move.l A2,A1 move.l (SP),A0 bsr XMULF move.l 36(SP),A0 move.l A6,8(SP) KH54:clr.l (A6)+ move.l (A0)+,D0 beq.s KH56 move.l A0,A2 add.l D0,A2 move.l A2,-(SP) bsr XPSF move.l A2,A0 bsr XPSF1 move.l A2,A1 bsr XADDF move.l A6,D0 sub.l A0,D0 addq.l #2,D0 move.l D0,-(A0) move.l (SP)+,A0 move -2(A0),(A6)+ bra.s KH54 KH56:move.l A6,12(SP) move.l 4(SP),A0 bsr XPSAF1 move.l (SP),A0 move.l A2,A1 bsr XPSF move.l A2,A0 exg A1,A0 bsr XMULF move.l A0,A1 move.l 16(SP),A0 bsr XPSF move.l A2,A0 exg A1,A0 bsr XADDF move.l A0,A2 movem.l (SP)+,D0/A0 movem.l D0/A2/A6,-(SP) bsr XPSAP move.l (SP)+,A0 movem.l A2/A6,-(SP) bsr XPSF movem.l A2/A6,-(SP) move.l 52(SP),A0 movem.l 24(SP),A2/A6 bsr XLB76 move.l A0,32(SP) movem.l 16(SP),A2/A6 bsr XLB76 move.l A0,36(SP) movem.l 8(SP),A2/A6 bsr XLB76 movem.l (SP)+,A2/A6 lea 24(SP),SP move.l A0,-(SP) bsr XLB76 bra KH48 KH58:addq #4,SP KH59:movem.l (SP)+,A2/A6 movem.l (SP)+,D0-D2/A0 move.l A0,A1 bsr XLB76 move.l A1,A2 rts XPOLE:move.l A0,-(SP) move (A0)+,D3 clr D5 subq #2,D3 bmi.s KH63 swap D0 bsr SLNG01 add D1,A0 moveq #1,D1 move D1,D0 swap D0 KH61:move.l (A0)+,D2 move.l A0,A1 cmp.l (A1)+,D0 add.l D2,A0 bne.s KH62 cmp.l (A1),D1 KH62:dbeq D3,KH61 bne.s KH63 move -(A0),D5 neg D5 KH63:move.l (SP)+,A0 rts XPSING:movem.l D0/D2/A0,-(SP) move.l A6,A0 bsr LB160 exg A1,A0 bsr XADDF move.l A0,A1 movem.l (SP)+,D0/D1/A0 move D1,-(SP) bsr XSUBS move (SP)+,D0 XPSING1:bsr.s XPOLE move D5,D1 subq #1,D1 bpl XTKP move.l A0,A6 bra XPSF0 XNTG1:ext.l D2 movem.l D0-D2/A0/A6,-(SP) bsr XPSP0 move.l (SP)+,D0 addq #2,SP bsr XDEG move D5,D1 KH65:bsr XCOEFP move.l A2,A5 move D1,D2 addq #1,D2 move.l A6,A1 move #1,(A6)+ move D0,(A6)+ clr (A6)+ move D2,(A6)+ move.l A6,A2 move #$4001,(A6)+ sub (SP),D2 movem D0/D1,-(SP) beq.s KH70 bpl.s KH67 neg D2 bset #7,(A2) KH67:bset #5,(A2) move D2,D0 bsr XPOSED0 move.l A5,A0 KH68:bsr XMULP move.l A2,A1 move.l 14(SP),A0 bsr XADDP bsr XLB76 move.l 10(SP),A0 movem (SP)+,D0/D1 dbra D1,KH65 move (SP)+,D1 movem.l (SP)+,D2/A0/A2 rts KH70:move.l A5,A0 bsr XMULP move 8(SP),2(A1) move #1,6(A1) move.l A2,A0 st 6(SP) bra.s KH68 XNTG2:movem.l D2/A0,-(SP) bsr XPOLE move D5,(SP) move (A0)+,D6 subq #2,D6 bmi.s KH74 bsr SLNG01 add D1,A0 KH72:move.l (A0)+,D4 move.l A0,A1 add.l D4,A1 bsr XVAL exg A1,A0 tst D5 dbeq D6,KH72 bne.s KH74 exg A1,A0 KH73:movem (SP)+,D1/D2 move.l A0,-(SP) bsr XNTG1 movem.l D2/A2,-(SP) move.l A2,A0 bsr XPSAF1 move.l A2,-(SP) move.l 12(SP),A0 bsr XPSAF cmpi #1,(A2) beq.s KH730 neg -2(A6) KH730:move.l A2,A0 move.l (SP)+,A1 bsr XCONCP movem.l (SP),D2/A0 bsr XLB76 movem.l (SP),D2/A1/A3/A4 move.l A4,A0 bsr XMULF movem.l (SP)+,D2-D5 rts KH74:lea TCONSTU,A0 bra.s KH73 XNTG:move.l A5,-(SP) movem.l D0/A0/A6,-(SP) bsr XFFCT1 bsr XRED2 move.l A0,A2 bsr XTPOLY beq.s KH75 bsr XREDQQ KH75:bsr XPSF0 move.l A2,8(SP) KH76:move (A0)+,D6 subq #2,D6 bmi.s KH79 bsr SLNG0 add D0,A0 move.l (SP),D0 KH77:move.l (A0)+,D4 move.l A0,A1 add.l D4,A1 tst -2(A1) bpl.s KH78 bsr XDEG cmpi #1,D5 bcc.s KH82 KH78:move.l A1,A0 dbra D6,KH77 KH79:movem.l (SP),D0/A0 bsr XPSF move.l A2,A0 bsr XFRD bsr XFFCT1 bsr XRED2 move.l (SP)+,D0 bsr XNTG2 move.l A0,A1 movem.l (SP),D0/A0 bsr XADDF move.l A0,A2 move.l (SP),A0 bsr XLB76 movem.l (SP)+,A0/A1/A5 rts KH82:beq.s KH83 moveq #51,D0 trap #15 KH83:moveq #1,D1 bsr XCOEFP move.l A2,-(SP) clr D1 bsr XCOEFP move.l A2,A0 bsr XPSAF1 move.l (SP)+,A0 move.l A2,-(SP) bsr XPSAF1 move.l A2,A1 bchg #7,2(A1) move.l (SP),A0 bsr XDIVF movem.l (SP),D0/D1/A0 bsr XPSF move.l (SP),A0 move.l A2,-(SP) bsr XPSF move.l A2,A1 movem.l (SP),A0/A2/A3 move A3,D0 move D0,D2 bsr XPSING bsr XPSF move.l A2,A0 move 10(SP),D0 move TVARL,D2 bsr XNTG2 movem.l A0/A6,-(SP) tst.l D2 bpl.s KH87 move.l #"œog(",(A6)+ move.l A6,A0 move 18(SP),D2 bsr XFLIT move.l A0,A6 move.b #" ",-(A0) move.b #" ",(A6) move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 move.l 12(SP),A0 bsr XPRTAF move.l A0,A5 bsr DECCRM bne.s KH84 moveq #"+",D1 KH84:move.b D1,-(A5) movem.l (SP),D0/A5 move.l TMNOM,A0 clr.b (A0)+ move.l A0,A1 moveq #20,D1 KH85:bsr NEXTA5 move.b D0,(A0)+ dbeq D1,KH85 subq #1,A0 beq.s KH86 moveq #".",D0 move.b D0,(A0)+ move.b D0,(A0)+ move.b D0,(A0)+ KH86:move.b #")",(A0)+ clr.b (A0)+ move.l #TMIND+4,D1 moveq #$10,D0 bsr WNW KH87:movem.l (SP),A0/A6 move.l A6,A1 move 18(SP),D2 bsr LB160 move.l 12(SP),A0 bsr XPSF move.l A2,A0 addq #2,A2 cmpi #$4000,(A2) beq.s LGF080 bchg #7,(A2) LGF080: exg A1,A0 bsr XADDF move.l (SP),A1 exg A1,A0 move 18(SP),D0 bsr XSUBS movem.l A0/A6,(SP) movem.l (SP)+,A1/A6 move.l 16(SP),A0 bsr XPSF move.l A2,A0 exg A1,A0 bsr XADDF movem.l A0/A6,-(SP) move.l 8(SP),A0 bsr XPSF move.l A6,A1 move 18(SP),D2 bsr LB160 move.l 12(SP),A0 bsr XPSF move.l A2,A0 addq #2,A2 cmpi #$4000,(A2) beq.s LGF081 bchg #7,(A2) LGF081: exg A1,A0 bsr XADDF move.l 4(SP),A1 exg A1,A0 move 18(SP),D0 bsr XSUBS bchg #7,2(A0) move.l 20(SP),A0 bsr XPSF move.l A2,A1 movem.l (SP),D0/A0 bsr XADDF move.l (SP)+,A0 bsr XPSF move.l A2,A3 move.l A6,A4 movem.l (SP)+,A2/A5/A6 move.l A3,A6 movem.l (SP),D0/A0 bsr XLB76 move.l A0,8(SP) move.l A4,A6 bsr XLB76 movem.l (SP),D0/A0 bra KH76 XPSMON:move.l A6,A1 tst D2 beq.s KI58 move #1,(A6)+ move D0,(A6)+ clr (A6)+ move D2,(A6)+ bra.s KI59 KI58:clr.l (A6)+ KI59:move #$4001,(A6)+ rts XMCTE:cmpi #$4000,(A1) beq XPSP0 movem.l A0/A1/A6,-(SP) move (A0)+,D0 move D0,(A6)+ move D0,-(SP) bra.s KI61 KI60:move (A0)+,(A6)+ KI61:dbra D0,KI60 move (A0)+,D1 move D1,(A6)+ KI63:move (SP),D0 bra.s KI65 KI64:move (A0)+,(A6)+ KI65:dbra D0,KI64 move.l 6(SP),A1 movem.l D1/A0,-(SP) bsr XMULS2 movem.l (SP)+,D1/A0 bsr SLNG0 add D0,A0 dbra D1,KI63 addq #2,SP movem.l (SP)+,A0-A2 rts XDCTE:movem.l A0/A1/A6,-(SP) move.l A1,A0 bsr XINVS2 move.l A2,A1 move.l (SP),A0 bsr.s XMCTE move.l A1,A0 bsr XLB76 movem.l (SP)+,A0-A2 rts XCTDIV2:tst TCMPX beq.s XCTDIV1 movem.l A0/A1/A6,-(SP) bsr XRDC4 move.l A2,A0 bsr XPSAF1 move.l 8(SP),A0 bsr XLB76 move.l 4(SP),A0 bsr XRDC4 move.l A2,A0 bsr XRDC2 move.l A2,A1 move.l 8(SP),A0 bsr XCONCP bsr XLB76 move.l 8(SP),A0 bsr XNUMF move.l A2,A0 bsr XDEVFP move.l A2,A0 bsr XRDC4 move.l 8(SP),A0 move.l A2,-(SP) bsr XDENF move.l A2,A0 bsr XDEVFP move.l A2,A1 move.l (SP)+,A0 bsr.s XCTDIV1 bmi.s ML50 move.l 8(SP),A0 bsr XLB76 clr D0 movem.l (SP)+,A0-A2 rts ML50:movem.l (SP)+,A0/A1/A6 rts XCTDIV:bsr.s XCTDIV1 bne ERRFAT rts XCTDIV1:tst.l (A1)+ bne.s KI67 bsr XDCTE subq #4,A1 clr D1 rts KI67:subq #4,A1 movem.l A0/A1,-(SP) bsr XPSP0 move.l A2,-(SP) bsr XPSAP move.l A2,-(SP) KI68:move.l (SP),A0 tst.l (A0) bne.s KI69 cmpi #$4000,4(A0) bne.s KI69 move.l A0,A6 movem.l (SP)+,D0/D1/A0/A1 move.l D1,A2 clr D1 rts KI69:move.l 12(SP),A1 move.l (A1),D0 bsr XDEG move D5,D6 exg A1,A0 bsr XDEG move D6,D1 sub D5,D6 bmi.s KI70 movem D0/D1/D6,-(SP) move D5,D1 bsr XCOEFP move.l A2,A3 exg A1,A0 movem (SP),D0/D1 bsr XCOEFP move.l A2,A0 move.l A3,A1 bsr.s XCTDIV1 move.l A2,A0 movem (SP)+,D0/D1/D2 bmi.s KI70 bsr XPSMON bsr XMULP move.l A2,A1 move.l 12(SP),A0 bsr XMULP move.l 4(SP),A0 move.l A2,-(SP) bsr XADDP move.l (SP)+,A1 move.l (SP),A0 move.l A2,-(SP) bsr XSUBP movem.l (SP)+,D0/D1/A0 move.l A2,D1 sub.l D0,D1 add.l A0,D1 movem.l D1/A0,-(SP) move.l D0,A2 bsr XLB76 bra KI68 KI70:movem.l (SP)+,A0/A6 movem.l (SP)+,A0/A1 rts XERRM:clr D0 trap #15 VERA6A:tst.l D1 bmi.s XERRM VERA6B:move.l A6,A0 add.l D1,A6 bra.s VERA6 VERIFM0:move.l A0,A6 bra.s VERA6 VERIFM1:move.l A1,A6 bra.s VERA6 VERIFM2:move.l A2,A6 bra.s VERA6 VERIFM3:move.l A3,A6 VERA6:move.l SP,-(SP) subi.l #1000,(SP) cmp.l (SP)+,A6 bgt.s XERRM ESCAPE:rts tst.b NIVEAU7 bmi.s ESC2R tst.b CURS0 bne.s KI71 tst.b T1193+2 bpl.s KI71 movem.l D0-D2/A0-A2,-(SP) GEV17:lea T1193+3,A0 move.b (A0)+,-2(A0) move (A0),-(SP) jsr GEV11 tst (SP)+ bne.s GER82 ror TCTIM3 bcc.s GES36 jsr XTIME bne.s GES36 jsr XPTIM GES36:ror TCDAT3 bcc.s GER82 jsr XDATE jsr XPDAT GER82:movem.l (SP)+,D0-D2/A0-A2 KI71: rts ESC2R:jmp ESC2 XPSDIV:movem.l A0/A1,-(SP) tst.l (A1) bne.s KI72 cmpi #$4000,4(A1) beq ERRDV KI72:exg A1,A0 bsr XDEG move D5,D1 bsr XCOEFP exg A1,A0 ext.l D1 movem.l D0/D1/A2,-(SP) bsr XDEG move D5,(SP) sub 6(SP),D5 bcs.s KI74 addq #1,D5 move D5,4(SP) KI74:bsr XPSAP move.l A2,-(SP) bsr XPSP0 move.l A2,-(SP) KI76:movem 8(SP),D0-D3 cmpi #-1,D0 beq.s KI77 cmp D3,D0 bcc.s KI78 KI77:movem.l (SP)+,A2/A3 movem.l (SP)+,D0/D1/A4 movem.l (SP)+,A0/A1 rts KI78:exg D0,D1 move.l 4(SP),A0 bsr XCOEFP sub 14(SP),D1 move D1,D2 bsr XPSMON move.l A2,A0 bsr XMULP move.l A2,A1 move.l 24(SP),A0 bsr XMULP move.l (SP),A0 movem.l A1/A2/A6,-(SP) move.l 28(SP),A1 bsr XMULP move.l 16(SP),A0 bsr XMULP move.l A2,A0 move.l 4(SP),A1 bsr XSUBP move.l (SP)+,A0 movem.l (SP)+,D0/A1 move.l A2,-(SP) bsr XADDP movem.l (SP)+,D0/D1/A0 move.l A2,D1 sub.l D0,D1 add.l A0,D1 subq #1,(SP) movem.l D1/A0,-(SP) move.l D0,A2 bsr XLB76 bra KI76 XCONT:bsr XCFLST movem.l D0/D5/D6/A0/A2/A6,-(SP) move.l (A2),A2 move.l A2,-(SP) bsr XPSP0 KI80:move.l (SP)+,A1 move.l (A1)+,D0 bmi.s KI82 move.l -8(A1),-(SP) move.l A2,A0 bsr.s XGCD bsr XLB76 move.l 24(SP),A2 bra.s KI80 KI82:move.l 16(SP),A0 bsr XLB76 movem.l (SP)+,D0/D5/D6/A0/A2/A3 rts XGCD:movem.l A0/A1/A6,-(SP) move.l (A1),D0 bne.s KI87 move 4(A1),D1 bclr #15,D1 cmpi #$4001,D1 beq.s KI860 cmpi #$4000,D1 bne.s KI85 KI84:bsr XPSAP bra.s KI86 KI85:exg A1,A0 move.l (A1)+,D0 bne.s KI88 cmpi #$4000,(A1) beq.s KI84 addq #4,A0 clr.l (A6)+ bsr XPGCD KI86:movem.l (SP)+,A0/A1/A2 rts KI860:bsr XPSP1 bra.s KI86 KI87:exg A1,A0 tst.l (A1)+ bne.s KI88 move (A1),D1 cmpi #$4000,D1 beq.s KI84 bclr #15,D1 cmpi #$4001,D1 beq.s KI860 KI88:movem.l (SP),A0/A1 move (A0)+,D3 move (A1)+,D1 KI882:move (A0)+,D0 tst D1 beq.s KI89 move (A1)+,D2 tst D3 beq.s KI886 cmp D0,D2 bne.s KI885 subq #1,D1 subq #1,D3 bne.s KI882 tst D1 bne.s KI882 move.l (SP),A0 bsr XDEGMN move.l 4(SP),A0 movem D2/D6,-(SP) bsr XDEGMN movem (SP)+,D0/D5 cmp D6,D5 bcs.s KI89 bne.s KI886 cmp D0,D2 KI885:bcc.s KI89 KI886:move D2,D0 KI89:move.l (SP),A0 bsr XCONT move D5,D6 move.l 4(SP),A0 bsr XCONT movem D0/D5/D6,-(SP) move.l A2,A1 move.l 14(SP),A0 bsr XGCD movem (SP)+,D0/D5/D6 tst D5 beq.s KI90 tst D6 bne.s KI92 KI90:bsr XLB76 bra KI86 KI92:movem.l (SP),D3/D4 sub D5,D6 bcc.s KI93 exg D3,D4 exg A1,A0 KI93:move D0,-(SP) movem.l D4/A1/A2/A6,-(SP) move.l A0,A1 move.l D3,A0 bsr XCTDIV movem.l (SP)+,A0/A1 bsr XCTDIV movem.l (SP)+,D0/A1 move.l 10(SP),A0 move.l D0,D1 sub.l A0,D1 sub.l D1,A1 sub.l D1,A2 movem.l A1/A2,-(SP) move.l D0,A2 KI930:bsr XLB76 bsr XPSP1 movem.l A2/A6,-(SP) bsr XPSP1 bsr KJ17 cmpi #3,D2 bcs.s KI98 tst.l (A4) bne.s KI932 move 4(A4),D3 bclr #15,D3 cmpi #$4001,D3 beq.s KI98 KI932:move.l A2,A6 tst.l (A4) beq.s KI936 move.l A4,A1 move.l A3,A2 KI934:move.l A2,A0 bsr XCTDIV1 beq.s KI934 move.l A0,A3 KI936:move.l A6,A1 move.l (SP)+,A6 addq #4,SP movem.l (SP),A0/A2 bsr XLB76 move.l A0,4(SP) move.l A1,A6 move.l A3,A2 bsr XLB76 move.l 4(SP),A0 bsr XNORPE move.l 4(SP),A0 bra.s KI930 KI94:bsr KJ17 KI98:move.l A2,A6 move.l A3,A2 move.l (SP),A1 movem.l D2/A4,-(SP) bra.s KJ12 KJ10:move D2,(SP) move.l A2,A0 bsr XCTDIV move.l 12(SP),A1 move (SP),D2 KJ12:dbra D2,KJ10 movem.l (SP)+,D6/A0/A1/A3 move.l A1,-(SP) movem.l D6/A2/A6,-(SP) bsr XPSAP move.l A3,A0 bsr XPSAP move.l (SP)+,D6 move.l A2,-(SP) subq #1,D6 beq.s KJ16 subq #1,D6 bne.s KJ14 move.l A2,A6 move.l 8(SP),A0 bsr XPSAP bra.s KJ16 KJ14:move D6,-(SP) move.l A2,A0 move D6,D1 bsr XEXPP move (SP)+,D1 move.l 8(SP),A0 move.l A2,-(SP) addq #1,D1 bsr XEXPP move.l A2,A0 move.l (SP)+,A1 bsr XCTDIV KJ16:movem.l A2/A6,-(SP) movem.l 20(SP),D0/A0/A2 move.l D0,A6 bsr XLB76 move.l A0,28(SP) movem.l 12(SP),A2/A6 bsr XLB76 move.l A0,16(SP) move.l 8(SP),A6 bsr XLB76 movem.l (SP)+,A2/A6 addq #8,SP move.l A0,4(SP) bsr XLB76 bra KI94 KJ17:movem.l 12(SP),A0/A1 move 20(SP),D0 bsr XPSDIV tst.l (A3) bne.s KJ178 cmpi #$4000,4(A3) bne.s KJ176 movem.l (SP)+,D1-D4/A0 move.l D2,A6 bsr XCONT move.l A2,A1 bsr XCTDIV move.l A2,A1 addq #2,SP move.l 8(SP),A0 bsr XMULP bsr XLB76 bra KI86 KJ176:movem.l (SP)+,D0-D2/A6 addq #6,SP bra KI86 KJ178:movem.l D2/A0/A2/A3,-(SP) move.l A3,A0 bsr XDEG movem.l (SP)+,D2/A0/A2/A3 tst D5 beq.s KJ176 rts XNORPE:move.l A6,A1 move #$4001,(A6)+ movem.l A0/A1,-(SP) move (A0)+,D2 bne.s KJ18 cmpi #$4000,2(A0) beq.s KJ22 KJ18:add D2,D2 add D2,A0 move (A0)+,D1 add D2,A0 movem.l A0/A1,-(SP) bra.s KJ21 KJ20:bsr SLNG0 add D0,A0 add D2,A0 move.l (SP),A1 movem.l D1/D2/A0,-(SP) exg A1,A0 bsr XDIVS2 move.l A2,A1 move.l 16(SP),A0 bsr SIMF move.l 16(SP),A0 bsr XMUL1 move.l A2,16(SP) movem.l (SP)+,D1/D2/A0 KJ21:dbra D1,KJ20 movem.l (SP)+,A0/A1 exg A1,A0 bsr XDIVS2 move.l 4(SP),A0 bsr XLB76 KJ22:movem.l (SP)+,A0/A1 bsr XMCTE move.l A2,A0 rts XCONT1:movem.l D2/A0/A6,-(SP) bsr.s XNORPE bsr XPSP1 move.l (SP)+,D0 tst D0 beq.s KJ24 bsr XCONT tst.l (A2) bne.s KJ24 cmpi #$4000,4(A2) bne.s KJ24 bsr XPSP1 KJ24:move.l A2,A0 move.l 4(SP),A1 bsr XDCTE move.l A1,A0 bsr XLB76 movem.l (SP)+,A0/A2 rts XCFLST:bsr XDEG movem D5/D6,-(SP) move.l A6,A1 addq #4,A6 move.l A6,(A1)+ move.l #-1,(A6)+ move D5,D1 KJ36:addq #8,A6 bsr XCOEFP move.l A6,D2 sub.l A2,D2 move.l D2,-(A2) move.l A1,A4 KJ38:move.l A4,A3 move.l -(A3),A4 cmp.l (A4),D2 bcc.s KJ38 move.l A2,(A3) move.l A4,-(A2) dbra D1,KJ36 lea -4(A1),A2 movem (SP)+,D5/D6 rts XDEGMN:move.l A0,A1 move (A1)+,D1 subq #1,D1 moveq #-1,D6 KJ40:movem D1/D2,-(SP) move (A1)+,D0 bsr XDEG movem (SP)+,D1/D2 cmp D6,D5 bcc.s KJ42 move D5,D6 move D0,D2 KJ42:dbra D1,KJ40 rts XNUMF:movem.l A0/A6,-(SP) move (A0)+,D6 move.l A0,A2 bsr SLNG0 add D0,A0 move.l A0,A3 addq #2,A6 clr D5 KJ44:addq #1,D5 bsr.s KJ48 KJ45:subq #1,D6 beq.s KJ46 move.l A3,A2 add.l (A3)+,A3 tst -2(A3) bmi.s KJ45 bra.s KJ44 KJ46:movem.l (SP)+,A0/A2 move D5,(A2) rts KJ48:move.l A3,D1 sub.l A2,D1 add.l D1,A6 bsr VERA6 sub.l D1,A6 exg A6,A0 bsr LB76 exg A6,A0 rts XDENF:movem.l A0/A6,-(SP) move (A0)+,D6 bsr SLNG0 lea -2(A0,D0.W),A3 move.l #$4001,(A6)+ clr D5 KJ50:addq #1,D5 KJ51:subq #1,D6 beq.s KJ46 addq #2,A3 move.l A3,A2 add.l (A3)+,A3 move -(A3),D4 bpl.s KJ51 bsr.s KJ48 neg D4 move D4,(A6)+ bra.s KJ50 XCOMF:movem.l A0/A1/A6,-(SP) move (A0)+,D6 bsr SLNG0 add D0,A0 move (A1)+,D5 bsr SLNG1 add D1,A1 move.l #$4001,(A6)+ clr D4 KJ52:addq #1,D4 KJ53:subq #1,D5 beq.s KJ61 KJ54:subq #1,D6 beq.s KJ61 KJ55:movem D3-D6,-(SP) bsr XCMPP movem (SP)+,D3-D6 bne.s KJ59 move.l A0,A2 add.l (A0)+,A0 add.l (A1)+,A1 move.l A0,A3 move -(A3),D2 move -2(A1),D1 tst D3 bmi.s KJ56 cmp D1,D2 bne.s KJ57 tst D3 bne.s KJ53 KJ56:bsr KJ48 move D2,(A6)+ bra.s KJ52 KJ57:blt.s KJ58 move D1,D2 KJ58:tst D3 beq.s KJ53 bra.s KJ56 KJ59:bcs.s KJ60 add.l (A0)+,A0 bra.s KJ54 KJ60:add.l (A1)+,A1 subq #1,D5 bne.s KJ55 KJ61:movem.l (SP)+,A0-A2 move D4,(A2) rts XCOM1:moveq #-1,D3 bsr.s XCOMF movem.l A0-A2/A6,-(SP) move.l A2,A0 bsr XINVF move.l A2,A0 move.l (SP),A1 bsr XCONCP bsr XLB76 movem.l (SP)+,A0-A3 rts XREDP: XREDFF:cmpi #1,(A0) beq KJ66 cmpi #1,(A1) beq KJ66 bsr XESIF movem.l A0-A2/A6,-(SP) exg A1,A0 bsr XESIF move.l 8(SP),A1 moveq #1,D0 cmp (A1),D0 bne.s KJ62 cmp (A2),D0 beq.s KJ63 KJ62:move.l (SP),A0 bsr XCONCI movem.l A2/A6,-(SP) move.l 12(SP),A0 move.l 20(SP),A1 bsr XCONCI move.l 16(SP),A0 bsr XPSF move.l 20(SP),A0 movem.l A2/A6,-(SP) bsr XPSF move.l A6,A3 move.l 16(SP),A0 movem.l 8(SP),A2/A6 bsr XLB76 move.l A0,20(SP) move.l (SP)+,A6 bsr XLB76 move.l A0,20(SP) move.l (SP)+,A6 bsr XLB76 move.l A0,20(SP) move.l A3,A6 bsr XLB76 addq #8,SP KJ63:move.l 4(SP),A0 move.l 12(SP),A1 bsr XCONCP move.l (SP),A0 move.l A2,A1 bsr XCOM1 move.l A3,-(SP) move.l A2,A0 move.l 12(SP),A1 bsr XCONCP move.l A2,A1 move.l 8(SP),A0 bsr XCOM1 movem.l A1-A3/A6,-(SP) move.l A1,A0 bsr XPSF move.l 4(SP),A0 move.l 32(SP),A1 bsr XCONCP movem.l A2/A6,-(SP) move.l 8(SP),A6 movem.l 24(SP),A0/A2 exg A2,A0 bsr XLB76 move.l A0,32(SP) movem.l 16(SP),A2/A6 bsr XLB76 move.l A0,36(SP) move.l (SP)+,A6 bsr XLB76 move.l A0,36(SP) move.l (SP)+,A6 bsr XLB76 lea 20(SP),SP KJ64:movem.l (SP),A0/A1 cmpi #1,(A0) bne.s KJ67 KJ65:move.l 8(SP),A1 bsr XCONCP movem.l A2/A6,-(SP) move.l 12(SP),A0 move.l 20(SP),A1 bsr XCONCP move.l A6,A3 movem.l (SP)+,A2/A6 move.l (SP),A0 bsr XLB76 move.l A0,A1 move.l A3,A6 bsr XLB76 movem.l (SP)+,A0/A2-A4 KJ66:rts KJ67:cmpi #1,(A1) beq.s KJ65 addq #2,A0 addq #2,A1 bsr SLNG0 add D0,A0 bsr SLNG1 add D1,A1 cmpm.l (A0)+,(A1)+ bcs KJ69 move.l A0,A1 move.l A0,A2 add.l -(A0),A2 move -(A2),D0 movem.l A0/A2,-(SP) move.l 12(SP),A0 bsr XREDPF movem.l (SP)+,A0/A1 move SR,-(SP) movem.l A2/A3/A6,-(SP) bsr KJ690 move.l 8(SP),A0 move.l 14(SP),A1 bsr XCONCP move.l (SP)+,A0 movem.l A2/A6,-(SP) bsr XPSF move.l 8(SP),A0 move.l 26(SP),A1 bsr XCONCP movem.l A2/A6,-(SP) move.l 38(SP),A0 bsr XPSF KJ68:move.l A6,-(SP) move.l 30(SP),A0 movem.l 12(SP),A2/A6 bsr XLB76 move.l A0,34(SP) move.l 4(SP),A6 bsr XLB76 move.l A0,38(SP) move.l 8(SP),A6 bsr XLB76 move.l A0,42(SP) move.l (SP)+,A6 bsr XLB76 lea 24(SP),SP move (SP)+,SR beq KJ64 bra KJ63 KJ69:move.l A1,A0 move.l A0,A2 add.l -(A0),A2 move -(A2),D0 movem.l A0/A2,-(SP) move.l 8(SP),A0 bsr.s XREDPF movem.l (SP)+,A0/A1 move SR,-(SP) movem.l A2/A3/A6,-(SP) bsr.s KJ690 move.l (SP)+,A0 bsr XPSF movem.l A2/A6,-(SP) move.l 12(SP),A0 move.l 22(SP),A1 bsr XCONCP move.l 26(SP),A0 bsr XPSF movem.l A2/A6,-(SP) move.l 16(SP),A0 move.l 38(SP),A1 bsr XCONCP bra KJ68 KJ690:move.l #$24001,(A6)+ move.l A0,A2 move.l A1,A3 bsr KJ48 move (A3),D0 neg D0 move D0,(A6)+ rts XREDPF:movem.l D0/A0/A1/A6,-(SP) bsr XPSF move.l A6,-(SP) move.l A2,A0 move (A0)+,D5 subq #2,D5 bpl.s KJ71 subq #8,SP KJ695:addq #8,SP KJ70:move.l (SP),A6 move.l 12(SP),A0 bsr XPSAF move.l A2,A0 move 6(SP),D1 bsr XEXPF movem.l (SP)+,A0/A1 move.l A0,A3 bsr XLB76 movem.l (SP)+,A0-A2 clr D0 rts KJ71:bsr SLNG0 add D0,A0 movem.l D5/A0,-(SP) move.l 20(SP),A1 KJ72:move.l (A0)+,D0 move.l A0,A2 add.l D0,A2 move.l A1,A3 subq.l #2,D0 KJ73:subq.l #2,D0 bmi.s KJ695 cmpm (A0)+,(A3)+ beq.s KJ73 move.l A2,A0 dbra D5,KJ72 movem.l (SP)+,D5/A0 KJ75:move.l (A0)+,D0 move.l A0,A2 add.l D0,A2 movem.l D5/A2,-(SP) bsr XREDPP movem.l (SP)+,D5/A0 bne.s KJ76 dbra D5,KJ75 bra.s KJ70 KJ76:move -(A0),D1 move.l 16(SP),A0 addq #1,D5 sub D5,(A0) movem.l A3/A6,-(SP) move.l A2,A0 bsr XEXPF move.l A2,A0 move.l 24(SP),A1 bsr XCONCP movem.l (SP),A0/A1 movem.l A2/A6,-(SP) bsr XCOM1 movem.l A3/A6,-(SP) move.l 32(SP),A0 move.l 40(SP),A1 addi #1,(A1) bsr XCONCI move.l A6,A4 move.l 40(SP),A0 movem.l 8(SP),A2/A6 bsr XLB76 move.l A0,A1 move.l (SP)+,A6 bsr XLB76 move.l A0,A3 move.l (SP)+,A6 bsr XLB76 addq #8,SP movem.l A1/A3/A6,(SP) move.l A4,A6 bsr XLB76 movem.l 4(SP),A0/A1 bsr XREDFF move.l 24(SP),A0 bsr XCONCP movem.l (SP)+,A0/A1/A3 movem.l A2/A6,-(SP) bsr XCONCP move.l A2,A0 move 10(SP),D1 bsr XEXPF movem.l A2/A6,-(SP) move.l 28(SP),A0 movem.l 8(SP),A2/A6 bsr XLB76 move.l A0,A3 movem.l (SP)+,A2/A6 bsr XLB76 movem.l (SP)+,D0-D2/A0/A1/A2 moveq #1,D0 rts XREDPP:bsr XCMPP1 beq.s KJ78 bsr XGCD tst.l (A2) bne.s KJ79 move.l A2,A6 KJ78:rts KJ79:movem.l A0-A2,-(SP) move.l A2,A1 bsr XCTDIV move.l A2,A0 bsr.s XREDPP bne.s KJ80 bsr XPSAF move.l 8(SP),A0 movem.l A0/A2,-(SP) bsr XPSAF move.l A2,A3 movem.l (SP)+,A1/A2 KJ80:move.l 4(SP),A0 movem.l A2/A3,-(SP) bsr XCTDIV move.l A2,A1 movem.l (SP),D0/A0 moveq #1,D0 bsr XREDPF move.l A2,A0 movem.l (SP)+,A1/A2 move.l A3,-(SP) bsr XCONCP move.l (SP)+,A1 movem.l A2/A6,-(SP) bsr XCONCP move.l A6,A3 movem.l (SP)+,A2/A6 move.l 8(SP),A0 bsr XLB76 move.l A3,A6 move.l A0,A3 bsr XLB76 movem.l (SP)+,A0-A2 moveq #1,D0 rts XESIF:movem.l A0/A1/A6,-(SP) move (A0)+,D6 bsr SLNG0 lea (A0,D0.W),A3 move.l #$4001,(A6)+ clr D5 KJ82:addq #1,D5 KJ83:subq #1,D6 beq.s KJ84 move.l A3,A2 add.l (A3)+,A3 cmpi #1,4(A2) bne.s KJ83 tst 8(A2) bne.s KJ83 bsr KJ48 bra.s KJ82 KJ84:movem.l (SP)+,A0-A2 move D5,(A2) rts XCONCI:movem.l A0/A1/A6,-(SP) move.l A1,A0 bsr XINVF move.l A2,A1 move.l (SP),A0 bsr XCONCP move.l 8(SP),A0 bsr XLB76 movem.l (SP)+,A0-A2 rts XMULFA:lea XMULF(PC),A3 KK32:movem.l A0/A1/A6,-(SP) bsr XPSF move.l A1,A0 bsr XPSF move.l A2,A1 move.l 8(SP),A0 jsr (A3) movem.l (SP)+,A0/A1/A2 rts XADDFA:lea XADDF(PC),A3 bra.s KK32 XSUBFA:lea XSUBF(PC),A3 bra.s KK32 XDIVFA:lea XDIVF(PC),A3 bra.s KK32 XRULE1:movem.l A0/A1/A6,-(SP) move (A0)+,D0 move (A1)+,D1 move D0,(A6)+ add D1,D1 lea 2(A1,D1.W),A3 add D1,A6 bsr VERA6 sub D1,A6 KK43:subq #1,D0 bmi.s KK45 move (A0)+,D2 clr (A6)+ cmp (A1),D2 bne.s KK43 addq #2,A1 move (A3)+,-2(A6) subq #2,D1 bne.s KK43 KK44:subq #1,D0 bmi.s KK47 clr (A6)+ addq #2,A0 bra.s KK44 KK45:tst D1 beq.s KK47 movem.l (SP)+,A0/A1/A6 bra XPSAP KK47:bsr XPSP0 move (A0)+,D0 KK49:movem.l D0/A2/A6,-(SP) move.l 20(SP),A1 move (A1)+,D1 move D1,D0 asl #3,D1 add D1,A6 bsr VERA6 sub D1,A6 move.l A6,A2 subq #1,D0 move D0,D1 KK51:move (A0)+,(A6)+ dbra D0,KK51 clr D2 KK53:move.l A2,A4 move.l A1,A3 move D1,D0 KK54:move (A3)+,D3 sub D3,(A4)+ bmi.s KK55 dbra D0,KK54 addq #1,D2 bra.s KK53 KK55:neg D0 add D1,D0 KK56:move -(A3),D3 add D3,-(A4) dbra D0,KK56 move.l A6,A1 addq #2,A6 tst D2 beq.s KK57 clr (A6)+ KK57:move.l A2,A4 move.l 12(SP),A3 addq #2,A3 move D1,D0 KK58:tst (A4)+ beq.s KK59 move (A3),(A6)+ KK59:addq #2,A3 dbra D0,KK58 move.l A6,D0 sub.l A1,D0 asr D0 subq #1,D0 move D0,(A1) clr (A6)+ tst D2 beq.s KK60 move D2,(A6)+ KK60:move (A2)+,D0 beq.s KK61 move D0,(A6)+ KK61:dbra D1,KK60 bsr XPOSE movem.l (SP),D0/A0 move.l A4,8(SP) bsr XADDP bsr XLB76 movem.l (SP)+,D0/A2/A3 move.l A3,A0 dbra D0,KK49 move.l 8(SP),A0 bsr XLB76 movem.l (SP)+,A0-A2 rts XRULE2:cmpi #1,(A1) bne.s KK63 cmpi #1,6(A1) bne.s KK63 move.l (A1),D0 exg A2,A1 bsr XDEG move D5,-(SP) bsr XSBSP move (SP)+,D5 rts KK63:movem.l A2/A6,-(SP) bsr XRULE1 move.l A2,A0 move.l (SP)+,A1 clr D0 bsr XDEG move D5,-(SP) bsr XSBSP move (SP)+,D5 move.l (SP),A0 bsr XLB76 move.l (SP)+,A2 rts XRULE3:lea XRULE2(PC),A3 XGEN:movem.l A0-A3/A6,-(SP) clr.l -(SP) move (A0)+,D1 bne.s KK65 jsr (A3) ext.l D5 move.l D5,(SP) KK64:movem.l (SP)+,D5/A0-A4 exg A4,A2 rts KK65:move #1,(A6)+ subq #1,D1 bsr XPOSE bra.s KK68 KK66:move.l (A4)+,D0 move.l A4,A0 add.l D0,A4 movem.l D1/A4,-(SP) movem.l 16(SP),A1-A3 jsr (A3) ext.l D5 add.l D5,8(SP) move.l A2,A0 move.l 4(SP),A1 move -(A1),D1 bsr XEXPF move.l A2,A1 move.l 28(SP),A0 bsr XMULF movem.l (SP)+,D1/A4 KK68:dbra D1,KK66 bra.s KK64 XRULE4:bsr XPSF KK69:clr.l D5 KK70:move.l A2,A0 movem.l D5/A0/A3,-(SP) bsr XFRD1 movem.l (SP)+,D5/A2/A3 tst.l (A3) beq.s KK72 move.l A2,A0 movem.l (A3)+,A1/A2 movem.l D5/A0/A3,-(SP) bsr XRULE3 add.l (SP)+,D5 bsr XLB76 movem.l (SP)+,A2/A3 bra.s KK70 KK72:rts XRULE5:move.l A3,-(SP) bsr.s XRULE4 KK74:move.l (SP)+,A3 tst.l D5 beq.s KK72 move.l A3,-(SP) bsr.s KK69 bra.s KK74 XNLIT:move.l A4,-(SP) lea GAN32(PC),A4 bsr.s XNLITF move.l (SP)+,A4 rts XNLITF:movem.l A0/A6,-(SP) move (A0)+,D6 move.l A0,A2 bsr SLNG0 add D0,A0 move.l A0,A3 addq #2,A6 clr D5 KK76:addq #1,D5 bsr KJ48 KK77:subq #1,D6 beq KJ46 move.l A3,A2 move.l (A3)+,D0 move.l A3,A0 add.l D0,A3 jsr (A4) beq.s KK77 bra.s KK76 XCLIT:move.l A4,-(SP) lea GAN30(PC),A4 bsr.s XCLITF move.l (SP)+,A4 rts GAN30:move (A0)+,D0 subq #1,D0 bne.s KK82 tst 2(A0) beq.s GAN31 KK82:cmp (A0)+,D2 dbeq D0,KK82 rts GAN31:moveq #1,D0 rts GAN32:move (A0)+,D0 subq #1,D0 bra.s KK82 XCLIT1:lea GAN32(PC),A4 XCLITF:movem.l A0/A6,-(SP) move (A0)+,D6 bsr SLNG0 lea (A0,D0.W),A3 move.l #$4001,(A6)+ moveq #1,D5 bra.s KK81 KK80:addq #1,D5 bsr KJ48 KK81:subq #1,D6 beq KJ46 move.l A3,A2 move.l (A3)+,D0 move.l A3,A0 add.l D0,A3 jsr (A4) bne.s KK81 bra.s KK80 XDEGF:bsr.s XCLIT move D2,D0 bsr XPOLE neg D5 ext.l D5 movem.l D5/A2,-(SP) move.l A2,A0 move (A0)+,D6 bsr SLNG01 add D1,A0 KK83:subq #1,D6 beq.s KK84 move.l (A0)+,D1 lea -2(A0,D1.L),A1 bsr XDEG move.l A1,A0 move (A0)+,D1 bmi.s ERRNDV mulu D5,D1 add.l D1,(SP) bra.s KK83 KK84:movem.l (SP)+,D3/A6 rts ERRNDV:moveq #53,D0 trap #15 INOMI:lea TMIND,A0 move #INDEXP,D0 PA10:clr.l (A0)+ dbra D0,PA10 lea TBNOMI.L,A0 PA12:move.l A0,A1 move.l (A0)+,D0 bmi.s PA17 clr D2 move.b (A0)+,D2 moveq #0,D0 move.b (A0)+,D1 PA13:rol.l #7,D0 bclr #5,D1 eor.b D1,D0 move.b (A0)+,D1 beq.s PA15 cmpi.b #32,D1 bne.s PA13 PA15:andi.l #$2FFFFFF,D0 divu #INDEXP,D0 swap D0 add D0,D0 add D0,D0 ext.l D0 addi.l #TMIND+4,D0 PA16:move.l D0,A2 move.l -(A2),D0 bne.s PA16 clr.l (A1)+ move.l A1,(A2) lea (A1,D2.W),A0 bra.s PA12 PA17:rts INITS:lea TMNDES,A0 move.l (A0)+,A6 move #$7F7F,(A6)+ clr (A6)+ move.l A6,(A0)+;TMPROCA clr.l (A6)+ move.l A6,(A0)+;TMPROC move.l PILEPROC,D0 asr.l #3,D0 PA23:clr.l (A6)+ clr.l (A6)+ subq.l #1,D0 bhi.s PA23 move.l A6,(A0)+;TMFOR clr.l (A6)+ move.l A6,(A0)+;TMEXC move.l A6,(A0)+;TMEXCP clr.l TFONR move #$73,GVALU move.l TLIMIT,TPILE clr.l TCACHE rts INITR:jsr XMKILL jsr IMOORE0 lea TMIND,A0 move #INDEXP,D0 PA20:addq #4,A0 move.l A0,D1 PA21:move.l D1,A2 move.l -(A2),D1 beq.s PA22 cmp.l A0,D1 bcs.s PA21 clr.l (A2) PA22:dbra D0,PA20 move.l TDHAUT,A6 move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 add.l TAMPSRC,A6 move.l A6,TMNDES bsr INITS move.l PILEEXEC,D0 move #$1A1A,D1 bra.s PA240 PA24:move D1,(A6)+ PA240:subq.l #2,D0 bpl.s PA24 move.l A6,(A0)+;TMCOND move.l A6,(A0)+;TMCONDP move PILECOND,D0 PA25:clr (A6)+ dbra D0,PA25 move D0,(A6)+ move MEMFILES,D0 subq #1,D0 move.l A6,(A0)+;TMMEM GA22:clr (A6)+ clr.l (A6)+ dbra D0,GA22 move D0,(A6)+ move RFILES,D0 subq #1,D0 move.l A6,(A0)+;TMRAN GA23:clr (A6)+ clr.l (A6)+ dbra D0,GA23 move D0,(A6)+ move.l A6,(A0)+;TMENU move.l TAMPMENU,D0 lsr.l #2,D0 GA230:clr.l (A6)+ subq.l #1,D0 bpl.s GA230 move.l A6,(A0)+;TMREM move PILEREM,D2 move D2,D0 asl #2,D0 move D0,(A6)+ moveq #4,D0 move D2,D1 bra.s GAI23 GAI22:move D0,(A6)+ subq #4,D0 move D0,(A6)+ addq #8,D0 GAI23:dbra D1,GAI22 clr (A6)+ move.l A6,(A0)+;TMREM1 bra.s GAI25 GAI24:clr.l (A6)+ GAI25:dbra D2,GAI24 clr.l (A6)+ move.l A6,(A0)+;TMNOM add.l TAMPNOM,A6 move.l A6,(A0)+;TMVARP clr.l (A6)+ move PILEVAR,D0 move D0,D1 moveq #PILEINT,D2 move D2,TVARDC add PILECOND,D2 clr TCMPX move D2,RFILES0 add RFILES,D2 move D2,REMZER add PILEREM,D2 move D2,-(SP) add D2,D0 PA27:clr.l (A6)+ dbra D0,PA27 move.l A6,(A0)+;TMVAR move.l SP,(A6)+ move.l #10,TBASET move #$400A,(A0)+;TBASE clr PRIOR addq #1,D2 move D2,(A0)+;TVARN0 move D2,(A0)+;TVARND move D2,(A0)+;TVARN add D1,D2 move D2,TVARUM move D2,(A0)+;TVARU move #$7FFF,(A0)+;TVARLS move #1,(A0)+;TVARL addq #2,D2 move D2,(A0)+;TVARV clr.l (A0)+;TPPI clr.l (A0)+;TPPL clr (A0)+;TILDE clr.l ORIGINX-2 clr.l ORIGINY-2 move.l TMVAR,A2 move.l #VARCMP,-(A2) moveq #1,D2 move.l D2,TFRMTM clr.l TFRMTL move (SP)+,D1 subq #2,D1 PA29:move.l A6,-(A2) addq #1,D2 move D2,(A6)+ cmpi #5,D2 bcs.s PA292 clr.l (A6)+ bra.s PA294 PA292:move.l #4,(A6)+ move.l #$14000,(A6)+ PA294:bsr VERA6 dbra D1,PA29 move.l A6,(A0)+;TVALA6 clr TPRECL moveq #10,D3; PRECISION bsr MC534 clr.l TFRMTX-2 clr TPREC3 bsr XREPIC move.l A6,TVALA6 st TNEWLB jsr PLMOD1 jsr XCLOSEA lea TYPCAR-2,A2 clr (A2)+ clr.b (A2)+ move #254,D0 PA30:move.b #$20,(A2)+ dbra D0,PA30 lea TYPCAR+$30,A2 clr.b CARCOM-$30(A2) moveq #9,D0 PA31:move.b #$A6,(A2)+ dbra D0,PA31 lea TYPCAR+$41,A2 moveq #25,D0 move #$E6,D2 PA32:move.b D2,32(A2) move.b D2,(A2)+ dbra D0,PA32 lea TYPCAR,A2 move.b #$AE,$24(A2) move.b #$B6,$21(A2) move.b #$B6,$25(A2) lea TYPCAR1,A0 bra.s PA311 PA310:move.b #$A6,(A2,D0.L) PA311:moveq #0,D0 move.b (A0)+,D0 bne.s PA310 bra.s PA313 PA312:move.b #6,(A2,D0.L) PA313:move.b (A0)+,D0 bne.s PA312 jsr AESVDIPB jsr VDIINIT bra XCLRTIM DECCH:move.b (A5)+,D0 cmpi.b #"a",D0 bcs.s LA10B subi #32,D0 LA10B:subi #"0",D0 cmpi.b #10,D0 bcs.s LA10 subi #7,D0 cmpi.b #10,D0 bcs.s LA10A LA10:cmp.b TBASE+1,D0 bcs.s LA11 LA10A:subq #1,A5 clr D0 LA11:rts DECCRVE:bsr.s DECCRV bne ERRIS rts DECCRVS:bsr.s DECCRV beq.s LA11 DECCRPV:moveq #";",D1 bra.s DECCR DECCRPG:moveq #"(",D1 bra.s DECCR DECCRPD:moveq #")",D1 bra.s DECCR DECCRV:moveq #",",D1 bra.s DECCR DECCRE:moveq #"=",D1 bra.s DECCR DECCRF:moveq #"^",D1 bra.s DECCR DECCRS:moveq #"*",D1 bra.s DECCR DECCRD:moveq #"/",D1 bra.s DECCR DECCRA:moveq #"<",D1 bra.s DECCR DECCRB:moveq #">",D1 bra.s DECCR DECCRG:moveq #$22,D1 bra.s DECCR DECCRAL:move #$A6,D1 bra.s DECCR DECCR22:moveq #22,D1 bra.s DECCR DECCRAZ:move #$91,D1 bra.s DECCR DECCRLL:move #"Ý",D1 bra.s DECCR DECCRAS:move #$9F,D1 bra.s DECCR DECCRBN:moveq #"%",D1 bra.s DECCR DECCRAP:moveq #"~",D1 bra.s DECCR DECCRPH:moveq #"[",D1 bra.s DECCR DECCRPE:moveq #"]",D1 bra.s DECCR DECCRVA:moveq #"&",D1 bra.s DECCR DECCRN:moveq #"$",D1 bra.s DECCR DECCRP:moveq #".",D1 bra.s DECCR DECCRPL:moveq #"+",D1 bra.s DECCR DECCRM:moveq #"-",D1 DECCR:bsr NEXTA5 cmp.b D1,D0 beq.s LA12 subq #1,A5 LA12:rts DECTMN:bsr NEXTA5 subq #1,A5 cmpi.b #CARCOM,D0 beq.s LA120 tst.b D0 LA120:rts DECN: STbkslDECN:clr D6 move.l A0,-(SP) bsr XPOSEZ bsr NEXTA5 subq #1,A5 LA14:bsr DECCH beq.s LA16 addq #1,D6 movem.l A2/A5,-(SP) move.l A2,A0 lea TBASE,A1 movem D0/D6,-(SP) bsr XMUL1 movem (SP)+,D0/D6 move.l A2,A0 ext D0 bsr XPOSED0 move.l A2,A1 bsr XADD1 movem.l (SP)+,A0/A5 bsr XEFFC1 bra.s LA14 LA16:move.l (SP)+,A0 tst D6 rts DECP:clr.b DECPF bsr.w DECCRN bne.s LA18 moveq #16,D2 LA17:move TBASE,-(SP) move.b D2,TBASE+1 bsr.s LA19 move SR,D0 move (SP)+,TBASE move D0,SR rts LA18:moveq #2,D2 bsr DECCRBN beq.s LA17 moveq #10,D2 bsr DECCRLL beq.s LA17 LA19:bsr DECN move.l A2,A0 bne.s LA20 bsr DECCRP bne LA31 bsr DECN beq LA31 bra.s LA22 LA20:bsr DECCRP bne.s LA24 bsr DECN LA22:move.l A5,-(SP) movem.l A0/A2/A6,-(SP) move D6,D0 bsr XPOSED0 move.l A2,A1 lea TBASE,A0 bsr XEXPS2 move.l A2,A0 move.l (SP),A1 move.l A0,8(SP) bsr XMUL1 move.l A2,A0 move.l 4(SP),A1 bsr XADD1 move.l A2,A0 move.l 8(SP),A1 bsr XDIVS2 move.l (SP)+,A0 addq #8,SP bsr XEFFC move.l A2,A0 move.l (SP)+,A5 LA24:bsr DECCRAP seq DECPF moveq #"|",D1 bsr DECCR beq.s LA254 bclr #5,D0 cmpi.b #"E",D0 bne.s LA32 move.l A5,-(SP) addq #1,A5 bsr DECCRM beq.s LA252 subi.b #"+",D0 beq.s LA250 subq #5,D0 cmpi.b #10,D0 bcs.s LA250 move.l (SP)+,A5 bra.s LA32 LA250:move.l A0,(SP) bra.s LA28 LA252:move.l A0,(SP) bra.s LA258 LA254:move.l A0,-(SP) bsr DECCRM bne.s LA28 LA258:bsr DECN beq.s LA30 cmpi #$4000,(A2) beq.s LGF083 bchg #7,(A2) LGF083: LA26:lea TBASE,A0 move.l A2,A1 move.l A5,-(SP) bsr XEXPS2 move.l 4(SP),A0 move.l A2,A1 bsr XMULS2 move.l (SP)+,A5 move.l (SP)+,A0 bsr XEFFC bsr DECCRAP bne.s LA33 st DECPF bra.s LA33 LA28:bsr DECCRPL bsr DECN bne.s LA26 LA30:move.l (SP)+,A0 LA31:move.l A0,A6 clr D0 rts LA32:move.l A0,A2 LA33:moveq #1,D0 rts PA40:subq #1,A5 rts DECAN:move.l TMNOM,A0 lea TYPCAR-1,A2 move.b (A2)+,(A0)+ move.l A0,A1 clr D0 bsr NEXTA5 btst #6,(A2,D0.W) beq.s PA40 moveq #0,D2 moveq #31,D1 PA41:move.b D0,(A0)+ bclr #5,D0 rol.l #7,D2 eor.b D0,D2 move.b (A5)+,D0 tst.b (A2,D0.W) bpl.s PA410 dbra D1,PA41 ERRVL:moveq #6,D0 trap #15 PA410:subq #1,A5 clr.b (A0) andi.l #$2FFFFFF,D2 divu #INDEXP,D2 swap D2 add D2,D2 add D2,D2 ext.l D2 addi.l #TMIND+4,D2 move.l D2,-(SP) PA42:move.l D2,A3 move.l -(A3),D2 beq.s PA47 move.l D2,A3 move.b (A3)+,D1 beq.s PA43 moveq #$20,D1 PA43:move.l A1,A0 PA44:move.b (A0)+,D0 beq.s PA46 or D1,D0 cmp.b (A3)+,D0 beq.s PA44 bra.s PA42 PA45:cmpi.b #" ",D0 bne.s PA42 PA46:move.b (A3)+,D0 bne.s PA45 move.l (SP)+,D1 moveq #1,D0 rts PA47:move.l (SP)+,D1 moveq #-1,D0 rts XFLIT1:movem.l D0-D7/A1-A5,-(SP) lea TMIND,A2 move #INDEXP,D4 PA50:addq #4,A2 move.l A2,D3 PA51:move.l D3,A3 move.l -(A3),D3 beq.s PA59 move.l D3,A3 addq #1,A3 move.l A3,A1 PA52:tst.b (A3)+ bne.s PA52 move.b (A3),D0 andi #$F0,D0 cmp D5,D0 bne.s PA51 move.b (A3)+,D0 move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 move (A3)+,D1 sub D2,D1 bcs.s PA51 move.l A3,A5 move D0,D6 andi #$F,D6 move.l D0,-(SP) moveq #1,D0 bra.s PA54 PA53:mulu (A5)+,D0 PA54:dbra D6,PA53 cmp D0,D1 movem.l (SP)+,D0/D0 bcc.s PA51 move D0,D2 PA55:move.b (A1)+,(A0)+ bne.s PA55 andi #$F,D2 beq.s PA58 move.b #"(",-1(A0) subq #1,D2 bsr.s XIND1 PA56:move (A1)+,D0 bsr XPREX move.b #",",(A0)+ dbra D2,PA56 move.b #")",-1(A0) PA57:clr.b (A0)+ PA58:movem.l (SP)+,D0-D7/A1-A5 rts PA59:dbra D4,PA50 bra ERRFAT XFLIT:cmp TVARL,D2 bcs.s PA600 cmp TVARLS,D2 ble.s ERRLOC PA60:move.l D5,-(SP) moveq #$10,D5 bsr XFLIT1 move.l (SP)+,D5 rts PA600:tst D2 bne.s PA60 clr.b (A0)+ rts XIND1:lea TVARI1,A1 move D2,D0 moveq #1,D3 bra.s LA61 LA60:mulu (A3)+,D3 LA61:move D3,(A1)+ dbra D0,LA60 move D2,D0 LA62:move -(A1),D3 moveq #-1,D4 LA63:addq #1,D4 sub D3,D1 bpl.s LA63 add D3,D1 move D4,(A1) dbra D0,LA62 rts ERRLOC:moveq #76,D0 trap #15 WNWLOC:lea TMFOR,A0 move.l (A0),A4 lea -100(A4),A4 move.l -(A0),A2 cmp.l A4,A2 bge ERRGR move.l TMNDES,D5 tst D0 bpl.s MN10 clr (A2)+ MN11:move.l D1,A3 move.l -(A3),D1 beq.s MN13 cmp.l D1,D5 bgt.s MN11 bra.s MN13 MN10:cmp.l D5,A3 blt.s ERRLOC cmp.l -4(A0),A3 blt.s MN100 cmp.l A3,A2 bge.s ERRLOC MN100:move #-1,(A2)+ lea TCACHE,A3 move.l (A3),D0 move.l D2,(A3) move.l D2,A4 move.l -(A4),D2 move.l D0,(A4)+ MN12:move.l D1,A3 move.l -(A3),D1 cmp.l D1,A4 bne.s MN12 move.l D2,(A3) MN13:move.l A3,(A2)+ move D3,D0 move D4,D2 bsr.s WNWTET3 MN14:move.l (A0),(A1)+ move.l A1,(A0) moveq #1,D2 move.l A0,A1 bra DECCRPG WNWTETG:lea -5(A1),A2 move.l TMNDES,D4 PA611:move.l D1,A3 move.l -(A3),D1 beq.s WNWTET3 cmp.l D1,D4 bgt.s PA611 WNWTET3:move.l (A3),(A2)+ move.l A2,(A3) subq #1,A1 move.b (A1)+,D1 move.b D1,(A2)+ beq.s PA610 moveq #$20,D1 bra.s PA610 PA612:or D1,D4 move.b D4,(A2)+ PA610:move.b (A1)+,D4 bne.s PA612 move.b D4,(A2)+ move.l A2,A1 move.b D0,(A1)+ move.l A1,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A1 cmpi #$51,D0 beq.s PA61 cmpi #$20,D0 bne.s PA62 move D2,(A1)+ lea 4(A1),A3 move.l A3,(A1)+ PA61:move.l A1,A3 clr.l (A1)+ rts PA62:move.l A1,A3 move D2,(A1)+ rts WNWS:cmpi.b #"(",(A5) bne.s WNW ERRDM:moveq #30,D0 trap #15 WNW:moveq #3,D2 cmpi #$20,D0 beq.s WNW1 cmpi #$10,D0 bne.s PA630 lea TVARLS,A0 move (A0)+,D4 bra.s PA63 PA630:lea TVARV,A0 move #$7FFF,D4 bsr XIVC PA63:move (A0),D2 cmp D4,D2 bcc ERRTL addq #1,(A0) WNW1:bsr WNWTETG clr.l (A1)+ move.l A1,TMNOM move.l TMVARP,D1 subi.l #100,D1 sub.l A1,D1 bmi.s ERRTV rts ERRTV:moveq #12,D0 trap #15 XNWLT:lea TMIND,A2 move #INDEXP,D4 PA66:addq #4,A2 move.l A2,D3 PA67:move.l D3,A3 move.l -(A3),D3 beq.s PA69 move.l D3,A3 addq #1,A3 PA68:tst.b (A3)+ bne.s PA68 cmpi.b #$50,(A3) bcs.s PA67 cmpi.b #$60,(A3) bcc.s PA67 move.b #$51,(A3) bra.s PA67 PA69:dbra D4,PA66 rts XNWLD:lea TMIND,A2 move #INDEXP,D4 PA70:addq #4,A2 move.l A2,D3 PA71:move.l D3,A3 PA72:move.l -(A3),D3 beq.s PA74 move.l D3,A1 addq #1,A1 PA73:tst.b (A1)+ bne.s PA73 cmpi.b #$51,(A1) bne.s PA71 move.l D3,A1 move.l -(A1),(A3)+ bra.s PA72 PA74:dbra D4,PA70 rts XNWL:clr.l TFONR lea MAJMIN-1,A0 st TFRUN move (A0),-(SP) clr (A0) move.l SOURCEI,A5 bsr.s XNWL1 move.l TDBAS,A5 move.l A5,-(SP) bsr.s XNWL1 clr TNEWLB lea TDATAP,A0 move.l (SP)+,(A0)+;TDATAP clr (A0)+;TDATAF move (SP)+,MAJMIN-1 rts XNWL2:move.l TDEBA5,A5 XNWL1:cmpi.b #$1A,(A5) beq PA81 move.l A5,TDEBA5 bsr DECAN move.l A6,A4 beq PA82 cmpi.b #":",(A5) bne.s PA78 tst D0 bmi PA80 move.b (A3),D1 cmpi.b #$51,D1 beq.s PA761 andi #$F0,D1 moveq #35,D0 cmpi #$50,D1 bne.s PA760 moveq #74,D0 PA760:jsr RERM jsr LOCALT jsr PLGN1M tst.b TFRDG beq.s PA79 jmp HD289 PA761:move.l D2,A0 subq #1,A1 move.b (A1)+,D1 cmp.b (A0),D1 beq.s PA76 move.b D1,(A0)+ beq.s PA762 moveq #$20,D1 PA762:move.b (A1)+,D0 beq.s PA76 or D1,D0 move.b D0,(A0)+ bra.s PA762 PA76:move.l A3,A4 move.b #$50,(A3)+ move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 move.l A5,(A3) PA77:addq #1,A5 bsr DECAN beq.s PA79 PA78:tst D0 bmi.s PA79 cmp.l #GET79E1+5,A3 beq.s PA81 cmp.l #GFUNCTION+11,A3 bne.s PA780 move.b #$52,(A4) bra.s PA79 PA780:cmp.l #GCFUNCTION+11,A3 bne.s PA781 move.b #$54,(A4) bra.s PA79 PA781:clr D0 cmp.l #GDIST,A3 beq.s PA782 moveq #1,D0 cmp.l #GNODIST,A3 bne.s PA79 PA782:move.b D0,MAJMIN PA79:tst.b (A5)+ bne.s PA79 bra XNWL1 PA80:moveq #$51,D0 bsr WNW1 bsr.s XMARG bra XNWL2 PA81:rts PA82:cmpi.b #":",D0 bne.s PA79 bra.s PA77 XMARG4:movem.l D4/A0,-(SP) move.l D2,D4 andi.l #$FFFFFF,D4 cmp.l D2,D4 bne XERRM asl.l #2,D4 add.l TAMPNOM,D4 bsr.s XMARG1 movem.l (SP)+,D4/A0 rts XMARG:move.l TAMPNOM,D0 move.l D0,D4 asr.l D0 move.l TMVARP,A0 sub.l D0,A0 cmp.l TMNOM,A0 bcc.s PA85 XMARG1:btst #2,PACK+1(PC) bne ERRTV movem.l D1-D3/A1-A4,-(SP) bsr.s PACK move.l TMNOM,A0 add.l D4,A0 move.l A0,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A0 move.l A6,A4 move.l TMVARP,A3 move.l A0,D2 sub.l A3,D2 bmi ERRFAT1 add.l D2,A6 bsr PA95 move.l A6,A1 bsr LC75 lea TMVARP,A0 add.l D2,(A0) move.l (A0)+,A1 add.l D2,(A0)+ move TVARV,D0 subq #1,D0 PA83:move.l (A1),D1 cmp.l A4,D1 bcs.s PA84 add.l D2,D1 PA84:move.l D1,(A1)+ dbra D0,PA83 movem.l (SP)+,D1-D3/A1-A4 PA85:rts PACKC:move.l SP,D0 sub.l A6,D0 move.l A6,TVALA6 cmp.l LPACK,D0 bcs.s PACK rts PACK:nop movem.l D1/D2/A0-A2,-(SP) move.l TMVAR,A1 move.l (A1),A0 cmp.l A6,A0 bcc.s PA90 move.b #1,NIVEAU7 move.l A0,A2 moveq #-2,D2 PA87:cmp.l A6,A2 bcc.s PA89 move (A2)+,D0 bpl.s PA88 move.l (A2)+,D0 bmi.s ERRFAT1 addq.l #1,D0 and D2,D0 add.l D0,A2 bra.s PA87 PA88:move D0,D1 beq.s ERRFAT1 cmp TVARV,D0 bcc.s ERRFAT1 neg D1 ext.l D1 asl.l #2,D1 move.l A0,(A1,D1.L) move.l (A2)+,D1 bmi.s ERRFAT1 move D0,(A0)+ move.l D1,(A0)+ addq.l #1,D1 and D2,D1 move.l A2,D0 add.l D1,D0 cmp.l D0,A6 bcs.s ERRFAT1 bsr LB76 bra.s PA87 PA89:move.l A0,A6 lea NIVEAU7,A0 tst.b (A0) bmi ESC2R clr.b (A0) PA90:move.l SP,(A1) move.l A6,TVALA6 movem.l (SP)+,D1/D2/A0-A2 rts ERRFAT1:jmp ERRFAT(PC) XIVC:move.l TMVARP,A3 move.l A6,-(A3) move.l A3,TMVARP move (A0),(A6)+ clr.l (A6)+ cmpi.b #$40,D0 beq.s PA95 XIVAR:subq #2,A6 tst PRIOR beq.s PA93 move.l #$40001,(A6)+ bra.s PA94 PA93:move #8,(A6)+ clr.l (A6)+ clr (A6)+ PA94:move #$4000,(A6)+ PA95:bsr VERA6 move.l A6,TVALA6 move TVARN,TVARND rts RERPOP:move.l TVALA6,A6 PD10:lea TVARND,A0 move (A0)+,D0 cmp (A0)+,D0 bgt.s ERRFAT1 beq PACK bsr POPN bra.s PD10 INITA:move.l A5,-(SP) move.l TVALA6,A6 move.l TMNDES,A0 st TFRUN cmpi #$7F7F,(A0) bne.s PA970 cmp.l TDHAUT,A0 ble.s PA970 PA96:tst TNEWLB beq.s PA97 bsr XNWLT bsr XNWL bsr XNWLD PA97:move.l (SP)+,A5 rts INITRM:move.l A5,-(SP) PA970:lea TDCLR,A0 bsr XN15R bsr INITR bsr XNWL bra.s PA97 PRIOR:dc.w 0 WSD3:ext.l D0 WSD3L:move.l A6,A0 move PRIOR(PC),(A6)+ bne.s LA88 clr.l (A6)+ LA88:tst.l D0 bpl.s XPOSELR neg.l D0 bsr.s XPOSELR bset #7,(A2) rts XPOSELR:jmp XPOSEL(PC) WPRIM:bsr DECCRPG bne.s LB121 bsr WEXPR bsr DECCRPD LB120:bne.s ERREX rts ERREX:moveq #29,D0 trap #15 LB121:bsr DECCRPH bne.s LB12 bsr WEXPR bsr DECCRPE bra.s LB120 LB12:bsr DECAN bne.s LB14 addq #6,A6 move.l A6,-(SP) move PRIOR(PC),(A6)+ bne.s LB13 clr.l (A6)+ LB13:bsr DECP beq.s ERREX tst.b DECPF beq.s LB130 move.l A2,A0 move.l A5,-(SP) bsr XFLO move.l (SP)+,A5 move.l (SP),A0 move #-1,(A0)+ bsr XLB76 LB130:move.l (SP)+,A2 move.l A6,D0 sub.l A2,D0 move.l D0,-(A2) LB131:addq #1,TVARN move TVARN,D0 move.l TMVAR,A0 move D0,-(A2) ext.l D0 asl.l #2,D0 sub.l D0,A0 tst.l (A0) bne.s ERRPL move.l A2,(A0) rts ERRPL:moveq #17,D0 trap #15 LB14:tst D0 bpl.s LB19 moveq #$10,D0 bsr WNWS LB16:addq #6,A6 move.l A6,-(SP) clr (A6)+ tst PRIOR beq.s LB161 subq #2,A6 bsr.s LB160 bra.s LB130 LB161:bsr.s LB17 bra.s LB130 LB160:move.l #$24001,(A6)+ move.l #12,(A6)+ bsr.s LB17 move #1,(A6)+ rts LB17:move #1,(A6)+ move D2,(A6)+ clr (A6)+ move.l #$14001,(A6)+ rts LB19:move.b (A3)+,D0 move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 cmpi.b #$10,D0 bcc LB30 LB190:lea Y9(PC),A1 cmpi.b #13,D0 bcc.s ERRRS add (A3)+,A1 tst.b D0 bne.s LB20 jmp (A1) ERRRS:moveq #44,D0 trap #15 LB20:cmpi.b #"(",(A5)+ bne ERRAR movem.l A1/A3,-(SP) cmpi.b #2,D0 bgt.s LB21 move SR,-(SP) bsr WEXPRE bra.s LB27 LB21:cmpi.b #4,D0 bgt.s LB22 move SR,-(SP) bsr WPOLY bra.s LB27 LB22:cmpi.b #6,D0 bgt.s LB23 move SR,-(SP) bsr WREEL bra.s LB27 LB23:cmpi.b #8,D0 bgt.s LB24 move SR,-(SP) bsr WFLOAT bra.s LB27 LB24:cmpi.b #10,D0 bgt.s LB28 move SR,-(SP) bsr WCHAS LB27:move (SP)+,SR bne.s LB28 bsr DECCRV bne ERRAR LB28:movem.l (SP)+,A1/A3 jsr (A1) bsr DECCRPD bne ERRAR rts LB30:cmpi.b #$20,D0 bcc.s LB300 bsr WNUMVL bra LB16 LB300:cmpi.b #$30,D0 bcc.s LB32 bsr WNUMI tst D2 bne.s LB301 move.b (A3),D0 ext D0 bra.s LB303 LB301:cmpi #3,D2 bne.s LB302 move.l (A3),D0 bra.s LB305 LB302:bcc.s LB304 move (A3),D0 LB303:ext.l D0 bra.s LB305 LB304:moveq #0,D0 move.b (A3),D0 asl D2,D0 ext D0 ext.l D0 asr #8,D2 asr.l D2,D0 LB305:addq #6,A6 move.l A6,-(SP) bsr WSD3L bra LB130 PUSHNZ:moveq #0,D0 bra.s LB305 PUSHNM:moveq #-1,D0 bra.s LB305 PUSHNU:moveq #1,D0 bra.s LB305 PUSHID:move TVARN,D2 bra.s LB321 LB32:cmpi.b #$40,D0 bcc.s LB33 LB320:bsr WNUMVL LB321:move.l TMVAR,A1 move D2,D0 ext.l D2 asl.l #2,D2 sub.l D2,A1 move.l (A1),A2 cmp (A2)+,D0 bne ERRFAT1 move.l (A2)+,D1 addq #2,A6 move.l A6,A1 move.l D1,(A6)+ addq.l #1,D1 bclr #0,D1 bsr LB76H move.l A1,A2 bra LB131 LB33:cmpi.b #$70,D0 bcs.s LB35 bne.s LB340 move.l A3,A0 PUSHN:addq #6,A6 move.l A6,-(SP) move PRIOR(PC),(A6)+ bne.s LB34 clr.l (A6)+ LB34:jsr XPOSE bra LB130 LB340:subi.b #$74,D0 bne.s LB341 move.l (A3),D0 bra LB305 LB341:subq.b #2,D0 bne.s LB343 move.l (A3),A3 LB342:move (A3),D0 bra LB303 LB343:subq.b #1,D0 bne.s LB344 cmpi.b #"(",(A5)+ beq.s KN21 subq #1,A5 bsr XTIMB1 bra.s LB342 KN21:bsr WJUL1 lea KN22(PC),A0 add 4(A3),A0 jmp (A0) KN22:bra ERRIS YFTIMEN:move D2,D1 YFTIMEMO:move D1,D0 YFTIMEY:bra LB303 LB344:subq.b #2,D0 bne ERRMT bra LB190 LB35:cmpi.b #$52,D0 bne ERRMT bsr PUSHNZ move #2,-(SP) LB36:bsr APROC1 move.l TPILE,(A0)+ lea GVALU,A2 move.l (A2),(A0)+ clr.l (A0)+ move (SP),D0 addq #1,D0 asl #4,D0 move D0,(A2)+ move D1,(A2) clr D2 bsr DECCRPG bne.s LB43 clr D3 LB38:move.l A5,(A0)+ addq #1,D2 LB39:move.b (A5),D0 beq.s ERRAR cmpi.b #CARCOM,D0 beq.s ERRAR addq #1,A5 cmpi.b #$22,D0 bne.s LB41 LB40:move.b (A5),D0 beq.s ERRAR addq #1,A5 cmpi.b #$22,D0 bne.s LB40 bra.s LB39 ERRAR:moveq #32,D0 trap #15 LB41:addq #1,D3 cmpi.b #"(",D0 beq.s LB39 subq #1,D3 cmpi.b #")",D0 beq.s LB42 tst D3 bne.s LB39 cmpi.b #",",D0 bne.s LB39 dbra D6,LB38 ERRGR:moveq #42,D0 trap #15 LB42:subq #1,D3 bpl.s LB39 LB43:move.l A5,(A0)+ move D2,(A0)+ move (SP)+,(A0)+ move.l A0,-4(A1) clr.l (A0)+ move.l A0,(A1) move.l SP,TPILE move.l (A3),A5 bra PB963 APROC1:lea TMFOR,A1 move.l (A1),D6 move.l D6,D5 move.l -(A1),A0 sub.l A0,D6 asr.l #2,D6 moveq #-10,D1 add.l D1,D6 bmi.s ERRGR cmpi.l #$10000,D6 bcs.s LB431 move.l D1,D6 LB431:movem.l TVARND,D1/D2 move.l D1,(A0)+ move D2,(A0)+ move.l D5,(A0)+ rts WIDXV:move D0,-(SP) moveq #1,D1 bra.s GEC580 GEC58:mulu (A3)+,D1 GEC580:dbra D0,GEC58 move (SP)+,D0 rts WNUMVL:move D0,-(SP) move (A3)+,D2 moveq #0,D3 moveq #1,D5 andi #$F,D0 beq.s LB49 cmpi.b #"(",(A5)+ bne ERRIXN bsr.s WIDX beq.s LB44 bsr.s WIDXV bsr WIDXF sub D3,D2 move.l D1,D5 bra.s LB49 LB44:move D2,-(SP) subq #1,D0 moveq #1,D5 move D0,D4 bra.s LB48 LB46:bsr DECCRV bne ERRIXN LB48:bsr WINDEX move (A3)+,D0 cmp D0,D3 bcc ERRIXH mulu D5,D3 sub D3,D2 mulu D0,D5 dbra D4,LB46 bsr DECCRPD bne ERRIXN move (SP)+,D3 sub D2,D3 ext.l D3 LB49:move (SP)+,D0 rts WIDXPR:move.l A4,A5 moveq #0,D3 bsr DECCRPD beq.s GEC51 bsr DECCRPL beq.s GEC50 bsr DECCRM bne.s GEC51 GEC50:move.l A4,A5 bsr WADR bsr DECCRPD bne.s ERRIXN GEC51:rts WIDX:movem.l D0/D1/A4/A5,-(SP) bsr DECMAX bne.s GEC54 bsr.s WIDXPR bne.s GEC55 moveq #-1,D6 GEC53:movem.l (SP)+,D0/D1/A4 addq #4,SP rts GEC54:bsr DECMIN bne.s GEC55 bsr.s WIDXPR bne.s GEC55 moveq #1,D6 bra.s GEC53 GEC55:moveq #0,D6 movem.l (SP)+,D0/D1/A4/A5 rts WIDXI:movem.l D0/D3/D6,-(SP) moveq #1,D3 bra.s GEC570 GEC57:move.l (A3)+,D1 bsr LMUL13 GEC570:dbra D0,GEC57 move.l D3,D1 movem.l (SP)+,D0/D3/D6 GEC571:rts WIDXF:tst D6 bpl.s GEC59 add.l D1,D3 subq.l #1,D3 GEC59:cmp.l D1,D3 bcs.s GEC571 ERRIXH:moveq #43,D0 trap #15 ERRIXN:moveq #59,D0 trap #15 WNUMI:move (A3)+,D2 move D0,-(SP) moveq #0,D3 moveq #1,D5 andi #$F,D0 beq.s PB140 cmpi.b #"(",(A5)+ bne.s ERRIXN move D2,-(SP) bsr.s WIDX beq.s PB102 bsr.s WIDXI bsr.s WIDXF move.l D3,D2 move.l D1,D5 bra.s PB122 PB102:moveq #0,D2 subq #1,D0 move D0,D4 moveq #1,D5 bra.s PB12 PB10:bsr DECCRV bne.s ERRIXN PB12:bsr WADR move.l (A3)+,D0 cmp.l D0,D3 bcc.s ERRIXH move.l D5,D1 bsr.s LMUL13 add.l D3,D2 move.l D5,D3 move.l D0,D1 bsr.s LMUL13 move.l D3,D5 dbra D4,PB10 bsr DECCRPD bne.s ERRIXN PB122:move.l D2,D3 move.l (A3)+,A3 move (SP),D0 PB120:cmpi #4,D0 bcc.s PB15 PB13:add.l D2,A3 dbra D0,PB13 move (SP)+,D2 PB14:move (SP)+,D0 rts PB140:move.l (A3)+,A3 cmpi #4,D2 bcs.s PB14 clr.b D2 bra.s PB14 PB15:move D2,D1 asr.l D0,D2 add.l D2,A3 cmpi.b #2,D0 bcc.s PB16 andi #1,D1 add D1,D1 bra.s PB18 PB16:beq.s PB17 andi #7,D1 bra.s PB19 PB17:andi #3,D1 PB18:add D1,D1 PB19:move (SP)+,D2 andi #$F00,D2 add D1,D2 bra.s PB14 WNUMIK:movem D0/D1,-(SP) bra.s PB120 LMUL13:cmp.l D1,D3 bcc.s PB20 exg D1,D3 PB20:move D1,D6 swap D1 tst D1 bne.s PB21 mulu D3,D6 bmi.s PB21 swap D1 swap D3 mulu D1,D3 tst D3 bmi.s PB21 swap D3 tst D3 bne.s PB21 add.l D6,D3 bmi.s PB21 rts PB21:bra ERRIX XIFAC:move TVARN,D0 XHFAC:move.l TMVAR,A1 sub D0,A1 sub D0,A1 sub D0,A1 sub D0,A1 move.l (A1),A0 cmp (A0)+,D0 bne ERRFATR addq #4,A0 tst (A0)+ bne.s PB25 move D0,-(SP) addq #6,A6 bsr XPSAF1 bra PB310 PB25:rts XHPSF:movem.l D1/A0/A6,-(SP) move.l TMVAR,A2 sub D0,A2 sub D0,A2 sub D0,A2 sub D0,A2 move.l (A2),A2 cmp (A2)+,D0 bne ERRFATR move.l (A2)+,D1 bsr LB76H movem.l (SP)+,D1/A0/A2 rts XILOC:move TVARN,D0 move.l TMVAR,A1 sub D0,A1 sub D0,A1 sub D0,A1 sub D0,A1 move.l (A1)+,A0 cmp (A0)+,D0 bne ERRFATR subq #1,D0 move.l (A1),A1 cmp (A1)+,D0 bne ERRFATR move.l (A0)+,D0 move.l (A1)+,D1 rts XIPOL:move TVARN,D0 move D0,D1 subq #1,D0 bra.s XHPOL ;XHPOL: PB26:bsr XHFAC PB260:movem (SP)+,D0/D1 XHPOL:move.l TMVAR,A0 move.l A0,A1 sub D0,A0 sub D0,A0 sub D0,A0 sub D0,A0 sub D1,A1 sub D1,A1 sub D1,A1 sub D1,A1 move.l (A0),A0 move.l (A1),A1 cmp (A0)+,D0 bne ERRFATR cmp (A1)+,D1 bne ERRFATR addq #4,A0 addq #4,A1 move (A0)+,D2 bne.s PB27 move (A1)+,D2 beq.s GAN62 movem D0/D1,-(SP) bpl.s PB26 PB29:addq #1,D2 beq.s PB271 bra.s GAN65 PB27:bpl.s PB273 addq #1,D2 bne.s GAN64 move (A1)+,D2 bpl.s PB270 cmpi #-1,D2 bne.s GAN66 GAN62:addq #6,A6 move D2,(A6)+ rts PB270:movem D0/D1,-(SP) move D1,D0 PB271:bsr XHCFL bra.s PB260 GAN64:move (A1)+,D2 cmpi #-2,D2 beq.s GAN62 movem D0/D1,-(SP) move D1,D0 GAN65:bsr XHCFLA bra.s PB260 GAN66:movem D0/D1,-(SP) bra.s GAN65 PB273:move (A1)+,D2 bpl.s PB274 movem D0/D1,-(SP) bra.s PB29 PB274:bne.s PB28 movem D0/D1,-(SP) move D1,D0 bra PB26 PB28:addq #6,A6 PB280:bsr XHPSF exg D0,D1 move.l A2,A0 bsr XHPSF move.l A2,A1 exg D0,D1 moveq #1,D2 rts NEWVP:clr -(A2) NEWVP1:move TVARN,D0 bra.s PB312 XHMUL:move D2,-(SP) bsr XHPOL bmi.s PB360 bne.s PB36 bsr XMULP PB30:lea -2(A2),A0 PB31:move.l A0,A2 PB310:move (SP)+,D0 PB312:move.l A6,D1 PB32:sub.l A2,D1 move.l TMVAR,A1 sub D0,A1 sub D0,A1 sub D0,A1 sub D0,A1 move.l (A1),A0 move.l D1,-(A2) move D0,-(A2) PB33:move.l A2,(A1) PB34:cmp (A0),D0 bne ERRFATR st (A0) move.l TMVAR,A2 cmp.l (A2),A0 bcc.s PB35 move.l A0,(A2) PB35:bra PACKC PB36:bsr XMULF bra.s PB31 PB360:addq #1,D2 beq.s GAN68 bsr CFLMUL bra.s PB30 GAN68:bsr XFLMUL bra.s PB30 POPPR:move TVARN,D0 subq #1,TVARN move.l TMVAR,A1 sub D0,A1 sub D0,A1 sub D0,A1 sub D0,A1 move.l (A1),A2 clr.l (A1)+ cmp (A2),D0 bne ERRFATR subq #1,D0 move D0,(A2) move.l (A1),A0 bra.s PB33 POPNEW:move TVARN,D0 subq #1,D0 bsr.s PB312 bra POPN POPD0:move TVARN,D1 subq #1,TVARN move.l TMVAR,A1 sub D0,A1 sub D0,A1 sub D0,A1 sub D0,A1 move.l (A1),A0 move D0,D2 PB362:cmp D1,D2 bcc PB34 move.l -(A1),A2 clr.l (A1) subq #1,(A2) cmp (A2),D2 bne ERRFATR move.l A2,4(A1) addq #1,D2 bra.s PB362 XHADD:move D2,-(SP) bsr XHPOL bmi.s PB380 bne.s PB38 bsr XADDP PB30A:bra PB30 PB38:bsr XADDF bra PB31 PB380:addq #1,D2 beq.s GAN70 bsr CFLADD bra.s PB30A GAN70:bsr XFLADD bra.s PB30A XHSUB:move D2,-(SP) bsr XHPOL bmi.s PB400 bne.s PB40 bsr XSUBP bra.s PB30A PB40:bsr XSUBF bra PB31 PB400:addq #1,D2 beq.s GAN72 bsr CFLSUB bra.s PB30A GAN72:bsr XFLSUB bra.s PB30A XHDIV:movem D0-D2,-(SP) bsr XHFAC movem (SP)+,D0/D1 bsr XHPOL PB405:bmi.s PB41 bsr XDIVF bra PB31 PB41:addq #1,D2 beq.s GAN74 bsr CFLDIV bra.s PB30A GAN74:bsr XFLDIV bra.s PB30A XHDIVE:move D2,-(SP) bsr XHPOL bne.s PB405 bsr XCTDIV2 beq.s .1 bsr XPSP0 .1:bra PB30 XIMUL: move.l A5,-(SP) move TVARN,D0 move D0,D1 subq #1,D0 move D0,D2 bsr XHMUL POPN1:move.l (SP)+,A5 POPN:move TVARN,D0 subq #1,TVARN move.l TMVAR,A1 sub D0,A1 sub D0,A1 sub D0,A1 sub D0,A1 move.l (A1),A0 clr.l (A1) bra PB34 XIADD: move.l A5,-(SP) move TVARN,D0 move D0,D1 subq #1,D0 move D0,D2 bsr XHADD bra.s POPN1 XISUB: move.l A5,-(SP) move TVARN,D0 move D0,D1 subq #1,D0 move D0,D2 bsr XHSUB bra.s POPN1 XIDIV: move.l A5,-(SP) move TVARN,D0 move D0,D1 subq #1,D0 move D0,D2 bsr XHDIV bra.s POPN1 WCHASZV:bsr DECCRVE WCHASZ:bsr WCHAS XCHAZE:moveq #0,D2 bsr CPUSHN1 bsr.s XICHA bra LB95 XICHA: move.l A5,-(SP) move TVARN,D0 move D0,D1 subq #1,D0 move D0,D2 XICHA1:bsr.s XHCHA bra POPN1 XHCHA:move D2,-(SP) move.l TMVAR,A0 move.l A0,A1 sub D0,A0 sub D0,A0 sub D0,A0 sub D0,A0 sub D1,A1 sub D1,A1 sub D1,A1 sub D1,A1 move.l (A0),A2 move.l (A1),A1 cmp (A2)+,D0 bne ERRFATR cmp (A1)+,D1 bne ERRFATR move.l (A2)+,D1 addq #6,A6 move.l A6,A3 bsr PLB76 move.l (A1)+,D1 move.l A1,A2 bsr ILB76 move (SP)+,D0 PB43:move.l A3,A2 PB430:move.l A6,D1 btst #0,D1 beq.s PB431 addq #1,A6 PB431:bra PB32 XIEXP:bsr XIADR bne.s PB416 move TVARN,D0 subq #1,D0 bsr XHFLOA bmi.s PB413 move D3,D1 ext.l D1 cmp.l D1,D3 bne.s PB415 move D0,D1 addq #1,D1 move.l A5,-(SP) bsr XHPOL bne.s PB412 subq #8,A6 bsr PB28 PB412:bsr XEXP move.l (SP)+,A5 move.l A0,A2 bra POPNEW PB413:bsr POPN bra XHEXPD PB415:bra KB44 PB416:bsr MG790 bsr XLOG bsr XIMUL bra YEXP WPRIMS:bsr DECCRM beq.s LB45 bsr DECCRPL bra WPRIM LB45:bsr PUSHNZ bsr WPRIM bra XISUB WFACT:bsr WPRIM bsr DECCRF bne.s LB50 bsr.s WPRIMS bsr DECCR22 bra XIEXP LB50:rts WTERM:bsr.s WFACT LB51:bsr DECCRS beq.s LB52 addq #1,A5 cmpi.b #"/",D0 bne.s GAM68 bsr.s WFACT bsr XIDIV bsr.s XIPRIOR bra.s LB51 LB52:bsr.s WFACT bsr XIMUL bra.s LB51 LB53:rts GAM68:cmpi.b #"\\",D0 beq.s GAM70 subq #1,A5 andi #$DF,D0 cmpi #"D",D0 bne.s GAM72 bsr DECXDIV bne.s LB53 GAM70:bsr.s GAM74 bsr XIDIVR bra.s LB51 GAM72:cmpi #"M",D0 bne.s LB53 bsr DECXMOD bne.s LB53 bsr.s GAM74 bsr YMODR1 bra.s LB51 GAM74:bsr XIREELP bsr.s WFACT bra XIREELP WEXPRCOND:bsr WEXPR tst (A0) bmi.s LB53 bsr XCND2 XIPRIOR:move TVARN,D0 XHPRIOR:move.l TMVAR,A2 sub D0,A2 sub D0,A2 sub D0,A2 sub D0,A2 move.l (A2),A0 cmp (A0)+,D0 bne ERRFATR addq #4,A0 tst PRIOR beq.s PB57 tst (A0)+ bne.s PB59 move D0,-(SP) addq #6,A6 move.l A5,-(SP) bsr XPSAF1 move.l (SP)+,A5 bra PB310 PB57:tst (A0) ble.s PB59 move D0,-(SP) move.l A0,A2 bsr XTPOLY beq PB550 addq #2,SP PB59:rts XIFLO:move TVARN,D0 bsr XHFLOA bmi.s GAP12 move D0,-(SP) bsr XTREEL bne.s ERRNFL GAN56:move.l A5,-(SP) addq #6,A6 move #-1,(A6)+ bsr XFLO GAN58:move.l (SP)+,A5 bra PB30 GAP12:bsr GAP14 cmpi #-1,(A0) bne.s ERRNFL rts ERRNFL:moveq #20,D0 trap #15 WFLOAT:bsr WEXPR bsr.s XICFL bra LB95A XICFL:move TVARN,D0 XHCFL:bsr XHFLOA bmi.s PB59 GAN59:move D0,-(SP) bsr XTREEL beq.s GAN56 move.l A5,-(SP) move.l A6,-(SP) addq #6,A6 move #-2,(A6)+ move.l A2,A0 bsr XTCX beq.s GAN60 move.l (SP)+,A6 ERRCFL:moveq #117,D0 trap #15 GAN60:move.l A2,-(SP) bsr CFLO move.l (SP),A0 bsr XLB76 movem.l (SP)+,A2/A3 bra.s GAN58 XICFLA:move TVARN,D0 XHCFLA:bsr TTCMPX move D0,-(SP) bsr.s XHCFL move (SP)+,D0 bsr XHFLOA move (A2)+,D1 addq #1,D1 bne PB59 move D0,-(SP) addq #6,A6 move #-2,(A6)+ move.l A2,A0 bsr CFLO1 bra PB30 XICFL1:move TVARN,D0 bsr XHFLOA bpl.s GAN87 GAP14:move (A2)+,D2 addq #1,D2 beq.s GAN88 lea 2(A2),A1 bsr SLNH1R addq #2,D1 add D1,A1 cmpi #$4000,(A1) bne.s GAN88 pea LB95A(PC) move D0,-(SP) addq #6,A6 move D2,(A6)+ move.l A2,A0 jsr XPOSEF subq #2,A2 bra PB30 GAN87:bsr GAN59 GAN88:bra LB95A XIEXACT:move TVARN,D0 XHEXACT:bsr XHFLOA bpl GAN54 XHEXACTS:lea 2(A2),A0 GAN52:move D0,-(SP) move.l A5,-(SP) addq #6,A6 move.l A6,-(SP) move PRIOR(PC),(A6)+ bne.s PB61 clr.l (A6)+ PB61:bsr XUNFL movem.l (SP)+,A2/A5 bra PB310 YEXACT:bsr WEXPR XICEXACT:move TVARN,D0 XHCEXACT:bsr XHFLOA bpl.s GAN54 move.l A2,A0 move (A0)+,D1 addq #1,D1 beq.s GAN52 move D0,-(SP) move D0,D2 bsr LB321 bsr.s XIEXACT bsr.s TTCMPX bsr LB16 move (SP),D2 bsr LB321 move TVARN,D0 bsr.s XHCXIM move.l A1,A0 bsr.s GAN52 bsr XIMULADD bra LB64 SLNH1R:jmp SLNH1 XHCXIM:bsr XHFLOA move.l A2,A0 move (A0)+,D1 lea TCONSTF0,A1 addq #1,D1 beq.s GAN54 move.l A0,A1 CFLAVI1:addq #2,A1 bsr.s SLNH1R add D1,A1 GAN54:rts TTCMPX:move TCMPX,D2 bne.s GAN54 ERRCPX:moveq #116,D0 trap #15 WEXPRS:bsr DECCRM beq.s LB54 bsr DECCRPL bsr WTERM bra.s LB56 LB54:subq #1,A5 bsr PUSHNZ LB56:bsr DECCRM beq.s LB57 bsr DECCRPL bne.s GAN54 bsr WTERM bsr XIADD bra.s LB56 LB57:bsr WTERM bsr XISUB bra.s LB56 WDCOMP:bsr DECCRE bne.s GEE16 bsr DECCRA beq.s GEE10 cmpi.b #">",D0 beq.s GEE11 moveq #"=",D0 rts GEE10:moveq #$3B,D0 rts GEE11:addq #1,A5 GEE12:moveq #$3F,D0 rts GEE15:addq #1,A5 moveq #$3A,D0 rts GEE16:cmpi.b #"<",D0 bne.s GEE18 addq #1,A5 bsr DECCRE beq.s GEE10 cmpi.b #">",D0 beq.s GEE15 moveq #"<",D0 rts GEE18:cmpi.b #">",D0 bne.s GEE20 addq #1,A5 bsr DECCRE beq.s GEE12 moveq #">",D0 rts GEE20:andi #$DF,D0 cmpi #"I",D0 beq.s GEE22 cmpi #"N",D0 beq.s GAN34 GEE21:clr D0 rts GEE22:bsr DECXIN bne.s GEE21 moveq #-1,D0 rts GAN34:bsr DECXNOT bne.s GEE21 bsr DECXIN bne ERRIS6 moveq #-2,D0 rts WEXPRC:bsr WTSTCH beq GEE25 bsr WEXPRS WHENX:bsr WDCOMP ext D0 beq.s LB617 bmi GEE85 cmpi.b #"=",D0 beq.s LB604 cmpi.b #$3A,D0 beq.s LB604 LB603:move D0,-(SP) bsr XIFLOB bne.s ERRCP bsr WEXPRS bsr XISUB bsr XIFLOB bne.s ERRCP move (SP)+,D0 cmpi.b #$3F,D0 bne.s LB613 LB612:btst #7,(A0) beq.s LB607 bra.s LB608 ERRCP:moveq #38,D0 trap #15 LB613:cmpi.b #"<",D0 bne.s LB614 LB6130:btst #7,(A0) beq.s LB608 bra.s LB607 LB614:cmpi.b #">",D0 bne.s LB616 LB615:cmpi #$4000,(A0) beq.s LB608 bra.s LB612 LB616:cmpi #$4000,(A0) beq.s LB607 bra.s LB6130 LB617:rts LB604:move D0,-(SP) bsr WEXPRS bsr XISUB move (SP)+,D0 cmpi.b #"=",D0 bne.s LB605 bsr XICZERO LB606:bne.s LB608 LB607:bsr POPN bra PUSHNM LB605:bsr XICZERO bne.s LB607 LB608:bsr POPN bra PUSHNZ GEE25:bsr WCHAS WHENC:bsr WDCOMP ext D0 beq ERREX bmi GEF30 move D0,-(SP) bsr XCMPCH addq.l #1,D3 asl #3,D3 add (SP)+,D3 lea GEE27-$3A,A0 add D3,A0 move.b (A0),D3 neg.l D3 bra MB93 XIREEL:move TVARN,D0 XHREEL:move.l TMVAR,A2 sub D0,A2 sub D0,A2 sub D0,A2 sub D0,A2 move.l (A2),A2 cmp (A2)+,D0 bne.s ERRFATR addq #4,A2 bra XTREEL XIPOLY:move TVARN,D0 XHPOLY:move.l TMVAR,A2 sub D0,A2 sub D0,A2 sub D0,A2 sub D0,A2 move.l (A2),A2 cmp (A2)+,D0 bne.s ERRFATR addq #4,A2 XTPOLYR:bra XTPOLY ERRFATR:jmp ERRFAT XIADR:move TVARN,D0 XHADR:move.l TMVAR,A2 sub D0,A2 sub D0,A2 sub D0,A2 sub D0,A2 move.l (A2),A2 cmp (A2)+,D0 bne.s ERRFATR addq #4,A2 bra XTADR XIFLOA:move TVARN,D0 XHFLOA:move.l TMVAR,A2 sub D0,A2 sub D0,A2 sub D0,A2 sub D0,A2 move.l (A2),A2 cmp (A2)+,D0 bne.s ERRFATR addq #4,A2 tst (A2) rts XIFLOB:move TVARN,D0 XHFLOB:bsr.s XHFLOA bpl XTREEL lea 4(A2),A0 moveq #-1,D3 cmp (A2),D3 rts WICOND:bsr.s TTCOND beq.s GAP18 bsr LB95 tst (A0) bmi.s GAP18 bra XCND2 WHCOND:bsr.s TTCOND beq.s GAP18 move D0,-(SP) move D0,D2 bsr LB321 bsr.s WICOND bra LB64 TTCOND:tst TCMPX bne.s GAP18 move.l TMCOND,A0 tst (A0) GAP18:rts XICZERO:bsr.s WICOND XIZERO:move TVARN,D0 XHZERO:bsr.s XHFLOB beq.s GAN85 cmpi #-2,(A2)+ bne.s GAN86 addq #2,A2 cmpi #$4000,(A2)+ bne.s GAN86 lea 2(A2),A0 GAN85:cmpi #$4000,(A0) GAN86:rts ERREL:moveq #19,D0 trap #15 WEXPRN:bsr DECXNOT bne WEXPRC bsr WEXPRC GAN38:bsr.s RLOGIC not.l D3 move.l D3,D0 bra LB305 RLOGIC1:move.l A4,A5 bra.s RLOGIC WADRLOG:bsr.s WEXPRN RLOGIC:bsr XIADR bne.s ERREL bra POPN WEXPR:bsr.s WEXPRN bsr NEXTA5R subq #1,A5 andi #$DF,D0 cmpi #"X",D0 bne.s GEE35 bsr DECXOR bne.s GEE34 bsr.s RLOGIC1 move.l D3,-(SP) GIB40:bsr.s WADRLOG eor.l D3,(SP) bsr DECXOR bne.s GEE33 move.l A4,A5 bra.s GIB40 GEE35:subi #"O",D0 bne.s GAM64 bsr DECOR bne.s GEE34 bsr.s RLOGIC1 move.l D3,-(SP) GEE37:bsr.s WADRLOG or.l D3,(SP) bsr DECOR bne.s GEE33 move.l A4,A5 bra.s GEE37 GAM64:addq #6,D0 bne.s GAM66 bsr DECIMP bne.s GEE34 bsr.s RLOGIC1 not.l D3 move.l D3,-(SP) bsr.s WADRLOG or.l D3,(SP) GEE33:move.l (SP)+,D0 bsr LB305 GEE34:bra LB95 GAM66:addq #4,D0 bne.s GEE39 bsr DECEQV bne.s GEE34 bsr RLOGIC1 move.l D3,-(SP) GIB42:bsr WADRLOG eor.l D3,(SP) not.l (SP) bsr DECEQV bne.s GEE33 move.l A4,A5 bra.s GIB42 GEE39:addq #4,D0 bne.s GEE34 bsr DECAND bne.s GEE34 bsr RLOGIC1 move.l D3,-(SP) GEE41:bsr WADRLOG and.l D3,(SP) bsr DECAND bne.s GEE33 move.l A4,A5 bra.s GEE41 WEXPRE:bsr WEXPR WEXPREK:tst (A0) bmi.s ERRFLI rts WEXPRSE1:bsr DECCREE WEXPRSE:bsr WEXPRS bsr LB95 bra.s WEXPREK ERRFLI:moveq #71,D0 trap #15 ERRPY:moveq #39,D0 trap #15 WPOLY:bsr.s WEXPRE WPOLY1:bsr XIPOLY bne.s ERRPY move TVARN,D0 bsr.s XHDEV bsr LB95 addq #2,A0 rts WPOLYU:bsr.s WPOLY WPOLYUC:move.l A0,A1 move (A1)+,D0 cmpi #2,D0 bcc.s ERRPY bsr.s PB561 bne.s ERRPY rts WPOLYMC:move.l A0,A1 move (A1)+,D0 PB561:add D0,D0 add D0,A1 move (A1)+,D2 PB560:add D0,A1 btst #5,(A1) bne.s PB562 bsr SLNH1R add D1,A1 dbra D2,PB560 clr D0 PB562:rts XHDEV:move.l TMVAR,A1 sub D0,A1 sub D0,A1 sub D0,A1 sub D0,A1 move.l (A1),A0 cmp (A0)+,D0 bne ERRFATR addq #4,A0 tst (A0) beq.s PB56 bmi ERRFATR move D0,-(SP) PB550:move.l A5,-(SP) addq #6,A6 clr (A6)+ bsr XDEVFP move.l (SP)+,A5 bra PB30 PB56:rts WREEL:bsr WEXPR XIREELP:bsr XIFLOB beq.s PB56 cmpi #-2,(A2) bne.s ERRNRE bsr XICFL1 bsr XIFLOB beq.s PB56 ERRNRE:moveq #118,D0 trap #15 WINDEXV:bsr DECCRVE bra.s WINDEX WVGK:moveq #1,D3 WVGK1:bsr DECCRV bne.s PB56 WINDEX:bsr.s WADR GAG58:move.l D3,-(SP) ext.l D3 cmp.l (SP)+,D3 bne ERRIX rts WCINDEX:bsr.s WCADR bra.s GAG58 WVGK2:bsr.s WVGK move.l D3,-(SP) bsr LB95 move.l (SP)+,D3 rts WVGAM:moveq #-1,D3 bra.s WVGAD WADRV:bsr DECCRVE bra.s WADR WVGA:moveq #1,D3 WVGAD:bsr DECCRV bne.s PB56 WADR:movem.l D0-D2/D4-D6/A0-A4,-(SP) bsr WEXPRE GAG59:bsr XIADR bne ERRIX bsr POPN movem.l (SP)+,D0-D2/D4-D6/A0-A4 rts WCADR:movem.l D0-D2/D4-D6/A0-A4,-(SP) bsr.s WREEL bsr YCINT bra.s GAG59 WADRP:bsr.s WADR btst #0,D3 bne ERROD move.l D3,A0 rts WENTIERV:bsr DECCRVE WENTIER:bsr WREEL tst D3 bne.s ERRNIN btst #5,(A0) bne.s ERRNIN rts WENTIERPV:bsr DECCRVE WENTIERP:bsr.s WENTIER cmpi #$4000,(A0) beq ERRRG bclr #7,(A0) cmpi #$4001,(A0) beq ERRRG rts ERRNIN:moveq #72,D0 trap #15 WEXCEND:addq #2,A5 move.l (A5)+,D0 move.l (A5)+,A0 WEXCENDbksl1=* .1:lea TMEXC,A1 cmp.l (A1)+,A0 bcs ERRFATR cmp.l (A1),A0 bcc ERRFATR move.l A0,(A1) rts ERRARV:moveq #61,D0 trap #15 ERRPXC:moveq #62,D0 trap #15 ERRARN:moveq #63,D0 trap #15 ERRRT:moveq #47,D0 trap #15 PB81:cmp.l A2,A0 bcc.s ERRPXC move.b D0,(A0)+ PB82:move.b (A5)+,D0 beq PB88 cmp.b D0,D1 bne.s PB81 cmp.b (A5)+,D1 beq.s PB81 subq #1,A5 movem.l D1/A0-A2,-(SP) bsr WPRIM bsr DECCRAS bsr XIADR bne.s ERRARV bsr POPN move.l TMPROCA,A3 move -(A3),D4 beq.s ERRARN move -(A3),D0 ext.l D0 movem.l (SP)+,D1/A0-A2 tst.l D3 bne.s PB84 move.b #"Ý",(A0)+ jsr PINTA moveq #" ",D0 bra.s PB81 PB84:bmi.s ERRARV sub.l D3,D0 bcs.s ERRARV bsr.s PB840 lea (A0,D0.L),A4 cmp.l A2,A4 bcc.s ERRPXC PB86:move.b (A3)+,(A0)+ dbra D0,PB86 subq #2,A0 cmpi.b #")",(A0)+ bne.s PB82 cmpi.b #"(",(A5) bne.s PB82 addq #1,A5 move.b #",",-1(A0) bra.s PB82 PB880:move.b #" ",(A0) move.l A0,D0 bset #0,D0 move.l D0,A0 clr.b (A0)+ move #$100,(A0)+ move.l A5,(A0)+ move.l -(A1),A5 move.l A5,(A0)+ move.l A0,(A1) PB881:rts PB840:asl.l #2,D0 sub.l D0,A3 cmpi #1,D4 bne.s PB85 tst.l D0 PB85:sne D0 ext D0 ext.l D0 add.l -(A3),D0 move.l -(A3),A3 sub.l A3,D0 rts PB78:beq YEND cmpi.b #1,D0 bcs.s WINSTR1 bne ERRFATR bsr WEXCEND move.l D0,A5 WINSTR:move.b (A5),D0 move.l A6,TVALA6 move.l A5,TPWHILE tst.b TFRDG beq.s PB795 move.l A5,TPPI PB795:cmpi.b #$1A,D0 bls.s PB78 move.l A5,A0 moveq #"@",D1 PB80:move.b (A0)+,D0 beq.s WINSTR1 cmp.b D0,D1 bne.s PB80 lea TMEXCP,A1 move.l (A1)+,A0 move.l (A1),A2 lea -16(A2),A2 bra PB82 PB88:bsr PB880 WINSTR1:tst.b (A5)+ beq.s PB881 subq #1,A5 lea TVARN,A0 move (A0),-(A0) move.l A5,TDEBA5 bsr PACKC bsr XMARG bsr ESCAPE tst.b BINSTR bmi.s GEB42 move.l A5,-(SP) lea TPILE,A0 move.l (A0),-(SP) move.l SP,(A0) lea GEB41,A5 bsr WSPBAS2 lea TPILE,A0 move.l (A0),SP move.l (SP)+,(A0) move.l (SP)+,A5 GEB42:move YTRACE(PC),D1 ble.s WINSTR3 jmp WG1 WINSTR3:bsr DECAN beq.s LB624 cmpi.b #":",(A5) bne.s LB623 LB622:addq #1,A5 bsr DECAN beq LB920 LB623:clr D3 bsr WNOMD bne LB92 bsr.s WASGN bra LB920 LB624:cmpi.b #":",D0 beq.s LB622 bra LB920 WASGN:move D0,D3 bsr DECCREE move D3,D0 WASGN1:andi #$F0,D0 cmpi.b #$20,D0 beq LB90 move D2,-(SP) cmpi.b #$40,D0 beq.s LB63 cmpi.b #$30,D0 bne ERRMT bsr WEXPRCOND bra.s LB64 WPILEASGV:bsr DECCRVE WPILEASG:bsr WNOMV lsr #4,D0 subq #2,D0 bne.s GAH98 movem.l D2/A3,-(SP) bsr XIADR bne.s ERRIX bsr POPN movem.l (SP)+,D2/A3 bra.s LB900 GAH98:subq #1,D0 bne ERRMT move D2,D0 bra.s WASGN2 LB63:bsr WCHAIN LB64:move (SP)+,D0 WASGN2:move TVARN,D2 subq #1,TVARN move.l TMVAR,A1 move.l A1,A2 sub D0,A1 sub D0,A1 sub D0,A1 sub D0,A1 move.l (A1),A0 sub D2,A2 sub D2,A2 sub D2,A2 sub D2,A2 move.l (A2),A3 cmp (A3),D2 bne ERRFATR clr.l (A2) move.l A3,(A1) move D0,(A3) bra PB34 LB90:bsr WADR LB900:move.l D3,D0 tst D2 bne.s LB902 ext D0 ext.l D0 cmp.l D0,D3 bne.s ERRIX move.b D3,(A3) rts ERRIX:moveq #33,D0 trap #15 LB902:cmpi #3,D2 bne.s LB903 move.l D3,(A3) rts LB903:bcc.s LB904 ext.l D0 cmp.l D0,D3 bne.s ERRIX move D3,(A3) rts LB904:move D2,D1 asr #8,D1 asl D1,D0 move D0,D5 ext D0 ext.l D0 asr.l D1,D0 cmp.l D0,D3 bne.s ERRIX move.b (A3),D0 rol.b D2,D0 moveq #8,D4 sub D1,D4 asl.b D4,D0 lsr.b D4,D0 or D5,D0 ror.b D2,D0 move.b D0,(A3) rts LB92:cmpi.b #$10,D0 bcc.s LC200 cmpi.b #13,D0 bcs.s ERRIS6 lea Y9(PC),A1 move (A3)+,D1 add D1,A1 cmpi.b #14,D0 beq.s LB930 LB921:jsr (A1) LB920:bsr.s DECTMNE LB93:tst.b (A5)+ bne.s LB93 rts DECTMNE:bsr DECTMN bne.s ERRIS6 rts LB930:jmp (A1) LB932:subi.b #$74,D0 beq.s LB933 subq.b #2,D0 beq.s LB933 subq.b #1,D0 beq.s GER90 subq #2,A3 subq.b #1,D0 beq.s LB933 subq.b #1,D0 beq.s LB933 ERRIS6:bra ERRIS4 LB933:lea Y9(PC),A1 add 4(A3),A1 move.l (A3),A0 bra.s LB921 GER90:bsr XTIMB1 lea Y9(PC),A1 add 2(A3),A1 bsr WINDEX lea TCTIMD,A0 move (A0)+,D6 move (A0)+,D5 bra.s LB921 LC200:cmpi.b #$50,D0 bne.s LB932 LC202:bsr APROC1 moveq #"(",D4 cmp.b (A5)+,D4 beq.s LC204 subq #1,A5 clr D4 LC204:clr D2 clr D3 bsr DECTMN beq.s LC25 LC21:move.l A5,(A0)+ addq #1,D2 LC22:move.b (A5),D0 beq.s LC25 cmpi.b #CARCOM,D0 beq.s LC25 addq #1,A5 cmpi.b #$22,D0 bne.s LC24 LC23:move.b (A5),D0 beq ERRAR addq #1,A5 cmpi.b #$22,D0 bne.s LC23 bra.s LC22 LC24:addq #1,D3 cmpi.b #"(",D0 beq.s LC22 subq #2,D3 cmpi.b #")",D0 beq.s LC252 addq #1,D3 bmi ERRAR bne.s LC22 cmpi.b #",",D0 bne.s LC22 dbra D6,LC21 bra ERRGR LC252:tst D4 beq.s LC22 tst D3 bpl.s LC22 subq #1,A5 LC25:tst D4 beq.s LC254 addq #1,D3 LC254:tst D3 bne ERRAR move.l A5,(A0)+ move D2,(A0)+ move #1,(A0)+ move.l A0,-4(A1) clr.l (A0)+ move.l A0,(A1) move.l (A3),A5 bsr APROC2 bra WINSTR ILB76:move A2,D0 bclr #0,D0 bne.s LB762 move A6,D0 bclr #0,D0 bne.s LB763 PLB76:bsr VERA6A LB761:bclr #0,D1 beq.s LB76 bsr.s LB76 move.b (A2)+,(A0)+ GEQ77:rts LB762:move A6,D0 bclr #0,D0 beq.s LB763 bsr VERA6A subq.l #1,D1 bmi.s GEQ77 move.b (A2)+,(A0)+ bra.s LB761 LB763:bsr VERA6A asr.l D1 bcc.s GEQ78 move.b (A2)+,(A0)+ GEQ78:asr.l D1 bcc.s GEQ82 move.b (A2)+,(A0)+ move.b (A2)+,(A0)+ bra.s GEQ82 GEQ80:swap D1 GEQ81:move.b (A2)+,(A0)+ move.b (A2)+,(A0)+ move.b (A2)+,(A0)+ move.b (A2)+,(A0)+ GEQ82:dbra D1,GEQ81 swap D1 subq #1,D1 bpl.s GEQ80 rts LB76H:bsr VERA6B bra.s LB76 XLB76:move.l A6,D1 sub.l A2,D1 move.l A0,A6 add.l D1,A6 LB76:asr.l #2,D1 bcc.s LB77 move (A2)+,(A0)+ LB77:asr.l D1 bcc.s LB78 move.l (A2)+,(A0)+ LB78:asr.l D1 bcc.s LB80 move.l (A2)+,(A0)+ move.l (A2)+,(A0)+ bra.s LB80 LB780:swap D1 LB79:move.l (A2)+,(A0)+ move.l (A2)+,(A0)+ move.l (A2)+,(A0)+ move.l (A2)+,(A0)+ LB80:dbra D1,LB79 swap D1 subq #1,D1 bpl.s LB780 LB800:rts WCHAINV:bsr DECCRVE WCHAIN:bsr DECTMN beq.s LB940 bsr WCHAS LB94:bsr DECCRV bne.s LB95 bsr WCHAS bsr XICHA bra.s LB94 LB940:bsr CPUSHN0 LB95:bsr.s LB95A move.l D3,-(SP) add.l A0,D3 addq.l #1,D3 bclr #0,D3 cmp.l A6,D3 beq.s LB95B movem.l D0-D2,-(SP) bsr PUSHID bsr POPPR movem.l (SP)+,D0-D3 LB95A:move TVARN,D4 LB95C:move.l TMVAR,A0 sub D4,A0 sub D4,A0 sub D4,A0 sub D4,A0 move.l (A0),A0 cmp (A0)+,D4 bne ERRFATR move.l (A0)+,D3 rts LB95B:move.l (SP)+,D3 rts PACK95:bsr PACK bra.s LB95 WTSTCH:move.l A5,A4 bsr DECCRG beq.s GEE45 bsr.s WLSZ beq.s GEE45 bsr DECAN beq.s GEE46 tst D0 bmi.s GEE46 move.b (A3)+,D0 cmpi.b #$54,D0 beq.s GEE45 cmpi.b #$78,D0 beq.s GEE45 andi #$F0,D0 cmpi #$40,D0 beq.s GEE45 cmpi #$60,D0 bra.s GEE45 GEE46:moveq #1,D0 GEE45:move.l A4,A5 rts WCHASV:bsr DECCRVE bra.s WCHAS WCHATET:bsr.s WTSTCH bne ERREX WCHAS:bsr.s WCHAS1 LB96:bsr.s WLSZ beq.s LB97 bsr DECCRVA bne LB95 LB97:bsr.s WCHAS1 bsr XICHA bra.s LB96 WLSZ:bsr DECCRAL beq.s GEE50 cmpi.b #$9F,D0 beq.s GEE49 cmpi.b #$91,D0 GEE49:rts GEE50:subq #1,A5 rts CPUSHN0:moveq #0,D3 bra.s CPUSHN CPUSHN1:moveq #1,D3 CPUSHN:addq #2,A6 move.l A6,A2 move.l D3,(A6)+ add.l D3,A6 bsr VERA6 sub.l D3,A6 bra.s LB99 LB98:move.b D2,(A6)+ LB99:subq.l #1,D3 bpl.s LB98 LB991: move.l A6,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A6 bra LB131 WCHAS1:bsr DECCRG bne.s LC13 addq #6,A6 move.l A6,A2 lea -1000(SP),A0 bra.s LC11 LC10:cmp.l A0,A6 bcc XERRM move.b D0,(A6)+ LC11:move.b (A5)+,D0 beq ERRIS4 cmp.b D1,D0 bne.s LC10 cmp.b (A5)+,D1 beq.s LC10 subq #1,A5 LC12:move.l A6,D1 sub.l A2,D1 move.l D1,-(A2) bra.s LB991 LC13:moveq #32,D2 bsr DECCRAS beq.s CPUSHN1 moveq #13,D2 bsr DECCRAL beq.s CPUSHN1 clr D2 bsr DECCRAZ beq.s CPUSHN1 move.l A5,A4 bsr DECAN bne.s LC18 LC16:move.l A4,A5 bsr WEXPR YSTR:bsr LB95A addq #5,A6 st (A6)+ move.l A5,-(SP) bsr XPRTAF LC17:tst.b -(A6) beq.s LC17 addq #1,A6 move.l (SP)+,A5 move.l A0,A2 move TVARN,D0 bra PB430 LC18:tst D0 bmi.s LC16 move.b (A3)+,D0 move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 move D0,D1 andi #$F0,D1 cmpi #$40,D1 beq LB320 cmpi #$54,D0 beq.s LC19 cmpi #$60,D1 bne.s LC182 sub D1,D0 bra LB190 LC182:subi.b #$78,D0 bne.s LC16 bra LB190 LC19:bsr CPUSHN0 move #3,-(SP) bra LB36 NOMTYP:lea TYPCAR,A2 moveq #0,D3 move.b -2(A0),D3 add D3,A2 moveq #$20,D0 btst #4,(A2) bne.s LC270 add D0,D0 btst #3,(A2) bne.s LC270 moveq #$30,D0 LC270:rts WNOMV:clr D3 WNOM:bsr DECAN beq ERRIS4 WNOMD:tst D0 bpl.s WNOM1 move D3,D0 bne.s LC27 move.l A1,A0 LC26:tst.b (A0)+ bne.s LC26 bsr.s NOMTYP LC27:bsr WNWS LC28:clr D1 LC29:rts LC290:movem (A3),D2/D2 rts WNOM1:move.b (A3)+,D0 move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 WNOM1A:cmpi.b #$20,D0 bcs.s LC290 cmpi.b #$30,D0 bcc.s LC30 bsr WNUMI bra.s LC28 LC30:cmpi.b #$4F,D0 bhi.s LC29 bsr WNUMVL bra.s LC28 WLABLG:bsr DECXGOTO WLABL:bsr DECAN beq.s ERRLI tst D0 bmi.s ERRLI move.b (A3)+,D0 andi #$F0,D0 cmpi #$50,D0 bne.s ERRLI move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 rts WMONO:bsr WEXPRSE XIMONO:bsr XIPOLY bne.s ERRMO bsr WPOLY1 move.l A0,A2 move (A2)+,D0 move (A2),D1 move.l A2,A1 add D0,A2 add D0,A2 tst (A2)+ bne.s ERRMO move (A2),D2 move.l A2,A3 add D0,A2 add D0,A2 cmpi #$4001,(A2) bne.s ERRMO rts ERRLI:moveq #35,D0 trap #15 ERRMO:moveq #45,D0 trap #15 WVARK:bsr.s WMONO XIVARK:cmpi #1,D0 bne.s ERRMO bra POPN WVAR:bsr.s WVARK XIVARS:cmpi #1,D2 bne.s ERRMO rts LC75:move.l A4,D3 sub.l A3,D3 LC76:asr.l #2,D3 bcc.s LC77 move -(A4),-(A1) LC77:asr.l D3 bcc.s LC78 move.l -(A4),-(A1) LC78:asr.l D3 bcc.s LC80 move.l -(A4),-(A1) move.l -(A4),-(A1) bra.s LC80 LC780:swap D3 LC79:move.l -(A4),-(A1) move.l -(A4),-(A1) move.l -(A4),-(A1) move.l -(A4),-(A1) LC80:dbra D3,LC79 swap D3 subq #1,D3 bpl.s LC780 rts WRULE:bsr.s WMONO tst D0 beq.s ERRMO moveq #2,D3 bsr.s LC90 bsr WEXPRSE1 moveq #4,D3 LC90:bsr MG15 bsr LB95A subq.l #4,D3 move.l D3,(A0) bra XICHA XHEXPD: STbkslXHEXPD:movem.l D3/A5,-(SP) bsr PUSHNU move.l (SP)+,D3 beq.s PB93 bpl.s PB92 neg.l D3 move.l D3,-(SP) move TVARN,D0 move D0,D1 subq #1,D1 move D1,D2 bsr XHDIV PB91:move.l (SP)+,D3 PB92:asr.l D3 bcc.s PB94 move.l D3,-(SP) bsr PACKC move TVARN,D0 move D0,D2 move D0,D1 subq #1,D1 bsr XHMUL move.l (SP)+,D3 bne.s PB94 PB93:move.l (SP)+,A5 bra POPPR PB94:move.l D3,-(SP) bsr PACKC move TVARN,D0 subq #1,D0 move D0,D1 move D0,D2 bsr XHMUL bra.s PB91 PB962:lea YTRACE(PC),A0 move.l (A0)+,(A0) moveq #-1,D0 move.l D0,-(A0) lea TPWHILE,A0 move.l (A0)+,(A0) lea TDEBA5,A0 move.l (A0)+,(A0)+ move.l TPPI,(A0) move.l TVALA6,A6 rts WSPBAS1:lea PB960,A5 WSPBAS:bsr X9R WSPBAS2:bsr DECAN tst D0 bmi.s PB96 cmpi.b #$50,(A3)+ bne.s PB96 bsr.s PB962 move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 bsr APROC1 move.l (SP)+,(A0)+ moveq #5,D0 move.l D0,(A0)+ move.l A0,-4(A1) clr.l (A0)+ move.l A0,(A1) move.l (A3),A5 PB963:bsr.s APROC2 bra IRUN PB96:rts APROC2:bsr CPUSHN0 move TVARN,D0 moveq #5,D2 bra MG79 WSTVEL2:bsr WEXPR bra.s WSTVEL1 WSTVELV:bsr DECCRVE WSTVEL:bsr WREEL WSTVEL1:bsr LB95A subq #4,A0 GEE55:lea -2(A0),A2 addq.l #6,D3 bsr MG76 bsr POPPR bsr LB95A move #1,(A0) rts WSTCELV:bsr DECCRVE WSTCEL:bsr WCHAS subq #4,A0 addq.l #1,D3 bclr #0,D3 bne.s GEE56 clr.b 3(A0,D3.L) GEE56:bsr.s GEE55 bset #7,(A0) rts WPHPE:bsr DECCRPH beq.s GEE57 cmpi.b #"]",D0 bne.s GEE58 addq #1,A5 move #$102,D0 cmp D0,D0 rts GEE57:moveq #2,D0 cmp D0,D0 GEE58:rts WSTVSG:bsr.s WPHPE bne.s WSTVEL2 WSTVSG1:move D0,-(SP) bsr.s WSTVEL move (SP)+,(A0) bsr.s WSTVELV bsr.s WPHPE bne.s GEE62 addq #1,D0 move D0,(A0) bra XICHA GEE62:bsr.s WSTVELV bsr DECCRPE bne.s ERR92 move #6,(A0) lea 6(A0),A2 subq.l #6,D3 bsr MG76 bsr XIFLOB cmpi #$4000,(A0) beq.s ERRBFA tst (A0) smi D0 ext D0 andi #$100,D0 addq #5,D0 move D0,-(SP) bsr POPN bsr XICHA bsr LB95A move (SP),(A0) bsr XICHA bsr LB95A cmpi #2,(A0) bne.s ERR92 subq #1,(SP) move (SP)+,(A0) rts ERRBFA:moveq #82,D0 trap #15 ERR92:moveq #92,D0 trap #15 WSTCSG:bsr WPHPE bne WSTCEL WSTCSG1:bset #15,D0 move D0,-(SP) bsr WSTCEL move (SP)+,(A0) bsr WSTCELV bsr WPHPE bne.s ERR92 addq #1,D0 bset #15,D0 move D0,(A0) bra XICHA WSTVIN:bsr WPHPE beq WSTVSG1 cmpi.b #"(",D0 bne.s GEE80 addq #1,A5 bsr YVSET bsr DECCRPD bne.s ERR92 rts GEE80:bsr WCHATET bsr WLMYC1 tst D4 bmi ERRNVR rts WSTCIN:bsr WPHPE beq.s WSTCSG1 cmpi.b #"(",D0 bne.s GEE83 addq #1,A5 bsr YCSET bsr DECCRPD bne.s ERR92 rts GEE83:bsr WCHATET bsr WLMYC1 tst D5 bpl.s ERR92 rts XSTDF:bsr WLMY2 move D0,-(SP) bmi ERRNVR bsr MG76 bsr VERVAR1 move TVARN,D0 move D0,D2 move D0,D1 subq #2,D0 bsr XHSUB move (SP)+,D0 rts XSTKH:move TVARN,D4 subq #1,D4 bsr LB95C move.l 8(SP),D1 bsr WLMY1 move D0,-(SP) bmi ERRNVR bsr MG76 bsr VERVAR1 move (SP)+,D0 rts XSTCF:bsr WLMY2 move D0,-(SP) bpl ERR92 bsr MG76 move TVARN,D2 subq #2,D2 bsr LB321 bsr XCMPCH1 bsr POP2N move (SP)+,D0 rts GEE85:addq #1,D0 beq.s GAN36 bsr.s GAN36 bra GAN38 GAN36:bsr WICOND bsr WSTVIN move.l A5,-(SP) bsr WLMYC2 moveq #0,D1 GEE86:addq.l #1,D1 cmp.l D0,D1 bhi.s GEE91 movem.l D0/D1,-(SP) bsr XSTDF cmpi #1,D0 bne.s GAP20 bsr XICZERO bne.s GEE90 GEE88:bsr POPN GEE89:bsr POPN addq #8,SP move.l (SP)+,A5 bra LB607 GEE900:addq #2,SP GEE90:bsr POPN movem.l (SP)+,D0/D1 bra.s GEE86 GEE91:bsr POPN move.l (SP)+,A5 bra LB608 GAP20:move D0,-(SP) bsr XIFLOB bne.s GEE900 move (SP)+,D0 GEE92:addq.l #1,4(SP) cmpi #2,D0 bne.s GEE98 GEE94:tst (A0) bmi.s GEE90 bsr POPN move.l 4(SP),D1 bsr XSTDF cmpi.b #3,D0 bne ERR92 move D0,-(SP) bsr XIFLOB bne ERRCP move (SP)+,D0 cmpi #$4000,(A0) bne.s GEE96 btst #8,D0 bne.s GEE88 GEE96:tst (A0) bmi.s GEE88 bra.s GEE90 GEE98:cmpi #$102,D0 bne.s GEF10 cmpi #$4000,(A0) beq.s GEE90 bra.s GEE94 GEF10:cmpi.b #4,D0 bne ERR92 cmpi #$4000,(A0) beq.s GEF16 cmpi #4,D0 beq.s GEF14 tst (A0) bmi.s GEF16 GEF12:addq.l #1,4(SP) bra GEE90 GEF14:tst (A0) bmi.s GEF12 GEF16:bsr XSTKH cmpi.b #5,D0 bne ERR92 move D0,-(SP) move TVARN,D0 move D0,D2 move D0,D1 subq #3,D0 bsr XHSUB bsr XIFLOB bne ERRCP move (SP)+,D0 addq.l #1,4(SP) cmpi #5,D0 beq.s GEF18 tst (A0) bmi.s GEF20 bra.s GEF22 GEF18:cmpi #$4000,(A0) beq.s GEF22 tst (A0) bmi.s GEF22 GEF20:bsr POPN bra GEE90 GEF22:bsr POPN bsr XSTKH cmpi #6,D0 bne ERR92 bsr YMODR1 bsr XIFLOB cmpi #$4000,(A0) bne GEE90 bra GEE88 GEF30:addq #1,D0 beq.s GAN40 bsr.s GAN40 bra GAN38 GAN40:bsr WSTCIN move.l A5,-(SP) bsr WLMYC2 moveq #0,D1 GEF32:addq.l #1,D1 cmp.l D0,D1 bhi GEE91 movem.l D0/D1,-(SP) bsr XSTCF cmpi #$8001,D0 bne.s GEF36 tst D3 beq GEE89 GEF34:movem.l (SP)+,D0/D1 bra.s GEF32 GEF36:cmpi.b #2,D0 bne ERR92 addq.l #1,4(SP) tst D3 bne.s GEF38 btst #8,D0 bne.s GEF34 bra GEE89 GEF38:move D3,-(SP) move.l 6(SP),D1 bsr XSTCF cmpi.b #3,D0 bne ERR92 move (SP)+,D4 tst D3 bne.s GEF40 btst #8,D0 bra.s GEF41 GEF40:cmp D3,D4 GEF41:beq.s GEF34 bra GEE89 MA100:move.b (A3),D0 andi #$F0,D0 cmp (SP),D0 bne ERRNR move.b (A3)+,D2 andi #$F,D2 beq.s MA105 move.l A3,D1 addq.l #3,D1 bclr #0,D1 move.l D1,A3 bsr DECCRPG bne.s ERRDMC MA102:bsr WINDEX addq #1,D3 cmp (A3)+,D3 bne.s ERRDMC subq #1,D2 beq.s MA104 bsr DECCRV bne.s ERRDMC bra.s MA102 MA104:bsr DECCRPD beq.s MA120 ERRDMC:moveq #69,D0 trap #15 MA105:bsr DECCRPG bne.s MA120 bra.s ERRDMC MA17:move.l (A1),D0 bsr WINDEX cmp.l (A1),D0 bne ERRIX addq #1,D3 ble ERRIX move.l (A1),A4 move.l -(A4),D0 move D3,(A4)+ move.l D0,(A4)+ move.l A4,(A1) mulu D3,D2 move D2,D0 andi.l #$7FFF,D0 cmp.l D0,D2 bne.s ERRTL addq.b #1,(A2) move.b (A2),D0 andi #$F,D0 beq ERRIXN bsr DECCRV beq.s MA17 MA170:bra DECCRPDE ERRTL:moveq #31,D0 trap #15 Y9: YCVAR: YLITT:move (A3),-(SP) MA10:move (SP),D0 bsr.s XLITT bsr DECCRV beq.s MA10 MA13:addq #2,SP rts XLITT:move D0,-(SP) bsr DECAN beq.s MA13 tst D0 bpl MA100 move (SP),D0 bsr WNW bsr DECCRPG beq.s MA14 MA12:bsr XMARG MA120:bra.s MA13 ERRNR:moveq #36,D0 trap #15 MA14:lea TMNOM,A1 moveq #1,D2 bsr MA17 move (A0),D0 subq #1,D2 add D2,D0 bmi.s ERRTL add D2,(A3) cmpi #$10,(SP) bne.s MA19 move D0,(A0) bra.s MA12 MA19:ext.l D2 bsr XMARG4 move (SP),D0 bra.s MA191 MA190:bsr XIVC addq #1,(A0) MA191:dbra D2,MA190 bra.s MA12 YDIM:bsr DECCRS beq.s GAG71 move.l A5,A0 moveq #"(",D1 GAG70:move.b (A0)+,D0 beq ERRIS4 cmp.b D0,D1 bne.s GAG70 bsr NOMTYP cmpi #$20,D0 beq.s GAG72 bsr.s XLITT bra.s GAG74 GAG71:subq #1,A5 GAG72:bsr.s SIZEIND move (A0),D0 bsr XCIND GAG74:bsr DECCRV beq.s YDIM rts MA204:move.b (A3),D0 andi #$F0,D0 cmpi #$20,D0 bne.s ERRNR move.b (A3)+,D2 move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 move (A3)+,D0 cmp (SP),D0 bne.s MA209 andi #$F,D2 beq.s MA210 bsr DECCRPG bne.s MA209 MA206:bsr WADR addq.l #1,D3 cmp.l (A3)+,D3 bne.s MA209 subq #1,D2 beq.s MA208 bsr DECCRV bne.s MA209 bra.s MA206 MA208:bsr DECCRPD beq MA196 MA209:bra ERRDMC MA210:bsr DECCRPG bne MA196 bra.s MA209 SIZEIND:moveq #32,D3 bsr DECCRS bne.s MA192 bsr WINDEX MA192:lea INDSZ-2(PC),A0 moveq #5,D1 MA193:move.l (A0)+,D0 cmp D0,D3 beq.s MA194 dbra D1,MA193 bra ERRSZ MA194:rts MA198:move.l (A1),D0 bsr WADR cmp.l (A1),D0 bne ERRIX addq.l #1,D3 ble ERRIX move.l (A1),A4 move.l -(A4),D0 move.l A4,-(A4) subq #4,A4 move.l D3,(A4)+ addq #4,A4 clr.l (A4)+ move.l D0,(A4)+ move.l A4,(A1) move.l D2,D1 bsr LMUL13 move.l D3,D2 addq.b #1,(A2) move.b (A2),D0 andi #$F,D0 beq ERRIXN bsr DECCRV beq.s MA198 bra MA170 NBIND:move.l D2,D1 cmpi #4,D0 bcc.s MA200 moveq #0,D2 MA199:add.l D1,D2 bmi XERRMR dbra D0,MA199 bra.s MA2002 MA200:addq.l #7,D2 asr.l #3,D2 subq.b #1,D0 beq.s MA2001 MA2002:addq.l #1,D2 asr.l D2 subq.b #1,D0 beq.s MA2001 addq.l #1,D2 asr.l D2 MA2001:subq.l #1,D2 rts YCIND:bsr SIZEIND move (A0),-(SP) MA195:move (SP),D0 bsr.s XCIND bsr DECCRV beq.s MA195 bra.s MA196 XCIND:move D0,-(SP) bsr DECAN beq.s MA196 tst D0 bpl MA204 moveq #$20,D0 move (SP),D2 bsr WNW1 bsr DECCRPG beq.s MA197 bsr XMARG MA196:addq #2,SP rts MA197:lea TMNOM,A1 moveq #1,D2 bsr MA198 move (SP),D0 bsr.s NBIND bsr XMARG4 move.l (A1),A4 subq #4,A4 MA201:clr.l (A4)+ subq.l #1,D2 bpl.s MA201 move.l A4,(A1) bra.s MA196 YLEN1:bsr WEXPR bra.s YLEN YASC:tst.l D3 beq.s YLEN moveq #0,D3 move.b (A0),D3 YLEN:bsr POPN move.l D3,D0 bra LB305 XCANLST:lea CANAUX3,A0 bra.s GAB71 XCANPRT:lea CANAUX2,A0 GAB71:bsr DECCRDF beq.s GAB73 bsr XCANAL1 bra GAB70 GAB73:bsr XCANAL4 bra DECCRVS PRTOPT:clr TPRINT1 clr.b TESCV moveq #0,D6 clr D5 bsr DECCRD bne.s MA28 MA23:bsr DECCRD beq.s MA28 bclr #5,D0 tst D5 bne.s MA25 lea MA22,A0 moveq #3,D1 MA24:cmp.b (A0)+,D0 dbeq D1,MA24 bne.s MA25 move.b 3(A0),TBASE+1 st D5 bra.s MA27 MA25:lea MA220,A0 moveq #3,D1 MA26:cmp.b (A0)+,D0 dbeq D1,MA26 bne ERRIS4 bset D1,D6 bne ERRIS4 MA27:addq #1,A5 bra.s MA23 MA28:rts YWRITE:bsr.s XCANPRT st -(SP) bra.s GAB750 YLPRINT:bsr XCANLST bra.s GAB75 YPRINT: bsr XCANPRT GAB75:clr -(SP) GAB750:lea REGD7+2,A1 addq #1,D5 bne.s GAB76 bclr #0,(A1) beq.s GAB78 moveq #8,D0 bsr X12BR bra.s GAB78 GAB76:cmpi #-1,D5 beq.s GAB77 moveq #1,D5 bra.s GAB78 GAB77:bsr VERPRN1R GAB78:move D5,(A1) move MOUSE0,-(SP) move TFRMT,-(SP) move TFRMTX,-(SP) clr -(SP) bsr HIDECMR bsr GAC34 move D1,-(SP) move.l A0,-(SP) move D5,-(SP) bsr PRTOPT tst (SP) bgt.s GAB79 btst #2,D6 beq.s GAB79 moveq #12,D0 jsr XP12 GAB79:move D6,-(SP) clr -(SP) bra GAD33 GAB82:bsr DECTMN bne.s GAB880 GAB83:clr.b TESCV bsr GAC16 GAB84:bsr GAC26 lea 14(SP),SP movem (SP)+,D0/D1/D3/D4 GAB85:ext.l D0 ext.l D1 move.l D0,TFRMTX-2 move.l D1,TFRMT-2 move.b TBASET+3(PC),TBASE+1 bra XEREM2R GAB880:bsr DECXTAB bne.s GAB92 bsr DECCRPGI bsr WINDEX andi #$FF,D3 bsr DECCRPDE bsr GAC13 sub D0,D3 bpl.s GAB89 add D0,D3 bsr GAC16 GAB89:bsr GAC18 bsr DECCRVS beq GAD332 bsr DECTMN beq.s GAB83 ERRIS8:bra ERRIS4 GAB92:bsr DECXUSING bne.s GAB98 bsr GAC26 bsr WCHASZ subq #4,A0 bsr GEE55 moveq #6,D0 move.l D0,(A0) bsr PUSHNZ bsr GAC50 bsr USINGCH bra.s GAB986 GAB98:tst 12(SP) beq.s GAB985 bsr WTSTCH beq.s GAB983 bsr WCHASZ bsr USING2 bra.s GAB986 GAB983:bsr WCHAS bsr USING3 bra.s GAB986 GAB985:bsr WCHAS GAB986:move.l (SP),D6 tst 4(SP) bpl.s GAD10 move.b D6,REGD7+3 bsr YCHAN1 GAD10: GAD12:bsr PACK bsr LB95A move.l A0,A3 tst 4(SP) ble.s GAD16 move.l SP,A0 movem.l D3/A3,-(SP) bra.s GAD15 GAD14:move.b (A3)+,D0 jsr INCPOS GAD15:subq.l #1,D3 bpl.s GAD14 movem.l (SP)+,D3/A3 bra.s GAD30 HIDECMR:jmp HIDECM GAD16:bne.s GAD30 btst #3,3(SP) beq.s GAD30 bra.s GAD22 GAD19:bsr GAC34 move D1,10(SP) bsr X9R bsr.s HIDECMR GAD22:tst.l D3 GAD23:ble.s GAD32 tst.b TESCV bne.s GAD25 move.b (A3),D0 beq.s GAD24 cmpi.b #13,D0 beq.s GAD24 lea TCURSC,A1 move (A1)+,D2 cmp (A1),D2 bne.s GAD25 GAD24:subq #1,10(SP) GAD25:tst 10(SP) bmi.s GAD27 move.b (A3)+,D0 jsr X12E subq.l #1,D3 bra.s GAD23 GAD27:jsr XARRET bne.s GAD19 bsr POPN bsr GAC26 lea 14(SP),SP movem (SP)+,D0/D1/D3/D4 bsr GAB85 bra YEND GAD30:move.l 6(SP),A0 bsr PTCAN GAD32:bsr POPN bsr DECTMN beq GAB83 bsr DECCRVS bne ERRIS8 subq #1,A5 GAD33:bsr DECCRV bne.s GAD334 tst 20(SP) bne.s GAD336 tst 12(SP) bne.s GAD332 bsr.s GAC13 andi #$F,D0 moveq #16,D3 sub D0,D3 bsr.s GAC18 GAD332:bsr DECTMN beq GAB84 bra.s GAD33 GAD334:bsr DECCRPV bne GAB82 tst 20(SP) beq.s GAD332 GAD336:tst 12(SP) bne.s GAD332 bsr.s GAC181 bra.s GAD332 GAC13:tst 8(SP) beq.s GAC15 bmi.s XLPOS move 4(SP),D0 rts LSTPOS:dc.w 0 XLPOS:moveq #0,D0 move LSTPOS(PC),D0 divu IMPX,D0 swap D0 move D0,LSTPOS rts GAC15:move TCURSX,D0 rts GAC16:move.l 10(SP),A0 bsr PTCAN13 clr 4(SP) GAC17:subq #1,14(SP) rts GAC181:moveq #",",D0 moveq #1,D3 bra.s GAC180 GAC18:moveq #32,D0 GAC180:move.l 10(SP),A0 add D3,4(SP) lea TCURSX,A1 move (A1),D1 bra.s GAC20 GAC19:bsr PTCANB GAC20:dbra D3,GAC19 cmp (A1),D1 bgt.s GAC17 rts GAC26:tas 16(SP) bne POPN rts GAC34:lea TCURSB,A1 move (A1),D1 subq #4,D1 sub -(A1),D1 rts GAC28:move.b (A0)+,D0 beq.s GAC30 cmpi.b #"_",D0 bne.s GAC29 move.b (A0)+,D0 beq.s GAC30 bra.s GAC28 GAC29:bsr.s GAC52 bne.s GAC28 GAC30:subq #1,A0 rts GAC31:moveq #".",D1 GAC32:move.b (A0)+,D0 beq.s GAC30 bsr.s GAC53 beq.s GAC32 cmp.b D0,D1 beq.s GAC30 bsr.s GAC56 beq.s GAC32 moveq #0,D0 bra.s GAC30 GAC40:moveq #0,D3 bra.s GAC44 GAC42:addq.l #1,D3 GAC44:move.b (A0)+,D0 beq.s GAC46 bsr.s GAC53 beq.s GAC42 bsr.s GAC55 beq.s GAC44 GAC46:subq #1,A0 rts GAC50:bsr XILOC addq #6,A6 move.l A6,A2 add.l D0,A6 add.l D1,A6 bsr VERA6 move.l A2,A6 add.l (A1),A1 rts GAC51:cmpi.b #"~",D0 beq.s GAC54 cmpi.b #"^",D0 beq.s GAC54 cmpi.b #"-",D0 beq.s GAC54 GAC52:cmpi.b #".",D0 beq.s GAC54 GAC53:cmpi.b #"#",D0 beq.s GAC54 cmpi.b #"*",D0 GAC54:rts GAC55:cmpi.b #"~",D0 beq.s GAC54 GAC56:cmpi.b #",",D0 beq.s GAC54 cmpi.b #" ",D0 rts GAC58:clr D1 tst D5 bpl.s GAC59 move.l D5,D0 swap D0 bsr.s GAC61 GAC59:btst #8,D5 bne.s GAC60 cmpi.b #2,D5 beq.s GAC54 GAC590:moveq #"-",D0 bra.s GAC61 GAC60:cmpi.b #1,D5 bne.s GAC54 moveq #"+",D0 GAC61:move.b D0,(A6)+ subq.l #1,D4 cmp.l D3,D4 bge.s GAC54 GAC610:subq.l #1,D3 move.b (A1),D0 bsr.s GAC51 bne.s GAC54 GAC62:addq #1,A1 move.b (A1),D0 bsr.s GAC56 bne.s GAC54 tst D1 beq.s GAC620 move D1,D0 GAC620:move.b D0,(A6)+ bra.s GAC62 USING1:bsr GAC28 moveq #0,D3 tst.b D0 beq.s GAB96 bsr GAC31 tst.b D0 beq.s GAB96 addq #1,D3 GAB93:addq #1,A0 bsr GAC44 cmpi.b #"^",D0 bne.s GAB96 neg.l D3 GAB96:move.l D3,TFRMT-2 move.l D3,TFRMTX-2 rts USING2:bsr GAC50 moveq #32,D1 GAD36:move.b (A0)+,D0 cmp.b D0,D1 beq.s GAD36 moveq #0,D5 cmpi.b #"-",D0 beq.s GAD38 subq #1,A0 move #$100,D5 GAD38:move.l A0,A3 moveq #".",D1 GAS72:move.b (A0)+,D0 beq.s GAS74 cmp.b D0,D1 bne.s GAS72 GAS74:subq #1,A0 move.l A0,D4 sub.l A3,D4 GAD40:move.b (A1)+,D0 beq.s GAD46 cmpi.b #"_",D0 bne.s GAD43 GAD41:move.b (A1)+,D0 beq.s GAD46 GAD42:move.b D0,(A6)+ bra.s GAD40 GAD43:bsr GAC52 beq.s GAD46 moveq #0,D1 cmpi.b #"+",D0 beq.s GAD44 cmpi.b #"$",D0 bne.s GAD42 moveq #15,D1 move.b (A1)+,D0 beq.s GAD440 swap D5 move.b D0,D5 swap D5 GAD44:move.b (A1)+,D0 bsr GAC52 beq.s GAD45 GAD440:subq #2,A1 bra.s GAD41 GAD45:bset D1,D5 GAD46:cmpi.b #"*",-(A1) bne.s GAD47 bset #31,D5 GAD47:move.l A1,A0 bsr GAC40 cmpi.b #"-",D0 beq.s GAD48 cmpi.b #".",D0 bne.s GAD49 move.l D3,-(SP) addq #1,A0 bsr GAC40 move.l (SP)+,D3 cmpi.b #"-",D0 bne.s GAD49 GAD48:move.b #2,D5 GAD49:cmpi.b #1,D5 beq.s GAD50 bcc.s GAD51 btst #8,D5 bne.s GAD51 GAD50:addq.l #1,D4 GAD51:tst D5 bpl.s GAD52 addq.l #1,D4 GAD52:cmp.l D3,D4 blt.s GAD54 bsr GAC58 GAD53:move.b (A3)+,D0 beq.s GAD56 clr D1 bsr GAC61 bra.s GAD53 GAD54:moveq #32,D1 tst.l D5 bpl.s GAD55 moveq #"*",D1 GAD55:cmp.l D3,D4 bge.s GAD52 move.b D1,(A6)+ bsr GAC610 bra.s GAD55 GAD56:cmpi.b #2,D5 bne.s GAD57 btst #8,D5 bne.s GAD57 bsr GAC590 GAD57:move.b (A1),D0 bsr GAC51 beq.s GAD58 bsr GAC56 bne.s GAD72 GAD58:addq #1,A1 move.b #32,(A6)+ bra.s GAD57 GAD72:bra.s USINGCH USING3:bsr GAC50 GAD78:moveq #0,D4 bra.s GAD81 GAD80:move.b D1,(A6)+ GAD81:move.b (A1)+,D1 beq.s GAD82 cmpi.b #"_",D1 bne.s GAD84 move.b (A1)+,D1 bne.s GAD80 GAD82:subq #1,A1 bra.s USINGCH GAD84:cmpi.b #"&",D1 beq.s GAD880 moveq #1,D3 cmpi.b #"!",D1 beq.s GAD88 cmpi.b #"\\",D1 bne.s GAD80 GAD86:move.b (A1)+,D2 beq.s GAD87 addq.l #1,D3 cmp.b D1,D2 bne.s GAD86 bra.s GAD88 GAD87:subq #1,A1 GAD88:move.l D3,D4 cmp.l D3,D0 bcc.s GAD90 GAD880:move.l D0,D3 bra.s GAD90 GAD89:move.b (A0)+,(A6)+ subq.l #1,D4 subq.l #1,D0 GAD90:subq.l #1,D3 bpl.s GAD89 bra.s GAD92 GAD91:move.b #32,(A6)+ GAD92:subq.l #1,D4 bpl.s GAD91 bra.s USINGCH GAM35:move.b D0,(A6)+ USINGCH:move.b (A1)+,D0 beq.s GAM40 lea GAM36,A0 GAM38:move.b (A0)+,D1 beq.s GAM39 cmp.b D1,D0 bne.s GAM38 subq #1,A1 move.l A1,-(SP) move.l A1,D2 bsr XILOC sub.l A1,D2 move.l (SP)+,A0 bra.s GAM42 GAM39:cmpi.b #"_",D0 bne.s GAM35 move.b (A1)+,D0 bne.s GAM35 GAM40:bsr XILOC moveq #6,D2 move.l A1,A0 addq #6,A0 GAM42:move.l D2,(A1) bsr USING1 bra GAP96 YCLS:moveq #12,D0 bsr X12BR rts YSTOP:bsr LB920 bsr XESAVH lea MA390,A0 bsr XN15R YEND:trap #3;HOT YCURS:bsr WINDEX lea TCURSB,A0 cmp (A0)+,D3 bhi.s ERRIS4 move D3,(A0)+ bsr WINDEXV lea TCURSC,A0 MA39:cmp (A0)+,D3 bhi.s ERRIS4 move D3,(A0)+ jmp XCURS0 YCURSX:bsr WINDEX subq #2,A0 bra.s MA39 YCURSH:bsr WINDEX move -(A0),D0 subq #7,D0 cmp D0,D3 bcc.s ERRIS4 bra.s MA39 ERRIS4:moveq #34,D0 trap #15 GEB74:lea GEB75,A2 moveq #9,D3 bsr MG76 move.l A5,D3 bsr YPEKCZ1 bsr.s YXQT1 bsr WINSTR bra DEPILE YXQT1:bsr XICHA YXQT2:bsr LB95A bra.s GEB76 YXQT:bsr WCHAIN bsr LB920 GEB76:bsr.s XCHEXI bsr POPN lea TMCOND,A1 move.l A3,A0 bra PB88 XCHEXI:lea TMEXCP,A1 move.l (A1)+,A3 move.l (A1),A2 lea -16(A2),A2 sub.l D3,A2 cmp.l A2,A3 bcc ERRPXC move.l A0,A2 move.l D3,D1 exg A6,A3 bsr ILB76 exg A6,A3 rts XCHEXFZ:bsr LB95A XCHEXFZbksl1=* .1:bsr.s XCHEXI clr.b (A3)+ addq.l #1,D3 clr.b (A3)+ move.l A3,D0 bclr #0,D0 move.l D0,A3 move.l A5,(A3)+ lea TMEXCP,A1 move.l (A1),A0 move.l A0,(A3)+ move.l A3,(A1) rts YGOTO:bsr WLABL bsr LB920 MA49:cmp.l TMEXC,A5 bcs.s MA490 MA491:cmpi.b #1,(A5) bne.s MA492 bsr WEXCEND move.l D0,A5 bra.s MA49 MA492:tst.b (A5)+ bne.s MA492 bra.s MA491 MA490:move.l (A3)+,A5 rts YGOSUB:bsr WLABL bra LC202 YREMEMBER:bsr WADR add.l D3,D3 bvs ERRRGR addq #1,D3 move.l TMPROCA,A3 move -(A3),D0 subq #2,D0 beq.s GAI38 subq #1,D0 bne.s ERR114 GAI38:move -(A3),D0 addq #1,D0 asl #2,D0 sub D0,A3 tst.l -(A3) bne.s ERR114 move.l TMREM1,A1 move PILEREM,D0 move.l A1,A2 bra.s GAI36 GAI35:cmp.l (A2)+,D3 beq.s GAI40 GAI36:dbra D0,GAI35 move.l D3,(A3) rts GAI40:move.l A2,D2 sub.l A1,D2 move D2,-(SP) bsr REMVAR bsr LB321 move GVALU+2,D0 bsr WASGN2 move.l TMREM,A0 move (SP)+,D2 lea (A0,D2.W),A1 move (A1)+,D1 beq.s GAI42 move (A1),D0 lea (A0,D1.W),A2 move (A2),D3 move D2,2(A0,D3.W) move D1,(A1) move D3,-(A1) move D2,(A2)+ move D0,(A2) move D1,(A0,D0.W) GAI42:bra.s YRET ERR114:moveq #114,D0 trap #15 ERRGRT:moveq #60,D0 trap #15 YNOLOC:bsr.s CLRLOC addq #4,A0 move.l A0,TMPROC rts CLRLOC:move.l TMPROC,A0 lea TCACHE,A3 move.l SOURCEH,D1 move.l TDHAUT,D2 bra.s MM62 MM58:move.l D0,A0 move.l A0,A1 move (A1)+,D0 move.l (A1)+,A4 beq.s MM60 addq #1,D0 bne ERRFATR move.l (A3),A2 cmp.l D2,A2 ble.s ERRPPR move.l -(A2),(A3) move.l (A1)+,(A2)+ bra.s MM61 MM60:move.l (A1)+,A2 MM61:move.l (A4),D0 beq ERRFATR cmp.l A1,D0 beq.s MM612 move.l D0,A4 subq #4,A4 bra.s MM61 MM612:cmp.l D2,A4 bgt.s MM610 cmp.l D1,A4 bge.s ERRPPR MM610:move.l A2,(A4) MM62:move.l -(A0),D0 bne.s MM58 rts ERRPPR:moveq #90,D0 trap #15 ERRTLP:moveq #18,D0 trap #15 REMZER:dc.w 0 REMVAR:asr #2,D2 add REMZER(PC),D2 rts YRET:bsr.s CLRLOC move -(A0),D0 beq.s ERRGRT move -(A0),D1 move.l -(A0),A2 add D1,D1 add D1,D1 sub D1,A0 cmpi #1,D0 beq.s MA50 cmpi #5,D0 beq.s MA50 move.l -(A0),D1 btst #0,D1 beq.s GAI30 movem.l D0/A0/A2,-(SP) movem.l TMREM,A0/A1 move (A0),D2 move.l (A0),D0 ext.l D0 move (A0,D2.W),D3 clr 2(A0,D3.W) move.l D0,(A0,D2.W) move D2,(A0,D0.W) move.l D2,(A0) move D3,(A0) move.l D1,-4(A1,D2.W) bsr.s REMVAR move D2,-(SP) move GVALU+2,D2 bsr LB321 move (SP)+,D0 bsr WASGN2 movem.l (SP)+,D0/A0/A2 GAI30:move.l -(A0),GVALU move.l TPILE,SP move.l -(A0),TPILE MA50:move.l -(A0),D1 lea TMFOR,A1 cmp.l (A1),D1 bcs ERRTLP move.l D1,(A1) move -(A0),TVARLS move.l -(A0),D1 movem.l D0/D1/A0-A2,-(SP) addq #1,D1 bra.s MA503 MA502:move D1,-(SP) bsr POPN move (SP)+,D1 MA503:cmp TVARN,D1 bne.s MA502 moveq #5,D0 bsr WASGN2 movem.l (SP)+,D0/D1/A0-A2 move.l D1,TVARND cmpi #5,D0 beq.s MA510 cmpi #1,D0 beq.s MA51 movem.l A0/A1,-(SP) bsr.s DEPILE2 movem.l (SP)+,A0/A1 move.l A2,A5 bsr.s BCKTMP move.l A5,TDEBA5 cmp.l YRETC(PC),A0 bcc.s MA505 move.l SP,YRETC MA505:rts MA51:bsr.s BCKTMP bsr DECTMN bne YGOTO bsr.s DEPILE2 move.l A2,A5 bra LB93 DEPILE2:bsr LB920 bra DEPILE1 MA510:bsr.s BCKTMP bsr LB920 bsr.s MA512 jmp (A2) MA512:lea YTRACE+4(PC),A0 move.l (A0),-(A0) lea TPWHILE+4,A0 move.l (A0),-(A0) lea TDEBA5+8,A0 move.l (A0),TPPI clr.l (A0) move.l -(A0),-(A0) move.l A6,TVALA6 rts BCKTMP:move.l A0,-(A1) move.l A0,D0 MM64:move.l D0,A0 move.l -(A0),D0 bne.s MM64 move.l A0,-(A1) rts MA58:bsr WEXPR bsr XICZERO seq -(SP) bsr POPN move.b (SP)+,D0 rts YDIF:bsr.s MA58 move SR,-(SP) bsr DECXTHEN move (SP)+,SR beq LB920 bsr LB920 bsr.s DEPILE MA55:bsr DECELSE beq.s MA57 bsr DECEI beq.s DEAV1 bsr DECIF bne.s MA56 bsr DEIFAV MA56:bsr DEAVN bra.s MA55 MA57:move.l A4,A5 bsr DECTMN beq.s DEAV bsr DECXIF lea MA571,A2 moveq #4,D3 bsr MG76 move.l A5,D3 bsr.s DEAV bsr YPEKCZ1 bsr YXQT1 bra WINSTR DEAV:tst.b (A5)+ bne.s DEAV DEPILE:move.b (A5),D0 beq.s MA582 cmpi.b #$1A,D0 bhi.s MA582 beq.s ERRIBF cmpi.b #1,D0 bne ERRFATR bsr WEXCEND move.l D0,A5 bra.s DEPILE MA582:rts DEAV1:tst.b (A5)+ bne.s DEAV1 DEPILE1:move.b (A5),D0 beq.s MA582 cmpi.b #$1A,D0 bcc.s MA582 subq.b #1,D0 bne ERRFATR bsr WEXCEND move.l D0,A5 bra.s DEPILE1 YEXITIF:lea MA62(PC),A0 bra YEXITS YELSE:bsr.s DEAV bsr.s DEPILE MA62:bsr DECEI beq.s DEAV1 bsr DECIF bne.s MA63 bsr.s DEIFAV MA63:bsr.s DEAVN bra.s MA62 DEAVN:move.b (A5),D0 beq.s DEAV cmpi.b #$20,D0 bcs.s ERRIBF bsr DECEND bne.s DEAV ERRIBF:moveq #64,D0 trap #15 DEIFAV:move #1,-(SP) MA64:bsr.s DEAVN bsr DECEI beq.s MA65 bsr DECIF bne.s MA64 addq #1,(SP) bra.s MA64 MA65:subq #1,(SP) bne.s MA64 addq #2,SP rts DECEQV:lea GEQV+1(PC),A4 bra.s MA580 DECIMP:lea GIMP+1(PC),A4 bra.s MA580 DECFORV:lea GFORV+1(PC),A4 bra.s MA580 DECFORC:lea GFORC+1(PC),A4 bra.s MA580 DECNEXTV:lea GNEXTV+1,A4 bra.s MA580 DECNEXTC:lea GNEXTC+1,A4 bra.s MA580 DECSELECT:lea GSELECT+1,A4 bra.s MA580 DECCASE:lea GCASE+1(PC),A4 bra.s MA580 DECECAS:lea GECAS+1(PC),A4 bra.s MA580 DECWEND:lea GWEND+1,A4 bra.s MA580 DECWHILE:lea GWHILE+1,A4 bra.s MA580 DECLOOP1:lea GLOOP+1(PC),A4 bra.s MA580 DECFOR1:lea GET79F1+1(PC),A4 bra.s MA580 DECNEXT:lea GET79N+1,A4 bra.s MA580 DECDO:lea GETDO+1(PC),A4 bra.s MA580 DECUNTIL:lea GUNTIL+1,A4 bra.s MA580 DECREPEAT:lea GREPEAT+1,A4 bra.s MA580 DECELSE:lea GET79E2+1(PC),A4 MA580:move.l A5,-(SP) bsr SAUTLBL bsr.s DECMA4 bra MA60 DECEI:lea GET79E+1(PC),A4 bra.s MA580 DECIF:lea GET79IF+1(PC),A4 bra.s MA580 DECEND:lea GET79E1+1(PC),A4 bra.s MA580 DECOTHERS:lea GOTHERS+1,A4 bra.s DECMA4 DECMIN:lea GMIN+1,A4 bra.s DECMA4 DECMAX:lea GET79M1+1,A4 bra.s DECMA4 DECDATA:lea GET79D1+1(PC),A4 bra.s MA580 DECFOR:lea GET79F1+1(PC),A4 bra.s DECMA4 DECPGE:lea GET79P1+1,A4 bra.s DECMA4 DECXOR:lea GXOR+1,A4 bra.s DECMA4 DECOR:lea GOR+1,A4 bra.s DECMA4 DECAND:lea GAND+1(PC),A4 bra.s DECMA4 DECCLR:lea G79CLR+1(PC),A4 DECMA4:bsr NEXTA5R subq #1,A5 bset #5,D0 cmp.b (A4)+,D0 bne.s MA61 move.l A5,-(SP) addq #1,A5 MA59:move.b (A4)+,D0 beq.s MA590 cmpi.b #" ",D0 beq.s MA590 move.b (A5)+,D1 bset #5,D1 cmp.b D0,D1 beq.s MA59 bra.s MA60 MA590:lea TYPCAR,A4 clr D0 move.b (A5),D0 btst #7,(A4,D0.W) move.l A5,A4 MA60:move.l (SP)+,A5 MA61:rts DECXTO:lea GTO+1,A4 bra.s DECXMA DECXSTEP:lea GSTEP+1,A4 bra.s DECXMA DECXAS:lea GAS+1(PC),A4 DECXMA:bsr.s DECMA4 bne.s GA20 move.l A4,A5 GA20:rts DECXIN:lea GIN+1(PC),A4 bra.s DECXMA DECXOF:lea GET79O1+1,A4 bra.s DECXMA DECXNOT:lea GNOT+1,A4 bra.s DECXMA DECXTHEN:lea GTHEN+1,A4 bra.s DECXMA DECXSTOP:lea GET79S+1,A4 bra.s DECXMA DECXGOTO:lea GET79G+1(PC),A4 bra.s DECXMA DECXERROR:lea GERROR+1(PC),A4 bra.s DECXMA DECXBREAK:lea GBREAK+1(PC),A4 bra.s DECXMA DECXNEXT:lea GET79N+1,A4 bra.s DECXMA DECXIF:lea GET79IF+1(PC),A4 bra.s DECXMA DECXINPUT:lea GINPUT+1(PC),A4 bra.s DECXMA DECXUSING:lea GUSING+1,A4 bra.s DECXMA DECXTAB:lea GTAB+1,A4 bra.s DECXMA DECXCASE:lea GCASE+1(PC),A4 bra.s DECXMA DECXKILL:lea GKILL+1(PC),A4 bra.s DECXMA DECXOFF:lea GOFF+1,A4 bra.s DECXMA DECXMENU:lea GMENU+1,A4 bra.s DECXMA DECXKEY:lea GKEY+1(PC),A4 bra DECXMA DECXBUTTON:lea GBUTTON+1(PC),A4 DECXMAR:bra DECXMA DECXMOUSE:lea GMOUSE+1,A4 bra.s DECXMAR DECXMESSAGE:lea GMESSAGE+1,A4 bra.s DECXMAR DECXTIMER:lea GTIMER+1,A4 bra.s DECXMAR DECXMOD:lea GET79M+1(PC),A4 bra.s DECXMAR DECXDIV:lea GDIV+1(PC),A4 bra.s DECXMAR YEXITSELECT:lea GEF50(PC),A0 bra YEXITS YWHEN:bsr DEAVN GEF50:bsr DECECAS beq DEAV1 bsr DECSELECT bne.s YWHEN bsr.s YWHEN bra.s GEF50 YCONTCASE:bsr LB920 bsr DECCASE beq YPAGE bra.s YCONTCASE YENDSELECT:rts YSELECT:bsr.s DECXCASE bsr WTSTCH beq.s GED40 bsr WEXPR clr -(SP) bra.s GED42 GED40:bsr WCHAS st -(SP) GED42:bsr LB920 bsr DEPILE GED44:bsr DECCASE beq.s GED50 bsr DECSELECT bne.s GED46 bsr.s YWHEN bra.s GED44 GED46:bsr DECECAS beq.s GED48 bsr DEAVN bra.s GED44 GED48:bsr DEAV GED49:addq #2,SP bra POPN GED50:move.l A4,A5 bsr DECOTHERS beq.s GED48 bsr PUSHID tst (SP) bne.s GED52 bsr WHENX bra.s GED53 GED52:bsr WHENC GED53:bsr XIADR bsr POPN bsr LB920 tst D3 beq.s GED44 bra.s GED49 MH909:moveq #3,D0 MH90:movem.l (SP)+,D1/A0/A1/A4/A5 rts MH91:moveq #1,D0 bra.s MH90 MH92:moveq #0,D0 bra.s MH90 MH93:moveq #2,D0 bra.s MH90 DECMA4R:bra DECMA4 XANLGI:movem.l D1/A0/A1/A4/A5,-(SP) move.l A1,A5 bsr SAUTLBL lea GET79IF+1(PC),A4 bsr.s DECMA4R beq.s MH91 lea GWHILE+1,A4 bsr.s DECMA4R beq.s MH91 lea GETDO+1(PC),A4 bsr.s DECMA4R beq.s MH91 lea GREPEAT+1,A4 bsr.s DECMA4R beq.s MH91 lea GWEND+1,A4 bsr.s DECMA4R beq.s MH92 lea GLOOP+1(PC),A4 bsr.s DECMA4R beq.s MH92 lea GUNTIL+1,A4 bsr.s DECMA4R beq.s MH92 lea GSELECT+1,A4 bsr.s DECMA4R beq.s MH91 lea GCASE+1(PC),A4 bsr.s DECMA4R beq.s MH93 lea GECAS+1(PC),A4 bsr.s DECMA4R beq.s MH92 lea GFORV+1(PC),A4 bsr.s DECMA4R beq.s MH91 lea GNEXTV+1,A4 bsr.s DECMA4R beq MH92 lea GFORC+1(PC),A4 bsr DECMA4R beq MH91 lea GNEXTC+1,A4 bsr DECMA4R beq MH92 lea GET79E+1(PC),A4 bsr DECMA4R beq MH92 lea GET79E2+1(PC),A4 bsr DECMA4R beq MH93 bsr DECFOR beq MH91 lea GET79N+1,A4 bsr DECMA4R bne MH909 move D2,-(SP) clr D0 clr D1 MH901:move.b (A4)+,D2 beq.s MH902 cmpi.b #CARCOM,D2 beq.s MH902 addq #1,D1 cmpi.b #"(",D2 beq.s MH901 subq #2,D1 cmpi.b #")",D2 beq.s MH901 addq #1,D1 bne.s MH901 cmpi.b #",",D2 bne.s MH901 addq #1,D0 bra.s MH901 MH902:asl #8,D0 move (SP)+,D2 bra MH90 SAUTLBL:lea TYPCAR,A1 move.l A5,A0 clr D0 LB6190:move.b (A0)+,D0 tst.b (A1,D0.W) bmi.s LB6190 cmpi.b #":",D0 bne.s LB6191 move.l A0,A5 LB6191:rts YENDIF:rts WNOMI:moveq #$20,D3 bsr WNOM bne.s ERRNID andi #$F0,D0 cmpi #$20,D0 bne.s ERRNID cmpi #3,D2 bne ERRSZ rts ERRNID:moveq #88,D0 trap #15 DECLOOP:bsr.s WNOMI bsr DECCREE bsr WADR move.l D3,D2 bsr DECCRV move SR,-(SP) beq.s GEK62 bsr DECXTO bne.s ERRFN GEK62:bsr WADR move.l D3,D4 moveq #1,D3 cmp.l D2,D4 bge.s MA70 moveq #-1,D3 MA70:move (SP)+,SR bne.s GEK64 bsr DECCRV bne.s MA71 bra.s GEK66 GEK64:bsr DECXSTEP bne.s MA71 GEK66:bsr WADR MA71:tst.l D3 beq.s ERRFN move.l D2,(A3) rts YFOR:bsr.s DECLOOP MA72:bsr LB920 bsr DEPILE lea YTRACE(PC),A0 tst (A0)+ bne.s MA73 tst.b (A0);BINSTR beq.s MA73 bsr DECTMN beq.s MA72 MA73:lea TMPROC,A0 move.l (A0)+,A1 lea 16(A1),A1 move.l (A0)+,A2 cmp.l A2,A1 bcc ERRGR move.l (A0),A1 addq #4,A1 MA730:lea -16(A1),A1 cmp.l A1,A2 bgt.s MA731 cmp.l (A1),A3 bne.s MA730 lea 8(A1),A2 MA731:movem.l D3/D4/A3/A5,-(A2) move.l A2,-(A0) rts ERRFN:moveq #46,D0 trap #15 YNEXT:lea TMFOR,A0 move.l (A0),A1 move.l 8(A1),A3 bsr DECTMN beq.s MA78 MA77:movem.l A0/A1,-(SP) bsr WNOMI movem.l (SP)+,A0/A1 MA78:move.l (A1)+,D3 beq.s ERRFN movem.l (A1)+,D4-D6 cmp.l A3,D5 bne.s MA78 add.l D3,(A3) bvs.s MA81 tst.l D3 bmi.s MA80 cmp.l (A3),D4 blt.s MA81 MA79:movem.l D3-D6,-(A1) move.l A1,(A0) cmp.l TDEBA5,D6 bne.s MA795 tst.b BINSTR beq.s MA795 tst YTRACE bne.s MA795 lea 16(A1),A1 GAR27:bsr ESCAPE move $4BC.W,D0 andi #3,D0 GAR28:add.l D3,(A3) bvs.s MA81 tst.l D3 bmi.s GAR30 cmp.l (A3),D4 blt.s MA81 bra.s GAR32 GAR30:cmp.l (A3),D4 bgt.s MA81 GAR32:dbra D0,GAR28 bra.s GAR27 MA795:move.l D6,A5 rts MA80:cmp.l (A3),D4 ble.s MA79 MA81:move.l A1,(A0) bsr DECCRV beq YNEXT bra LB920 YDO:moveq #1,D3 GEY44:bsr LB920 bsr DEPILE tst YTRACE bne.s GEY45 bsr DECTMN beq.s GEY44 GEY45:move.l A5,D4 GEY46:lea TMPROC,A0 move.l (A0)+,A1 lea 16(A1),A1 move.l (A0),A2 cmp.l A2,A1 bcc ERRGR moveq #0,D2 movem.l D2-D4,-(A2) move.l D2,-(A2) move.l A2,(A0) rts YREPEAT:moveq #2,D3 bra.s GEY44 YWHILE:move.l TPWHILE,-(SP) bsr MA58 bne.s GEY48 bsr LB920 move.l (SP)+,D4 moveq #0,D3 bra.s GEY46 GEY48:addq #4,SP bsr LB920 bsr DEPILE GEY49:bsr DECWEND beq DEAV1 bsr DECWHILE bne.s GEY50 bsr DEAV bsr.s GEY49 bra.s GEY49 GEY50:bsr DEAVN bra.s GEY49 YWEND:bsr LB920 moveq #0,D3 GEY52:lea TMFOR,A0 move.l (A0)+,A1 move.l (A0),A2 GEY53:tst.l (A1) addq #8,A1 beq.s GEY54 addq #8,A1 bra.s GEY53 GEY54:cmp.l A2,A1 bge.s ERRBSF cmp.l (A1)+,D3 bne.s ERRIMB move.l (A1)+,A5 move.l A1,-(A0) rts ERRBSF:moveq #80,D0 trap #15 ERRIMB:moveq #81,D0 trap #15 YLOOP:bsr LB920 moveq #1,D3 GEY55:bsr.s GEY52 lea -16(A1),A1 move.l A1,(A0) rts YUNTIL:bsr MA58 beq.s GEY56 bsr LB920 bsr DEPILE1 moveq #2,D3 bra.s GEY55 GEY56:bsr LB920 move.l A5,-(SP) moveq #2,D3 bsr.s GEY52 move.l (SP)+,A5 rts YEXIT:lea XEXIT(PC),A0 YEXITS:moveq #1,D3 bsr DECTMN beq.s GAS82 bsr WINDEX GAS82:movem.l D3/A0,-(SP) bsr LB920 bsr DEPILE bra.s GAS86 GAS84:movem.l D3/A0,-(SP) jsr (A0) GAS86:movem.l (SP)+,D3/A0 subq #1,D3 bne.s GAS84 jmp (A0) XEXIT:lea TMFOR,A0 move.l (A0)+,A1 move.l (A0),A2 movem.l (A1)+,D3-D6 cmp.l A2,A1 bge.s ERRBSF move.l A1,-(A0) tst.l D3 beq.s GEY61 GEY58:bsr DECNEXT beq.s GAM22 bsr DECFOR1 bne.s GEY59 bsr DEAV bsr.s GEY58 bra.s GEY58 GEY59:bsr DEAVN bra.s GEY58 ERR25:moveq #25,D0 trap #15 GAM22:bsr WCHABR bsr POPN bsr DECTMN bne.s ERR25 GAM24:bra.s DEAV1R GEY61:cmpi #3,D5 bcs.s GED82 bne.s GED80 bsr GED64 bra.s GAM20 GED80:bsr GED74 GAM20:bsr XFOR6 DEAV1R:bra DEAV1 GED82:cmpi #1,D5 bcs GEY49 bne.s GEY65 GEY62:bsr DECLOOP1 beq.s DEAV1R bsr DECDO bne.s GEY63 bsr DEAV bsr.s GEY62 bra.s GEY62 GEY63:bsr DEAVN bra.s GEY62 GEY65:bsr DECUNTIL beq.s DEAV1R bsr DECREPEAT bne.s GEY66 bsr DEAV bsr.s GEY65 bra.s GEY65 GEY66:bsr DEAVN bra.s GEY65 YCOND:bsr WPOLY tst.l (A0)+ bne.s MA83 cmpi #$4000,(A0) beq.s MA86 move #$8000,D2 bra.s MA87 MA83:bsr WVGV move.l (A0)+,D1 subq #1,D1 MA85:cmp (A0)+,D2 beq.s MA87 dbra D1,MA85 MA86:moveq #48,D0 trap #15 MA861:moveq #73,D0 trap #15 MA87:lea TMCONDP,A1 move.l (A1),A0 move D2,(A0)+ beq.s MA86 tst (A0) bmi.s MA861 clr (A0) move.l A0,(A1) lea TVARDC,A0 addq #1,(A0) move (A0),D0 bra WASGN2 YIFTH:bsr MA58 move SR,-(SP) bsr DECXTHEN move (SP)+,SR bne LB93 bra WINSTR YCOMPLEXF:move TCMPX,D2 beq PUSHNZ bra LB16 YCOMPLEX:bsr WPOLY tst.l (A0)+ bne.s GAM82 cmpi #$4000,(A0) bne ERRIS4 clr D1 bra.s GAM83 GAM82:bsr XIMONO bsr XIVARK bsr XIVARS GAM83:move D1,TCMPX rts ERRRG:moveq #50,D0 trap #15 YFORMATM:bsr WINDEX cmpi #1,D3 blt.s ERRRG move.l D3,(A3) rts YTAMP:bsr WADRP cmpi.l #$200,D3 blt.s ERRMIN move.l D3,D0 sub.l (A3),D0 ble.s PC13 PC12:add.l D0,A6 lea $4000(A6),A6 bsr VERA6 PC13:cmp.l (A3),D3 beq.s PC15 move.l D3,(A3) lea PC16,A0 bsr XN15R PC14:bsr INITRM cmp.l TDHAUT,A5 bcc YEND PC15:rts ERRMIN:moveq #27,D0 trap #15 YPILE:bsr WINDEX cmpi #100,D3 PC17:blt.s ERRMIN move.l D3,D0 sub.l (A3),D0 ble.s PC13 asl.l #5,D0 bra.s PC12 YPILEC:bsr WINDEX cmpi #$2000,D3 bcc.s ERRRG move.l D3,A1 sub.l (A3),A1 add TVARV,A1 cmp.l #$7800,A1 bcc ERRRG cmpi #1,D3 bra.s PC17 YPACK:bsr DECTMN beq.s PC18 bsr WADRP cmpi.l #2000,D3 blt.s ERRMIN move.l D3,(A3) PC18:bra PACK YFRMT:bsr WINDEX move.l D3,(A3) rts ZALLOC:dc.l $F4000 XLIBERE:move.l ZALLOC(PC),D4 move.l D4,-(SP) move #$49,-(SP) trap #1 addq #6,SP tst.l D0 GAJ19:rts XALLOC: move.l D3,-(SP) sub.l D4,(SP) move #$48,-(SP) trap #1 addq #6,SP cmp.l D0,D4 rts TRTOP1:dc.l $F4000 YHIMEM:bsr PACK move.l TRTOP1(PC),D3 bsr.s DECYMAX beq.s GAJ20 move.l D3,D2 bsr WADRP cmp.l D2,D3 bhi XERRM GAJ20:lea TRTOP(PC),A3 cmp.l (A3),D3 beq.s GAJ19 lea 5000(A6),A0 cmp.l A0,D3 blt XERRM bsr.s XLIBERE bne.s ERRLMT cmp.l D4,D3 ble.s GAJ24 bsr.s XALLOC beq.s GAJ25 tst.l D0 beq.s GAJ22 move.l D0,-(SP) move #$49,-(SP) trap #1 addq #6,SP GAJ22:move.l (A3),D3 bsr.s XALLOC bne.s ERRPLA ERRLMT:moveq #66,D0 trap #15 ERRPLA:moveq #115,D0 trap #15 GAJ24:move.l D4,D3 GAJ25:move.l D3,(A3) move.l TLIMIT(PC),D0 cmp.l D0,D3 bcc.s MA96 cmp.l TPILE,D0 beq.s YLIMTM bsr.s YLIMTM bra PC14 DECYMAX:move.l A5,-(SP) bsr DECMAX bne.s GAJ18 move.l A4,A5 bsr DECTMN bne.s GAJ18 addq #4,SP rts GAJ18:move.l (SP)+,A5 rts YLIMT:move.l TLIMIT(PC),D0 cmp.l TPILE,D0 bne.s ERRLMT bsr.s DECYMAX bne.s MA94 YLIMTM:move.l TRTOP(PC),D3 bra.s MA95 MA94:bsr WADRP MA95:cmp.l TRTOP(PC),D3 bhi.s XERRMR move.l A6,D0 addi.l #5000,D0 cmp.l D3,D0 bcc.s XERRMR move.l D3,TPILE move.l D3,TLIMIT subi.l #20000,D3 move.l D3,TDMAX MA96:rts XERRMR:clr D0 trap #15 YPOBS:bsr WADR move.l D3,A0 GAM28:bsr DECCRV bne.s MA96 bsr WINDEX move D3,D0 ext D0 cmp D0,D3 bne.s ERRRE move.b D3,(A0)+ bra.s GAM28 YPOL:bsr WADRP GAM30:bsr DECCRV bne.s MA96 move.l A0,-(SP) bsr WENTIER lea GAM32,A1 jsr XCMPS bpl.s ERRRE tst (A0) bmi.s ERRRE bsr GAI66 moveq #4,D3 bsr YMKZ1 bsr LB95A move.l (A0)+,D0 move.l (SP)+,A0 move.l D0,(A0)+ move.l A0,-(SP) bsr POPN move.l (SP)+,A0 bra.s GAM30 ERRRE:moveq #40,D0 trap #15 YPOB:bsr WADR move.l D3,A0 MA960:bsr DECCRV bne.s MA96 bsr WINDEX cmpi #$100,D3 bcc.s ERRRE move.b D3,(A0)+ bra.s MA960 YPOW:bsr WADRP MA961:bsr DECCRV bne MA96 bsr WADR cmpi.l #$10000,D3 bcc.s ERRRE move D3,(A0)+ bra.s MA961 YPOLS:bsr WADRP MA962:bsr DECCRV bne MA96 bsr WADR move.l D3,(A0)+ bra.s MA962 YPOWS:bsr WADRP MA963:bsr DECCRV bne MA96 bsr WINDEX move D3,(A0)+ bra.s MA963 GAP10:addq #2,A0 btst #5,(A0) bne.s ERRNVR SLNI:jsr SLNH0 btst #0,D0 bne.s ERRNVR btst #5,(A0) beq.s PC22 add D0,A0 move (A0),D0 andi #$A000,D0 bne.s ERRNVR jsr SLNH0 btst #0,D0 bne.s ERRNVR PC22:add D0,A0 rts VERPOL:move (A0)+,D1 move D1,D2 moveq #-1,D3 bra.s PC24 PC23:cmp (A0),D3 bge.s ERRNVR move (A0)+,D3 PC24:dbra D1,PC23 move (A0)+,D3 bra.s PC28 PC25:move D2,D1 move.l A0,A2 bra.s PC27 PC26:cmpm (A2)+,(A1)+ bhi.s PC28 bne.s ERRNVR PC27:dbra D1,PC26 bra.s ERRNVR PC28:move.l A0,A1 add D2,A0 add D2,A0 bsr.s SLNI dbra D3,PC25 rts ERRNVR:moveq #68,D0 trap #15 YPOP:bsr YPOPC VERVAR1:bsr LB95A VERVAR:movem.l D3/A0,-(SP) btst #0,D3 bne.s ERRNVR move (A0)+,D4 bpl.s PC32 addq #1,D4 beq.s GAP22 bsr GAP10 addq #1,D4 bne.s ERRNVR GAP22:bsr GAP10 PC31:sub.l (SP)+,A0 cmp.l (SP)+,A0 bne.s ERRNVR rts PC32:bne.s PC34 bsr.s VERPOL bra.s PC31 PC34:bsr SLNI subq #1,D4 bra.s PC37 PC36:move.l (A0)+,-(SP) move.l A0,-(SP) bsr.s VERPOL addq #2,A0 move.l (SP)+,D0 add.l (SP)+,D0 cmp.l A0,D0 bne.s ERRNVR PC37:dbra D4,PC36 bra.s PC31 ERRDEP:moveq #67,D0 trap #15 WPUSU:lea TVARN,A0 move (A0),D0 subq #1,(A0)+ move (A0),D1;TVARU subq #1,(A0) move.l TMVAR,A0 move.l A0,A1 sub D0,A0 sub D0,A0 sub D0,A0 sub D0,A0 tst.l (A0) beq.s ERRDEP PC40:sub D1,A1 sub D1,A1 sub D1,A1 sub D1,A1 move.l (A0),A2 cmp (A2),D0 bne ERRFATR clr.l (A0) move.l A2,(A1) move D1,(A2) rts YPOPC:lea TVARN,A2 move (A2)+,D1 move (A2),D0;TVARU addq #1,D0 addq #1,D1 move.l TMVAR,A0 move.l A0,A1 sub D0,A0 sub D0,A0 sub D0,A0 sub D0,A0 tst.l (A0) beq.s ERRDEP move D0,(A2) move D1,-(A2) bra.s PC40 YPUSH:bsr WEXPR bsr.s WPUSU bsr DECCRV beq.s YPUSH rts YPUSHC:bsr WCHAS bsr.s WPUSU bsr DECCRV beq.s YPUSHC rts GED10:bsr DECAN beq MM20 tst D0 bmi ERR91 move.b (A3)+,D0 move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 move (A3),-(SP) move D0,D1 andi #$F,D1 beq.s GED14 cmpi.b #"(",(A5) beq.s GED14 move.l A5,-(SP) lea GED12,A5 bsr WNOM1A move.l (SP)+,A5 bra.s GED15 GED14:bsr WNOM1A GED15:bne ERRMT andi #$F0,D0 move (SP)+,D1 cmpi #$20,D0 bne.s GED20 cmpi #4,D2 bcs.s GED17 tst.b D2 bne ERRNIN GED17:swap D0 move D1,D0 swap D0 move.l A3,D2 bra.s GED22 GED20:ext.l D0 ext.l D2 GED22:sub.l D3,D5 movem (SP)+,D1/D3/D4 move.l #$31303030,D6 movem.l D0/D2/D5/D6,-(SP) moveq #16,D0 add D0,D3 add D0,D4 movem D1/D3/D4,-(SP) bsr DECCRV beq GED10 MM20B:bra.s MM20A GED30:bsr DECAN beq.s MM20A move 2(SP),D3 subi #16,D3 bmi ERRLOC move D3,2(SP) cmpi.l #$31303030,18(SP,D3.W) bne ERRLOC movem.l 6(SP,D3.W),D3/D4 cmpi #$20,D3 bne.s GED37 move.l D3,D4 swap D4 bsr WNWLOC bne.s GED33 bsr MA198 GED33:move 2(SP),D3 movem.l 6(SP,D3.W),D0/D1/D3 cmp.l D3,D2 bgt ERRIXH move.l (A1),A4 move.l -(A4),D3 move.l A4,(A1) movem.l D1/D3,-(A4) btst #0,D1 beq.s GED35 swap D0 cmpi #1,D0 beq ERROD cmpi #3,D0 beq ERROD GED35:bsr DECCRV beq.s GED30 MM20A:bra.s MM20 GED37:bsr WNWLOC bne.s GED38 bsr MA17 GED38:move 2(SP),D3 cmp 16(SP,D3.W),D2 bgt ERRIXH bra.s GED35 ERR91:moveq #91,D0 trap #15 ERRLOC1:moveq #77,D0 trap #15 YLOCAL:clr.l -(SP) move TVARN,-(SP) MM20:bsr DECAN bne.s MM21 move (SP)+,D0 lea TVARN,A0 cmp (A0),D0 blt.s ERRLOC1 tst (SP)+ bne.s ERRLOC1 add (SP)+,SP move D0,-(A0) rts MM21:tst D0 bmi ERRLOC move.b (A3)+,D2 move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 cmpi.b #$72,D2 bne.s MM27 cmp.l #GDATAA,A3 beq GED10 cmp.l #GACCESS,A3 beq GED30 cmp.l #GDATAV,A3 bne.s MM23 MM22:bsr WEXPR bsr DECCRV beq.s MM22 bra.s MM20 MM23:cmp.l #GDATAC,A3 bne.s MM26 MM25:bsr WCHAS bsr DECCRV beq.s MM25 MM20C:bra.s MM20 MM26:cmp.l #GDATAI,A3 bne ERRIS4 MM260:bsr WADR movem (SP)+,D0-D2 move.l D3,-(SP) addq #4,D2 addq #4,D1 movem D0-D2,-(SP) bsr DECCRV beq.s MM260 bra.s MM20C MM27:move (A3)+,D2 move (A3),D0 cmpi #YLITT-Y9,D2 beq.s MM28 cmpi #YCVAR-Y9,D2 bne MM46 MM28:move D0,-(SP) MM29:bsr DECAN bne.s MM31 MM30:addq #2,SP bra.s MM20C MM31:movem (SP),D3/D4 cmpi #$10,D3 bne.s MM32 move TVARLS,D4 MM32:bsr WNWLOC bne.s MM34 bsr MA17 MM34:movem (SP),D0/D4 cmpi #$10,D0 beq.s MM42 move D4,D1 add D2,D4 cmp TVARU,D4 bcc ERRPL move D4,(A3) move D4,2(SP) cmpi #$40,D0 beq.s MM40 move TVARN,D0 cmp D0,D4 ble.s MM36 move D0,D4 MM36:cmp D1,D4 ble.s MM38 movem D1/D4,-(SP) bsr LB95C bsr VERVAR movem (SP)+,D1/D4 subq #1,D4 bra.s MM36 MM38:move 2(SP),D0 cmp TVARN,D0 ble.s MM44 bsr PUSHNZ bra.s MM38 MM40:move 2(SP),D0 cmp TVARN,D0 ble.s MM44 bsr CPUSHN0 bra.s MM40 MM42:lea TVARLS,A0 sub D2,(A0) move (A0)+,D2 cmp (A0),D2 ble ERRTL MM44:bsr DECCRV beq MM29 bra MM30 MM46:cmpi #YCIND-Y9,D2 bne ERRIS4 bsr SIZEIND move (A0),-(SP) MM48:bsr DECAN beq MM30 move (SP),D4 moveq #$20,D3 bsr WNWLOC bne.s MM50 bsr MA198 MM50:move (SP),D0 bsr NBIND add.l D2,D2 add.l D2,D2 move.l (A1)+,A0 add.l D2,A0 lea 20(A0),A0 cmp.l (A1),A0 bcc ERRGR move.l -(A1),A4 move.l -(A4),D0 subq #4,A4 move.l A4,A3 MM52:clr.l (A4)+ subq.l #4,D2 bpl.s MM52 move.l D0,(A4)+ move.l A4,(A1) moveq #0,D2 MM54:move 4(SP),D3 beq.s MM56 move (SP),D0 move.l 4(SP,D3.W),D3 movem.l D1/D2/A3,-(SP) bsr WNUMIK bsr LB900 movem.l (SP)+,D1/D2/A3 subq #4,4(SP) addq.l #1,D2 subq.l #1,D1 bne.s MM54 MM56:bsr DECCRV beq.s MM48 bra MM30 GEB79:rts YPROC:cmpi.b #"(",(A5) bne.s GEB79 addq #1,A5 addq #4,SP move.l #GLOCAL+1,D3 bsr YPEKCZ1 bsr CPUSHN0 lea TBUF,A2 lea 1000(A2),A0 moveq #1,D3 moveq #0,D2 GEB82:movem.l D2/D3/A0/A2,-(SP) bsr DECAN beq ERRIX tst D0 bmi.s GEB87 moveq #-3,D3 cmp.l #GACCESS-1,A3 beq.s GEB84 moveq #-1,D3 cmp.l #GET79V+6,A3 beq.s GEB84 moveq #-2,D3 cmp.l #GET79C+7,A3 beq.s GEB84 cmp.l #GET79I+8,A3 bne.s GEB87 bsr SIZEIND GEB84:move D3,-(SP) bsr DECAN beq ERRIX move (SP)+,D3 movem.l (SP)+,D0/D4/A0/A2 cmp D0,D3 bne.s GEB88 GEB86:moveq #",",D2 move.b D2,(A0)+ move.b D2,(A2)+ bra.s GEC12 GEB87:movem.l (SP)+,D3/D4/A0/A2 tst D3 bne.s GEB86 moveq #-1,D3 GEB88:lea GEB90,A3 cmpi #-1,D3 bgt.s GEB92 subq #8,A3 beq.s GEB92 subq #8,A3 cmpi #-3,D3 bne.s GEB92 subq #8,A3 GEB92:moveq #32,D2 move.b D2,(A0)+ move.l (A3)+,A4 GEB94:move.b (A4)+,(A0)+ bne.s GEB94 move.b D2,-1(A0) move.b D2,(A2)+ move.l (A3)+,A4 GEB96:move.b (A4)+,(A2)+ bne.s GEB96 subq #2,A2 tst D3 bmi.s GEC10 cmp D2,D3 beq.s GEC10 move.b #"*",(A2)+ move.b #"$",(A2)+ move D3,D0 moveq #"0",D1 asr #4,D0 beq.s GEB98 add D1,D0 move.b D0,(A2)+ GEB98:move D3,D0 andi #$F,D0 add D1,D0 move.b D0,(A2)+ GEC10:move.b D2,(A2)+ GEC12:move.b (A1)+,(A2)+ bne.s GEC12 subq #1,A2 moveq #1,D5 move D3,-(SP) move.l D4,-(SP) bsr DECCRPG bne.s GEC16 GEC14:move.b D1,(A2)+ move.l D5,D1 bsr CONC12 bsr WADR exg A2,A0 move.b #"Ý",(A0)+ move.l D3,D0 jsr PINTA exg A2,A0 addq.l #1,D3 bsr LMUL13 move.l D3,D5 bsr DECCRV beq.s GEC14 bsr DECCRPDE move.b D1,(A2)+ GEC16:move.l (SP)+,D3 cmpi #-3,(SP) bne.s GEC18 moveq #1,D5 GEC18:move.l TMPROCA,A3 move -(A3),D4 beq ERRARN move -(A3),D0 ext.l D0 sub.l D3,D0 bcs ERRARV bsr PB840 lea (A0,D0.L),A4 lea TBUF+TBUFLC,A1 cmp.l A1,A4 bcc XERRM GEC20:move.b (A3)+,(A0)+ dbra D0,GEC20 subq #1,A0 addq.l #1,D3 lea TBUF+1500,A1 cmp.l A1,A0 bgt.s GEC22 lea -1000(A1),A1 cmp.l A1,A2 blt.s GEC23 GEC22:bsr.s CONC12 GEC23:subq.l #1,D5 beq.s GEC25 move.b #",",(A0)+ bra.s GEC18 GEC25:move (SP)+,D2 bsr DECCRV beq GEB82 bsr DECCRPD bne GEB82 bsr.s CONC12 bsr LB920 bra YXQT1 CONC12:movem.l D1/D3/D5/A5,-(SP) move.l A0,-(SP) move.l A2,D3 lea TBUF,A2 sub.l A2,D3 beq.s GEC30 bsr MG76 bsr XICHA GEC30:move.l (SP)+,D3 lea TBUF+1000,A2 sub.l A2,D3 beq.s GEC32 bsr MG76 move TVARN,D0 move D0,D1 subq #2,D0 move D0,D2 bsr XHCHA bsr POPN GEC32:lea TBUF,A2 lea 1000(A2),A0 movem.l (SP)+,D1/D3/D5/A5 rts YBASE:bsr WINDEX cmpi #2,D3 blt ERRIS4 cmpi #36,D3 bgt ERRIS4 move.b D3,TBASE+1 move.l D3,(A3) rts YPRIORD:moveq #0,D3 bra.s GEB70 YPRIORF:moveq #1,D3 GEB70:bsr DECTMN beq.s GEB72 bsr WADR GEB72:andi #1,D3 move D3,(A0) rts YPUIS:bsr WEXPR bsr DECCRV beq.s MB110 bsr XIADR bne ERRIS4 cmpi.l #5910,D3 bcc ERRRG bra.s MB112 MB110:bsr WINDEX TTbkslMB112: MB112:movem.l D3/A5,-(SP) bsr PUSHNU bsr PUSHNU MB114:move.l (SP)+,D3 beq.s MB118 bmi.s MB116 subq.l #1,D3 move.l D3,-(SP) move TVARN,D0 move D0,-(SP) subq #1,D0 move D0,D1 subq #1,D1 move D1,-(SP) move D0,D2 bsr XHMUL movem (SP)+,D0/D1 move D0,D2 bsr XHSUB bra.s MB114 MB116:addq.l #1,D3 move.l D3,-(SP) move TVARN,D0 move D0,D1 subq #2,D0 move D0,D2 bsr XHADD move TVARN,D0 subq #1,D0 move D0,D1 subq #1,D1 move D0,D2 bsr XHDIV bra.s MB114 MB118:bsr POPN move.l (SP)+,A5 bra POPPR YPC:bsr WVAR move D1,-(SP) bsr WVGA move.l D3,-(SP) tst (SP)+ bne ERRIX bsr WPOLY1 move (SP)+,D1 move (SP)+,D0 addq #8,A6 bsr XCOEFP bsr NEWVP bsr DECCRV beq.s YPC rts YSUBS:move.l D3,-(SP) bsr WVAR move D1,-(SP) bsr WEXPRSE1 bsr XICHA bsr PACK95 move.l A0,A1 move (SP)+,D0 add.l (SP)+,A1 bsr.s XSUBS move.l A6,D3 sub.l A0,D3 move.l D3,-(A0) bsr DECCRV beq.s YSUBS rts XSUBS:move.l A0,-(SP) move.l A5,-(SP) move (A0)+,D2 bne.s MB16 bsr XSBSP move.l (SP)+,A5 move.l (SP),A0 bsr XLB76 move.l (SP)+,A0 rts MB16:subq #1,D2 movem.l D2/A1/A6,-(SP) move D0,(SP) move #1,(A6)+ jsr XPOSE bra.s MB20 MB18:move.l (SP),A1 movem D0/D2,-(SP) move.l (A4)+,D1 move.l A4,A0 add.l D1,A4 move.l A4,-(SP) bsr XSBSP move.l A2,A0 bsr XFFCT1 move.l (SP),A4 move -2(A4),D1 move.l A0,-(SP) bsr XEXPF move.l (SP),A0 bsr XLB76 move.l (SP)+,A1 move.l 12(SP),A0 bsr XMULF move.l (SP)+,A4 MB20:movem (SP)+,D0/D2 dbra D2,MB18 movem.l (SP)+,A0/A2-A4 move.l A3,A5 move.l A4,A0 bsr XLB76 move.l A4,A0 rts WREEP:bsr WREEL WREEP1:move.l A5,-(SP) bsr XIFLOA smi FLREEP bpl.s MB201 bsr XHEXACTS MB201:move TVARN,D0 subq #1,D0 move D0,-(SP) bsr XHFLOA bpl.s MB203 st FLREEP bsr XHEXACTS MB203:bsr XIREEL move (SP)+,D0 move.l A0,A1 bsr XHREEL move (A0),SGPM1 move.l (SP)+,A5 rts WREEPD:bsr WREEL WREEPD1:bsr.s WREEP1 move.l A5,-(SP) addq #6,A6 move.l A6,-(SP) move PRIOR(PC),(A6)+ bne.s MB205 clr.l (A6)+ MB205:jsr XDIVMS movem.l (SP)+,A0/A5 rts YDIVR:bsr.s WREEPD MB207:move.l A0,A1 move.l A3,A0 bsr XLB76 move.l A1,A2 bra POPNEW YINT:bsr PUSHNU XIDIVR:bsr.s WREEPD1 bra.s MB207 YCINTV:bsr XIREELP YCINT:bclr #7,(A0) move SR,-(SP) lea TCONSTH+4,A0 bsr PUSHN bsr XIADD bsr.s YINT move (SP)+,SR beq.s MB21 bsr XIFLOB cmpi #$4000,(A0) beq.s MB21 bset #7,(A0) MB21:rts YLINT:btst #7,(A0) beq.s YINT bsr XIEXACT bsr XIFLOB btst #5,(A0) beq.s MB21 bsr.s YINT bsr PUSHNU bra XISUB YGINT:cmpi #$4000,(A0) beq.s GEC40 bchg #7,(A0) GEC40:bsr.s YLINT bsr XIFLOB cmpi #$4000,(A0) beq.s GEC41 bchg #7,(A0) GEC41:rts YMODR:bsr WREEL YMODR1:bsr WREEPD1 MB210:move.l A2,A6 move.l A0,A2 bsr POPNEW MB211:tst.b FLREEP RETFL:beq.s MB21 bra XIFLO YMODS:bsr WREEL bclr #7,(A0) YMODSA:moveq #2,D0 bsr LB305 bsr XIDIV YMODS1:bsr WREEPD1 move -(A6),D0 tst SGPM1 bpl.s MB212 cmpi #$4000,(A3) beq.s MB212 addq #1,D0 MB212:move D0,SGPM1 btst #0,D0 beq.s MB210 move.l A2,A6 move.l A0,A2 bsr LC12 move TVARN,D0 subq #2,D0 bsr WASGN2 bsr XISUB bra.s MB211 YPGCDR:bsr WENTIER MB22:bsr DECCRV bne MB21 bsr.s MB230 lea XPGCD,A2 bsr MI34 bra.s MB22 MB230:bsr WENTIER MB231:move.l A0,-(SP) move TVARN,D0 subq #1,D0 bsr XHREEL move.l (SP)+,A1 rts YMIN:clr -(SP) MB24:jsr WREEPC bpl.s MB25 bsr POPN bra.s MB26 MB25:bsr POPPR MB26:move.b FLREEP,D0 or.b D0,(SP) bsr DECCRV beq.s MB24 MB27:tst (SP)+ bra RETFL YMAX:clr -(SP) MB28:jsr WREEPC bmi.s MB280 bsr POPN bra.s MB282 MB280:bsr POPPR MB282:move.b FLREEP,D0 or.b D0,(SP) bsr DECCRV beq.s MB28 bra.s MB27 YABS:bclr #7,(A0) rts YPYDE:move (A3),-(SP) bsr DECCRV beq.s MB322 move (A0)+,D0 bra.s MB320 MB32:clr (A0)+ MB320:dbra D0,MB32 bra.s MB332 MB322:bsr WVAR bsr LB95A move.l (A0)+,D0 bra.s MB326 MB324:cmp (A0)+,D1 beq.s MB328 MB326:dbra D0,MB324 bra.s MB33 MB328:clr -(A0) MB33:bsr DECCRV beq.s MB322 MB332:bsr LB95A move.l (A0)+,D3 move (SP)+,D5 ext.l D5 move D5,D6 move.l A0,A1 move D3,D0 bra.s MB336 MB334:tst (A1)+ beq.s MB338 MB336:dbra D0,MB334 bra.s MB349 MB338:move.l A0,A2 add D3,A2 add D3,A2 move (A2)+,D4 subq #1,D3 MB34:move.l A0,A1 move D3,D1 moveq #0,D0 MB340:tst (A1)+ bne.s MB342 add (A2),D0 bcc.s MB342 addi.l #$10000,D0 MB342:addq #2,A2 dbra D1,MB340 tst D6 bne.s MB344 cmp.l D0,D5 bcc.s MB348 bra.s MB346 MB344:cmp.l D0,D5 bcs.s MB348 MB346:move.l D0,D5 MB348:jsr SLNG20 add D0,A2 dbra D4,MB34 MB349:move.l D5,D3 bra YLEN X12BR:jmp X12B YPYVN:move (A0),D0 bra MB530 YPYMN:move (A0)+,D0 add D0,A0 add D0,A0 move (A0),D0 addq #1,D0 bra MB530 YPYV:bsr WVGK2 move D3,D0 subq #1,D0 move.l (A0)+,D1 cmp D1,D0 bcc.s MB440 add D0,A0 add D0,A0 move (A0),D2 bsr POPN LB16R:bra LB16 MB36:addq #4,SP bra LB608 WVGV:movem.l D3/A3,-(SP) bsr LB95A moveq #1,D2 move (A0)+,D0 bne.s MB38 tst (A0)+ beq.s MB40 move (A0),D2 bra.s MB40 MB38:cmp D2,D0 beq.s MB40 bsr.s SLNG0R add D0,A0 move 6(A0),D2 MB40:bsr DECCRV bne.s MB42 bsr WVAR move D1,D2 MB42:bsr LB95 movem.l (SP)+,D3/A3 rts YPYM:bsr WVGK2 move.l (A0)+,D2 move.l A0,A1 add D2,D2 add D2,A0 move (A0)+,D1 subq #1,D3 cmp D3,D1 bcc.s MB45 MB440:bsr POPN bra PUSHNZ MB44:add D2,A0 bsr.s SLNG0R add D0,A0 MB45:dbra D3,MB44 lea -2(A1),A6 bsr XMONO move.l A4,A1 jsr XPOSE lea -2(A1),A0 bra MG620 YNORM:tst (A0)+ beq.s YPYNR MB531:bsr PUSHN bra POPPR YPYNR:move (A0)+,D0 ext.l D0 asl.l #2,D0 lea 2(A0,D0.L),A0 bra.s MB531 SLNG0R:jmp SLNG0 YFCN:bsr WEXPR move (A0),D0 MB530:move D0,D3 bsr POPN move D3,D0 bra LB303 YFCE:bsr WVGK2 moveq #1,D0 cmp D0,D3 beq.s MB530 clr D0 subq #1,D3 move (A0)+,D1 cmp D1,D3 bcc.s MB530 bsr.s SLNG0R add D0,A0 subq #1,D3 MB54:add.l (A0)+,A0 dbra D3,MB54 move -(A0),D0 bra.s MB530 YFCP:bsr WVGK2 move (A0),D2 bne.s MB56 subq #1,D3 beq.s MB60 MB55:bsr POPN bra PUSHNU MB56:subq #1,D3 beq.s YNORM cmp D2,D3 bcc.s MB55 move.l A0,A6 subq #1,D3 addq #2,A0 bsr.s SLNG0R add D0,A0 bra.s MB59 MB58:add.l D1,A0 MB59:move.l (A0)+,D1 dbra D3,MB58 move.l A0,A2 move.l A6,A0 clr (A0)+ subq.l #2,D1 bsr LB76 exg A6,A0 bra.s MB590 MB60:rts XFRD1:bsr XFDEV tst (A0) beq.s MB60 movem.l A0/A5,-(SP) bsr XNUMF move.l A2,-(SP) move.l A2,A0 bsr XFDEV bsr XFFCT0 move.l 4(SP),A0 bsr XDENF move.l A2,A0 bsr XFDEV bsr XFFCT0 bsr XINVF move.l A2,A1 move.l (SP)+,A0 bsr XCONCP move.l (SP),A0 bsr XLB76 movem.l (SP)+,A0/A5 rts XFRD:bsr.s XFRD1 XRECT:tst (A0) beq.s MB60 move.l A5,-(SP) bsr XRED2 move.l (SP)+,A5 rts YFRD:bsr.s XFRD MB590:bra MG620 YFRF:bsr WVGK2 YFRF1:movem.l D3/A5,-(SP) bsr XFFCT1 bsr XRED2 move.l (SP)+,D3 bsr XREDQ GAN22:move.l (SP)+,A5 bra.s MB590 YCXNORM:bsr WEXPRCX bpl.s GAP16 lea CFLN2,A1 bra.s YCFONF GAP16:move.l A5,-(SP) bsr XCMOD bra.s GAN22 YREIM:move (A3),-(SP) bsr WEXPRCX GAP26:bmi.s GAN90 move (SP)+,D0 move.l A5,-(SP) bsr XREIM bra.s GAN22 GAN90:lea CFLRE,A1 tst (SP)+ beq.s YCFONF GAN91:lea CFLIM,A1 YCFONF:movem.l A1/A5,-(SP) bsr XICFLA bra GAN92 YRE1:clr -(SP) GAP27:bsr LB95 tst (A0) bra.s GAP26 YIM1:move #1,-(SP) bra.s GAP27 YSROOT:bsr WVGV move.l A5,-(SP) bsr XSROOT bra.s GAN22 WGAUSSV:bsr DECCRVE WGAUSS:bsr WEXPRCX bmi ERRFLI bsr WICOND bsr PUSHID bsr PUSHID bsr YCXINT2 bsr XISUB bsr XIZERO bne ERRNIN POPNR1:bra POPN GAP52:bsr.s POPNR1 bsr POPPR addq #2,SP rts XEUCL:move TVARN,-(SP) bsr PUSHNU bsr PUSHNZ GAP46:move (SP),D0 bsr XHZERO beq.s GAP52 move (SP),D2 subq #1,D2 bsr.s LB321R move (SP),D2 bsr.s LB321R bsr YCXDIV1 move (SP),D2 addq #2,D2 bsr.s GAP48 move (SP),D2 bsr.s GAP48 move (SP),D2 bsr.s GAP50 move (SP),D2 addq #2,D2 bsr.s GAP50 move (SP),D0 bsr.s WASGN2R move (SP),D0 addq #2,D0 bsr.s WASGN2R bsr.s POPNR1 bra.s GAP46 LB321R:bra LB321 GAP48:move D2,-(SP) subq #1,D2 bsr.s LB321R move (SP)+,D2 bsr.s LB321R move 4(SP),D2 addq #3,D2 bsr.s LB321R bsr XIMUL bsr XISUB bra WICOND GAP50:move D2,-(SP) bsr.s LB321R move (SP)+,D0 subq #1,D0 WASGN2R:bra WASGN2 YCXINV:bsr WGAUSS bsr WGAUSSV bsr.s XEUCL bra POPPR YCXGCD:bsr WGAUSS GAP54:bsr DECCRV bne.s GAP55 bsr WGAUSS bsr XEUCL bsr POPNR1 bra.s GAP54 YCXINT:bsr.s WEXPRCX YCXINT1:bsr WICOND YCXINT2:bsr PUSHID bsr YRE1 bsr YCINTV bsr MG790 bsr YIM1 bsr YCINTV bsr TTCMPX bsr LB16 XIMULADD:bsr XIMUL bra XIADD YCXDIV:bsr.s WEXPRCX bsr.s WEXPRCXV YCXDIV1:bsr XIDIV bra.s YCXINT1 YCXMOD:bsr.s WEXPRCX move TVARN,-(SP) bsr.s WEXPRCXV move (SP),D2 bsr LB321 move (SP)+,D2 addq #1,D2 bsr LB321 bsr.s YCXDIV1 bsr XIMUL bsr XISUB bra WICOND WEXPRCXV:bsr DECCRVE WEXPRCX:bsr TTCMPX bsr WEXPR tst (A0) GAP55:rts YFORMC:bsr.s WEXPRCX bmi XICFLA YFORMC1:move.l A5,-(SP) bsr XFORMC bra GAN22 YCC:bsr.s WEXPRCX bmi.s GAN94 move.l A5,-(SP) bsr XCC bra GAN22 GAN94:lea CFLCJG,A1 bra YCFONC YCARG:bsr GAN84 bra GAN91 YCXABS:bsr.s WEXPRCX bpl.s GAN96 YCABS:lea CFLN1,A1 bra YCFONF GAN96:bsr.s YFORMC1 bsr XIZERO beq.s GAN97 bsr LB95 move.l A5,-(SP) bsr XCMOD move.l (SP)+,A5 bsr MG620 moveq #2,D3 bsr YROOT1 bsr XIZERO beq ERRREE GAN97:rts YFRE:bsr DUMPAR bsr PACK move.l SP,D0 sub.l A6,D0 bra LB305 YDER:bsr WVGV move D2,D0 movem.l A3/A5,-(SP) move.l (A3),A1 jsr (A1) bsr MG620 movem.l (SP)+,A3/A5 bsr DECCRV subq #1,A5 beq.s YDER addq #1,A5 MB600:rts YDERK:bsr WINDEX bsr WVGV tst D3 bmi ERRIX move D2,D0 MB601:subq #1,D3 bmi.s MB600 movem.l D0/D3/A3/A5,-(SP) move.l (A3),A1 jsr (A1) bsr MG620 bsr LB95 movem.l (SP)+,D0/D3/A3/A5 bra.s MB601 YMODP:bsr.s MB640 bsr MB641 MB641:bra POPPR MB640:bsr WPOLY bsr WVGV move D2,-(SP) move TVARN,D2 move D2,-(SP) subq #1,D2 bsr LB321 move (SP)+,D1 move (SP)+,D0 clr TCND XICND:movem.l D0/D1/A5,-(SP) bsr LB95 movem.l (SP)+,D0/D4 move.l A0,A1 bsr LB95C exg A1,A0 bsr XCND3 move.l (SP)+,A5 bra MG620 YDIVP:bsr.s MB640 move TVARN,D0 move D0,D1 subq #2,D0 move D0,D2 move.l A5,-(SP) bsr XHSUB move.l (SP)+,A5 bsr POPN bra XIDIV YDCOM:bsr XIFAC bsr WEXPRE move.l A5,-(SP) bsr XIPOL move.l A0,-(SP) bsr XPGCDF bsr XLB76 movem.l (SP)+,A2/A5 bsr POPNEW bsr DECCRV beq.s YDCOM rts YPRFC:tst PRIOR beq.s YPRFC1 moveq #120,D0 trap #15 YPRFC1:move.l A5,-(SP) bsr WENTIERP move.l (SP)+,A1 bsr DECCRV beq.s MB70 move.l A1,A5 MB70:bsr MB230 move (A1),D0 andi #$7FFF,D0 cmpi #$4001,D0 beq ERRRG move.l A1,A3 move.l A5,-(SP) addq #6,A6 move.l A6,-(SP) clr (A6)+ jsr XPF3 move.l #$10000,(A2)+ movem.l (SP)+,A2/A5 bra POPNEW MB710:rts YRO:bsr WINDEX cmpi #1,D3 beq.s MB710 blt ERRRT YROOT1:movem.l D3/A5,-(SP) bsr LB95 moveq #0,D3 bsr YFRF1 addq #4,A0 move.l (SP)+,D3 movem.l D3/A0/A6,-(SP) addq #2,A0 move #1,(A6)+ jsr XRO2 tst D4 beq.s MB72 MB71:addq #4,SP move.l (SP),A6 moveq #0,D0 bsr WSD3L movem.l (SP)+,A0/A3/A5 bra MG620 MB72:movem.l 4(SP),A0/A1 cmpi #1,(A0)+ bne.s MB74 movem.l (SP)+,D3/A0/A2 MB73:move.l A0,A1 bsr XLB76 move.l A1,A0 move.l (SP)+,A5 bra MG620 MB74:addq #2,A1 exg A1,A0 move.l A0,-(SP) jsr XDIVS2 move.l (SP)+,A0 bsr XLB76 movem.l (SP),D3/A0 move (A0)+,D1 subq #2,D1 bsr SLNG0R add D0,A0 MB76:add.l (A0)+,A0 move -(A0),D0 ext.l D0 divs D3,D0 move D0,(A0)+ swap D0 tst D0 bne.s MB71 dbra D1,MB76 movem.l (SP)+,D3/A0/A1 bsr XCONCP bra.s MB73 YKEYGET:move.l (A3),A0 st KEYRECT jsr (A0) bra LB305 YVAL:bsr XCHEXFZ move.l TDEBA5,-(SP) movem.l D3/A0/A1/A5,-(SP) move.l A0,A5 bsr POPN bsr WEXPR bsr DECTMN sub.l (SP)+,A5 move.l A5,D3 movem.l (SP)+,A0/A1/A5 move.l (SP)+,TDEBA5 move.l (A1),A3 bsr WEXCENDbksl1 addq.l #1,D3 cmp.l -(A3),D3 bne ERREX rts DECCRPGI:cmpi.b #"(",(A5)+ beq.s GAG51 move.l A5,TDECA5 ERRIS9:bra ERRIS4 YMID:bsr.s DECCRPGI bsr WCHAS bsr DECCRVE bsr.s XMID bra DECCRPDE GAG51:rts YLEFT:bsr WVGA moveq #0,D0 bra.s MB81 XMID:bsr WADR subq.l #1,D3 bmi ERRIX bsr DECCRV beq.s MB80 move.l D3,D0 moveq #-1,D3 bra.s MB81 MB80:move.l D3,D0 bsr WADR MB81:move.l D3,D1 bsr LB95A addq #6,A6 move.l A6,A3 cmp.l D3,D0 bcs.s MB82 move.l D3,D0 MB82:lea (A0,D0.L),A2 sub.l D0,D3 cmp.l D3,D1 bcs.s MB83 MB825:move.l D3,D1 MB83:bsr ILB76 MB84:move TVARN,D0 bra PB43 YRIG:bsr WVGA move.l D3,D1 bmi.s ERRIS9 bsr LB95A sub.l D1,D3 bge.s MB85 add.l D1,D3 move.l D3,D1 moveq #0,D3 MB85:lea (A0,D3.L),A2 addq #6,A6 move.l A6,A3 bra.s MB83 YMIRROR:lea (A0,D3.L),A1 bra.s GEF61 GEF60:move.b -(A1),D0 move.b (A0),(A1) move.b D0,(A0)+ GEF61:cmp.l A1,A0 blt.s GEF60 rts GEF64:bsr.s YMIRROR move.l D3,-(SP) bsr WCHAS bsr.s YMIRROR bsr DECCRV bne.s GEF66 bsr WADR move.l D3,(SP) subq.l #1,D3 bmi ERRIX GEF66:bsr XILOC move.l D1,D4 sub.l D0,D4 addq.l #2,D4 move.l D1,D3 sub.l (SP)+,D3 bpl.s GEF68 moveq #0,D3 GEF68:add.l D3,A1 sub.l D3,D1 rts GEA60:bsr WCHAS bsr WVGA subq.l #1,D3 bmi ERRIX bsr XILOC add.l D3,A1 sub.l D3,D1 rts YIST:bsr.s GEA60 bmi.s MB95 YIST1:lea TYPCAR-1,A4 moveq #0,D4 MB90:cmp.l D0,D1 bcs.s MB95 addq.l #1,D3 move.l A0,A2 move.l A1,A3 move.l D0,D2 bra.s MB92 MB91:move.b (A2)+,D5 move.b (A3)+,D4 cmp.b D4,D5 beq.s MB92 tst.b (A4) beq.s MB94 btst #6,1(A4,D4.L) beq.s MB94 bchg #5,D4 cmp.b D4,D5 bne.s MB94 MB92:subq.l #1,D2 bpl.s MB91 MB93:bsr POP2N move.l D3,D0 bra LB305 MB94:addq #1,A1 subq.l #1,D1 bra.s MB90 MB95:moveq #0,D3 bra.s MB93 YRIST:bsr GEF64 bmi.s MB95 move.l D4,-(SP) bsr.s YIST1 GEF70:bsr XIADR tst.l D3 bne.s GEF72 addq #4,SP rts GEF72:bsr POPN move.l (SP)+,D0 sub.l D3,D0 bra LB305 YRISTK:bsr GEF64 bmi.s MB95 move.l D4,-(SP) bsr.s YISTK1 bra.s GEF70 YISTK:bsr GEA60 bmi.s MB95 YISTK1:cmp.l D0,D1 blt.s MB95 lea TYPCAR-1,A2 move.b (A2)+,D5 moveq #0,D4 tst.l D3 beq.s GEA64 subq.l #1,D3 subq #1,A1 addq.l #1,D1 GEA63:subq.l #1,D1 cmp.l D0,D1 blt.s MB95 addq.l #1,D3 move.b (A1)+,D4 tst.b (A2,D4.L) bmi.s GEA63 GEA64:move.l A0,A4 move.l A1,A3 move.l D0,D2 bra.s GEA67 GEA65:move.b (A4)+,D4 cmp.b (A3),D4 beq.s GEA66 tst.b D5 beq.s GEA63 btst #6,(A2,D4.L) beq.s GEA63 bchg #5,D4 cmp.b (A3),D4 bne.s GEA63 GEA66:addq #1,A3 GEA67:subq.l #1,D2 bpl.s GEA65 cmp.l D0,D1 beq.s GEA68 move.b (A3),D4 tst.b (A2,D4.L) bmi.s GEA63 GEA68:addq.l #1,D3 bra MB93 YDK:bsr GEA60 bmi MB95 sub.l A1,D3 GEB20:subq.l #1,D1 cmpi.b #32,(A1)+ beq.s GEB20 addq.l #1,D1 subq #1,A1 sub.l D0,D1 blt.s MB95R lea TYPCAR-1,A2 moveq #0,D2 bra.s GEB24 GEB22:move.b (A1)+,D4 move.b (A0)+,D2 cmp.b D4,D2 beq.s GEB24 tst.b (A2) beq.s MB95R btst #6,1(A2,D2.L) beq.s MB95R bchg #5,D2 cmp.b D4,D2 bne.s MB95R GEB24:dbra D0,GEB22 add.l A1,D3 tst.b 1(A2,D2.L) bpl.s GEA68 tst.l D1 beq.s GEA68 move.b (A1),D2 tst.b 1(A2,D2.L) bpl.s GEA68 MB95R:bra MB95 YSPC:moveq #32,D2 bsr WADR bra.s MB980 YCHR:bsr WINDEX MB98:cmpi #$100,D3 bcc ERRIX move D3,D2 bsr WVGA MB980:tst.l D3 bmi ERRIX bra CPUSHN YCHRP:bsr WINDEX move D3,D2 cmpi #32,D3 bcc.s MB98 ori #$1900,D2 bsr WVGA tst.l D3 bmi ERRIX add.l D3,D3 bmi ERRIX addq #2,A6 move.l A6,A2 move.l D3,(A6)+ add.l D3,A6 bsr VERA6 sub.l D3,A6 bra.s MB982 MB981:move D2,(A6)+ MB982:subq.l #2,D3 bpl.s MB981 bra LB131 YPRTST:bsr WENTIERP lea XMPT,A2 bra.s MI37 YPREM:bsr WENTIERP lea XMPRS,A2 bra.s MI37 YRANDOM:bsr WENTIERP lea XRND,A2 bsr DECCRV bne.s MI37 bsr WVAR move D1,-(SP) bsr WVGA move.l D3,-(SP) tst (SP)+ bne ERRIX bsr XIREEL move (SP)+,D1 move (SP)+,D0 move.l A0,A3 move.l A5,-(SP) addq #8,A6 jsr XMPRND bsr NEWVP move.l (SP)+,A5 rts MI37:bsr.s MI38 bra POPPR MI38:move.l A5,-(SP) addq #6,A6 move.l A6,-(SP) move PRIOR(PC),(A6)+ bne.s MI39 clr.l (A6)+ MI39:jsr (A2) movem.l (SP)+,A2/A5 bra LC12 YISQR:bsr.s GAM17 lea SQRT1,A2 bra.s MI37 YINTLG:bsr XIEXACT bsr XIREEL lea XINTLG,A2 bra.s MI37 YINTROOT:bsr.s GAM17 bsr WINDEXV move D3,-(SP) bsr XIREEL move (SP)+,D3 lea XRO1,A2 cmpi #1,D3 bgt.s MI37 blt.s ERRRG4 GAM16:rts GAM17:bsr YINT bsr XIREEL tst (A0) bpl.s GAM16 ERRRG4:bra ERRRG YPKL:bsr PUSHNZ bsr WADRP move.l (A0),D0 lea XPOSEL,A2 bra.s MI37 YPKB:bsr WADR moveq #0,D0 move.l D3,A0 move.b (A0),D0 bra.s WD4L YPKW:bsr WADRP moveq #0,D0 move (A0),D0 bra.s WD4L YPKLS:bsr WADRP move.l (A0),D0 WD4L:bra LB305 XN15R:jmp XN15 YPKWS:bsr WADRP move (A0),D0 ext.l D0 bra.s WD4L YPKBS:bsr WADR move.l D3,A0 move.b (A0),D0 ext D0 bra LB303 YTYP:moveq #8,D0 bsr X12BR bsr DECAN beq ERRISR move.l A1,A0 bsr.s XN15R lea MC38(PC),A0 bsr X15R lea MC37(PC),A0 st FLTYP tst D0 bmi.s MC13 move.b (A3)+,D0 move.b D0,FLTYP lea MC35(PC),A0 cmpi #13,D0 bcc.s MC14 MC12:bsr X15R andi #$F,D0 addq #3,D0 asr D0 lea MC17(PC),A0 jsr RELAD MC13:bsr X15NR bsr DECCRV beq.s YTYP rts MC14:cmpi #$60,D0 bcs.s MC15 lea MC36(PC),A0 cmpi #$70,D0 bcs.s MC12 MC15:move D0,-(SP) cmpi #$50,D0 bcc.s MC16 andi #$F0,D0 addq #1,D0 MC16:lea MC18(PC),A0 jsr RELAD move (SP)+,D0 cmpi #$50,D0 bcc.s MC13 cmpi #$10,D0 bcs.s MC13 move D0,D2 andi #$F,D2 beq.s MC13 bsr X15R move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 addq #2,A3 move.l A6,-(SP) move.l A6,A0 move.b #"(",(A0)+ subq #1,D2 andi #$F0,D0 cmpi #$20,D0 beq.s MC162 MC160:move (A3)+,D0 subq #1,D0 jsr XPREX move.b #",",(A0)+ dbra D2,MC160 MC161:move.b #")",-1(A0) clr.b (A0)+ move.l (SP)+,A6 move.l A6,A0 bra MC13 MC162:move.l (A3)+,D0 subq.l #1,D0 jsr XPREXL move.b #",",(A0)+ dbra D2,MC162 bra.s MC161 MC53:movem.l D3/A5/A6,-(SP) move D3,D1 ble.s ERRRG3 lea TBASE,A0 jsr XEXPD2 move.l A2,A6 move.l A2,A0 jsr XBNB addi #10,D1 cmpi #$1000,D1 bcc.s ERRRG3 movem.l (SP)+,D3/A5/A6 MH85:rts YPRC2:bsr WINDEX subq #1,D3 cmpi #$FFF,D3 bcc.s ERRRG3 addq #1,D3 move D3,D1 bra.s MC535 YCVZ:cmpi.l #$1000,D3 bcc.s ERRRG3 lea XVALN,A2 bra MI37 YCVI:moveq #2,D0 bra.s GAI63 YCVL:moveq #4,D0 GAI63:cmp.l D0,D3 beq.s YCVZ ERRRG3:bra ERRRG YPRC:bsr WINDEX MC534:bsr.s MC53 neg.l D3 subq.l #1,D3 move.l D3,TFRMT-2 MC535:bsr.s INITPR XRLOGC:move TPREC(PC),D1 cmp TPRECL(PC),D1 beq.s MH85 bsr XRNLOG moveq #4,D0 bsr WASGN2 move TPREC(PC),TPRECL rts INITPR:moveq #0,D0 move D1,D0 jsr SQRS exg D0,D1 addq #1,D0 lea TPREC(PC),A0 move D1,(A0)+ move D1,PRECIS2 add D0,D1 move D1,(A0)+ move D0,(A0)+ rts XREPIC:lea TPREC(PC),A0 move (A0),D0 cmp -(A0),D0;TPREC3 beq.s MH25 bsr XRNPI bsr PUSHID moveq #2,D0 bsr WASGN2 bsr XIFLOB addq #2,-(A0) moveq #3,D0 bsr WASGN2 move TPREC(PC),TPREC3 MH25:rts XPI:moveq #2,D4 bsr LB95C addq #2,A0 jmp XUNFL YAPP:bsr WEXPR move TPREC(PC),D3 bsr WVGK1 move D3,-(SP) bsr XICEXACT bsr LB95 move (SP)+,D3 bsr XAVA bra MG620 YACOSH: STbkslYACOSH:bsr XIFLOB tst (A0) bmi ERRRG bsr XQMUN bsr PUSHNM bsr XIMUL bsr YSQRT bra.s STbkslYASINH1 YATNH: STbkslYATNH:bsr YARC bsr XIDIV bra.s STbkslYASINH1 YASINH1: STbkslYASINH1:bsr XRLOGC lea XFFASH,A1 bra YAEXP1 XQMUN:bsr XIEXACT bsr PUSHID bsr XIMUL bsr PUSHNU bsr MG790 bsr XISUB bra XIFLO YANGLE:bsr XIFLO bsr WREEL bsr MG790 XIANGLE:bsr XREPIC bsr XIPOL move.l A5,-(SP) jsr XFFANG move.l (SP)+,A5 subq #2,A2 bra POPNEW YASIN: STbkslYASIN:bsr.s YARC bsr MG790 bra.s XIANGLE YACOS: STbkslYACOS:bsr.s YARC bra.s XIANGLE YLOG1:bsr XRLOGC lea XFFLOG1,A1 bra.s YAEXP2 YEXP1:bsr XRLOGC lea XFFEXP1,A1 bra.s YAEXP2 YSQR:bsr XIRPOS beq.s YSQRT lea TCONSTH+4,A0 bsr PUSHN bra PB416 YARC:bsr PUSHID bsr XIFLO bsr MG790 bsr XQMUN YSQRT:lea XFFSQR,A1 bra.s YAEXP2 YSIN:bsr XREPIC lea XFFSIN,A1 bra.s YAEXP2 YCOS:bsr XREPIC lea XFFCOS,A1 YAEXP2:bra YAEXP1 YTAN:bsr XREPIC lea XFFTAN,A1 bra YAEXP1 YLOG:bsr XLOG bsr DECCRV bne MH25 bsr WFLOAT GAM78:bsr XLOG bra XIDIV YLOG10: STbkslYLOG10:bsr XLOG moveq #10,D0 bsr LB305 bra.s GAM78 YSINH1:bsr XRLOGC lea XFFSH,A1 bra.s YAEXP1 YCOSH1:bsr XRLOGC lea XFFCH,A1 bra.s YAEXP1 YTANH1:bsr XRLOGC lea XFFTH,A1 bra.s YAEXP1 YAEXP:bsr XRLOGC lea XFFEXP,A1 bra.s YAEXP1 YATN:lea XFFATN,A1 move TPREC(PC),D0 cmpi #43,D0 bgt.s YAEXP1 bsr XREPIC lea XFFATN1,A1 YAEXP1:movem.l A1/A5,-(SP) bsr XIFLO GAN92:moveq #-1,D0 GAN83:move.l (SP)+,A1 move D0,-(SP) bsr LB95A addq #2,A0 GAP88:addq #8,A6 jsr (A1) move (SP)+,-(A2) move.l (SP)+,A5 GAP96:bsr LC12 bra POPPR XIRPOS:bsr XICFL1 tst 4(A0) bmi.s GAP70 cmpi #-1,(A0) GAP70:rts XLOG:bsr.s XIRPOS beq.s YALOG2 GAN84:bsr.s XLOGPI lea CFLLOG,A1 bra.s YCFONC YALOG2:bsr XRLOGC YALOG1:lea XFFLOG,A1 bra.s YAEXP1 YEXP:bsr XICFL1 cmpi #-1,(A0) beq.s YAEXP bsr.s XLOGPI lea CFLEXP,A1 bra.s YCFONC XLOGPI:bsr XRLOGC bra XREPIC YCFONC:movem.l A1/A5,-(SP) bsr XICFLA moveq #-2,D0 bra.s GAN83 YFLOAT:bsr XICFL1 bsr DECCRV bne.s GAM79 bsr WFLOAT lea CFLMIM,A1 bsr.s YCFONC bra XIADD YMKSD:move.l (A3),-(SP) bsr XIFLO addq #6,A6 bsr LB95A addq #2,A0 move.l (SP)+,A1 jsr (A1) bra GAP96 YCVS:move.l A5,-(SP) move.l (A3),A1 move #-1,-(SP) bra GAP88 YAPI:bsr XREPIC moveq #2,D2 bra LB321 YDL:bsr.s MC59 bsr XTKP bra MG620 MC58:bsr WINDEX tst D3 bmi ERRRG GAM79:rts MC59:bsr.s MC58 bsr WVGV move D2,D0 move D3,D1 rts YSHYG:bsr.s MC59 movem.l D2/D3/A0/A6,-(SP) move.l TVALA6(PC),-(SP) move PACK(PC),-(SP) move #$4E75,PACK MC60:clr.l (A6)+ bsr DECCRV bne.s MC61 move.l A6,-(SP) bsr WEXPRE bsr XFFCT1 move.l A0,-(SP) bsr POPN move.l (SP)+,A2 move.l (SP),A0 bsr XLB76 move.l (SP)+,A0 move.l A6,-(SP) bsr WINDEXV move.l (SP)+,A6 move D3,(A6)+ move.l A6,D0 sub.l A0,D0 move.l D0,-(A0) bra.s MC60 MC61:move (SP)+,PACK move.l (SP)+,TVALA6 MC62:movem.l (SP)+,D0/D1/A0/A1 movem.l A0/A5,-(SP) bsr.s MC64 bsr SSER MC63:move.l (SP)+,A0 bra MB73 YSEXP:bsr.s MC59 movem.l D2/D3/A0/A6,-(SP) bsr.s MC68 clr.l (A6)+ bra.s MC62 MC64:movem.l D0/D1/A1,-(SP) addq #2,A0 tst.l (A0) bne.s MC640 cmpi #$4000,4(A0) beq.s MC642 MC640:jsr XVAL tst D5 ble ERRPY MC642:movem.l (SP)+,D0/D1/A1 rts XMULPQR:jmp XMULPQ MC66:movem.l D0/D1/A5,-(SP) bsr.s XMULPQR movem.l (SP)+,D0/D1 move.l A2,A0 move.l A0,-(SP) bsr XTKP1 move.l A2,A0 lea TCONSTQ,A1 jsr XMULP move.l (SP),A0 bsr XLB76 movem.l (SP)+,A2/A5 rts MC68:move #$4001,D0 MC69:clr (A6)+ move.l #$60001,(A6)+ move D0,(A6)+ move #-1,(A6)+ rts MC70:move.l #$60014002,D0 MC71:clr (A6)+ move.l #$80001,(A6)+ move.l D0,(A6)+ move #-1,(A6)+ rts MC72:move.l #$60034002,D0 bra.s MC71 YSCOS:bsr MC59 movem.l D2/D3/A0/A6,-(SP) addq #2,A0 move.l A0,-(SP) bsr.s MC66 move.l (SP)+,A0 bsr XLB76 move.l A6,12(SP) bsr.s MC68 bsr.s MC70 clr.l (A6)+ bra MC62 YSSIN:bsr MC59 movem.l D2/D3/A0/A5,-(SP) bsr MC64 bsr MC66 move.l A6,A1 bsr.s MC68 MC74:bsr.s MC72 MC75:clr.l (A6)+ movem.l (SP),D0/D1 move.l A2,A0 bsr SSER move.l 8(SP),A0 move.l A2,-(SP) addq #2,A0 bsr XPSAF1 move.l A2,A1 move.l (SP)+,A0 bsr XMULF movem.l (SP)+,D0/D1 bsr XTKP move.l A0,A2 bra MC63 YSLOG:bsr MC59 movem.l D2/D3/A0/A5,-(SP) bsr MC64 jsr XPSAP bsr.s XCHSPR move.l A6,A1 bsr MC68 move #1,-2(A6) move #$4002,D0 bsr MC69 bra.s MC75 XCHSPR:jmp XCHSP YSATN:bsr MC59 movem.l D2/D3/A0/A5,-(SP) bsr MC64 bsr XMULPQR bsr.s XCHSPR move.l A6,A1 bsr MC70 move #1,-2(A6) bra.s MC74 YTIME:move.l $4BA.W,D0 subi.l #0,D0 movem.l A5/A6,-(SP) lea 12(A6),A6 bsr XPOSELR move.l A2,A0 lea TCONST200,A1 jsr XDIV1 movem.l (SP)+,A5/A6 move.l A2,A0 bra PUSHN YTIME3:move.l $4BA.W,D0 sub.l YTIME+6(PC),D0 move.l D0,D1 add.l D0,D0 add.l D0,D0 add.l D1,D0 bra LB305 YCLR:bsr DECTMN beq PC14 bsr WNOMV beq ERRISR cmpi #YCOND-Y9,(A3) bne.s MC762 lea TMCOND(PC),A0 move.l (A0)+,A1 move.l A1,(A0) clr (A1) move #PILEINT,TVARDC rts MC762:cmpi #YTIME-Y9,(A3) bne ERRISR XCLRTIM:move.l $4BA.W,YTIME+6 rts NEXTA5R:jmp NEXTA5 YMUS:move.b #10,TBASE+1 bsr WCHAIN clr.b (A0,D3.L) lea MUSV1(PC),A1 lea MUSV(PC),A2 move.l (A1)+,(A2)+ move.l (A1)+,(A2)+ move (A1)+,(A2)+ movem.l A5/A6,-(SP) addq #2,A6 move.l A6,-(SP) move.l A0,A5 move.l (A2)+,(A6)+ MC77:bsr.s NEXTA5R tst.b D0 beq.s MC79 ext D0 move D0,D2 subi #"A",D2 lea MC88(PC),A0 cmpi #26,D2 bcs.s MC78 lea MUSA(PC),A0 jsr RELAD bne ERRISR MC78:lea MUSV(PC),A2 jsr (A0) bra.s MC77 MC79:lea MUSF(PC),A0 move.l (A0)+,(A6)+ move.l (A0)+,(A6)+ move (A0)+,(A6)+ move #32,-(SP) trap #14 addq #2,SP MC80:bsr ESCAPE st (SP) move #32,-(SP) trap #14 addq #2,SP tst.l D0 bne.s MC80 movem.l (SP)+,D0/A5/A6 move.b TBASET+3(PC),TBASE+1 bra POPN MC84:movem.l D2/A2/A6,-(SP) move #1,(A6)+ bsr DECP beq.s MC85 subq #2,A2 bsr XTINDX bne ERRISR bra.s MC86 MC85:clr D3 MC86:movem.l (SP)+,D2/A2/A6 rts DECPER1:moveq #8,D2 DECPER:bsr.s MC84 cmp D2,D3 bcc ERRISR rts MC88:bsr.s MC84 add.b 1(A2),D2 cmpi #96,D2 bcc ERRISR move D2,D0 ext.l D0 divu #12,D0 swap D0 add D0,D0 lea MC96(PC),A0 move (A0,D0.W),D2 swap D0 lsr D0,D2 move D2,D1 lsr #4,D1 lsr #4,D1 andi #$FF,D2 move.b (A2),D0 moveq #2,D5 MC90:btst D5,D0 beq.s MC92 move D5,D4 add D4,D4 move.b D4,(A6)+ move.b D2,(A6)+ addq #1,D4 move.b D4,(A6)+ move.b D1,(A6)+ MC92:dbra D5,MC90 cmpi.b #"(",9(A2) beq.s MC94 not D0 move.b #7,(A6)+ move.b D0,(A6)+ move.b #$FF,(A6)+ addq #1,D3 move.b 3(A2),D0 ext D0 mulu D0,D3 cmpi.l #256,D3 bcc.s ERRIS2 move.b D3,(A6)+ move.b #7,(A6)+ move.b #$FF,(A6)+ MC94:bsr VERA6 rts MD10:move.b D0,9(A2) rts MD12:moveq #$40,D2 bsr DECPER not D3 move.b #7,(A6)+ bra.s MD15 MD14:moveq #32,D2 bsr DECPER move.b #6,(A6)+ MD15:move.b D3,(A6)+ bra.s MC94 MD16:moveq #96,D2 bsr DECPER move.b D3,1(A2) rts MD18:bsr MC84 add D3,D3 bcs.s ERRIS2 move.b #11,(A6)+ move.b D3,(A6)+ move.b #12,(A6)+ lsr #4,D3 lsr #4,D3 bra.s MD15 MD20:bsr DECPER1 move.b D3,8(A2) moveq #16,D0 MD200:moveq #2,D1 and.b (A2),D3 MD21:btst D1,D3 beq.s MD22 move.b D1,(A6) addq.b #8,(A6)+ move.b D0,(A6)+ MD22:dbra D1,MD21 bra.s MC94 ERRIS2:bra ERRIS4 MD24:moveq #14,D2 bsr DECPER cmpi #7,D3 beq.s ERRIS2 move 4(A2),(A6)+ move.b #$81,(A6)+ move.b D3,(A6)+ move 6(A2),(A6)+ bra MC94 MD26:moveq #16,D2 bsr DECPER move.b #13,(A6)+ bra.s MD15 MD28:bsr MC84 move.b D3,3(A2) beq.s ERRIS2 rts MD30:bsr DECPER1 move.b D3,(A2) rts MD32:moveq #16,D2 bsr DECPER move D3,D0 move.b 8(A2),D3 not D3 bra.s MD200 MD34:moveq #-1,D2 bsr DECPER addq #1,D3 move.b #$FF,(A6)+ bra MD15 MD36:bsr MC84 move.b D3,5(A2) rts MD37:bsr MC84 move.b D3,6(A2) beq.s ERRIS2 rts MD38:bsr MC84 move.b D3,7(A2) rts YPSG:move.l D3,-(SP) bsr WVAR move D1,-(SP) bsr DECCRVE bsr WEXPRE bsr WORDF1 move D2,-(SP) bsr XMEMBER bne ERRIS1 move TVARN(PC),D4 subq #1,D4 bsr LB95C move (SP),D2 bsr XMEMBER bne ERRIS1 move (SP),D2 bsr LB16 bsr XIADD bsr XICHA bsr PACK95 move.l A0,A1 move (SP)+,D1 move (SP)+,D0 add.l (SP)+,A1 move.l A5,-(SP) move D1,-(SP) bsr XSUBS bsr.s GF48 bsr WICOND bsr LB95 move (SP)+,D0 bsr XPSING1 move.l (SP)+,A5 GF48:bra MG620 YPAGE:tst.b (A5)+ bne.s YPAGE subq #1,A5 rts YVARNUM:bsr.s WNOMVR beq.s ERRIS1 move D2,D0 bra LB303 YDVARNUM:bsr.s WNOMVR move.l D3,D0 bra LB305 WNOMVR:bsr DECAN beq.s ERRIS1 tst D0 bmi.s ERRIS1 bsr WNOM1 bne.s ERRIS1 move.l A3,A0 andi #$F0,D0 cmpi #$20,D0 rts YADR:bsr.s WNOMVR beq.s MD40 bsr PACK move D2,D4 bsr LB95C MD40:move.l A0,D0 bra LB305 YADRN:bsr DECAN beq.s ERRIS1 tst D0 bmi PUSHNZ move.l A3,A0 bra.s MD40 ERRIS1:bra ERRISR YREAD:bsr WNOMV bne.s ERRIS1 movem.l D0/D2/A3/A5,-(SP) move.l TDATAP(PC),A5 tst TDATAF beq.s MD44 bra.s MD46 MD42:tst.b (A5)+ bne.s MD42 cmp.l TDHAUT,A5 blt.s MD44 move.l 12(SP),TDECA5 ERRDR:moveq #58,D0 trap #15 MD44:cmpi.b #$1A,(A5) beq.s ERRDR bsr DECEND beq.s ERRDR bsr DECDATA bne.s MD42 move.l A4,A5 MD46:movem.l (SP)+,D0/D2/A3 bsr WREAD1 bsr DECCRV seq TDATAF move.l A5,TDATAP move.l (SP)+,A5 bsr DECCRV beq.s YREAD rts YRESTR:move.l TDBAS,TDATAP clr TDATAF bsr DECTMN beq.s MD48 bsr WLABL move.l (A3),TDATAP MD48:rts WSTRLP:bsr DECFOR bne.s MD60 MD51:move.l A4,A5 MD52:movem.l D5/A0,-(SP) bsr DECLOOP movem.l (SP)+,D5/A0 move.l A5,A4 MD54:move.l A4,A5 movem.l D3/D4/A3/A5,-(SP) bsr.s WSTRLP movem.l (SP)+,D3/D4/A3/A4 add.l D3,(A3) bvs.s MD56 tst.l D3 bmi.s MD58 cmp.l (A3),D4 bge.s MD54 MD56:rts MD58:cmp.l (A3),D4 ble.s MD54 rts MD60:bsr DECXOF bne ERRIS3 MD61:move D5,-(SP) bne.s MD62 bsr WCHAS bsr XICHA bra.s MD66 MD62:bmi.s MD64 bsr WEXPR bsr XIADD bra.s MD66 MD64:bsr WEXPR bsr XIMUL MD66:move (SP)+,D5 rts YSUM:bsr PUSHNZ moveq #1,D5 bra.s MD68 YPROD:bsr PUSHNU moveq #-1,D5 bra.s MD68 YCONC:bsr CPUSHN0 moveq #0,D5 MD68:bsr DECXOF beq.s MD61 bsr DECFOR beq.s MD51 bra.s MD52 PREPT:bcc.s ERRIS3 clr.l D4 move.b (A0,D3.W),D4 beq.s ERRIS3 bpl.s MD690 ext D4 move.l (A0,D4.W),D4 MD690:move.l (SP)+,A0 GAG52:subq #2,SP GAG53:ror.l D4 bcc.s GAG54 subq #2,SP ror.l D4 bcc.s GAG53 bra.s GAG52 GAG54:move.l SP,A1 move D3,(A1)+ MD69:add.l D4,D4 btst #30,D4 bne.s MD70 move.l A1,PREPTP jmp (A0) ERRIS3:bra ERRISR MD70:bsr DECCRVE add.l D4,D4 bcs.s MD72 bsr WINDEX move D3,(A1)+ bra.s MD69 MD72:bsr WADR move.l D3,(A1)+ bra.s MD69 YGEM:bsr WINDEX lea YGEMT(PC),A0 cmpi #$58,D3 bsr.s PREPT trap #1 MD73:move.l PREPTP,SP bra LB305 YBIOS:bsr WINDEX lea YBIOST(PC),A0 cmpi #$C,D3 bsr.s PREPT trap #13 bra.s MD73 YXBIOS:bsr WINDEX lea YXBIOST(PC),A0 cmpi #$58,D3 bsr PREPT trap #14 bra.s MD73 YCALLA:bsr WINDEX cmpi #$1000,D3 bcc.s ERRIS3 add (A3),D3 lea MD75(PC),A3 move D3,(A3) move.l A3,D3 bsr DECTMNE bra.s GAM48 MD75:dc.w $A000 rts YCALL:bsr WADRP GAM48:movem.l D3-D7/A2-A6,-(SP) move.l SP,-(SP) GAM50:bsr DECTMN beq.s GAM56 bsr DECCRVE move.l A5,-(SP) bsr NEXTA5R move D0,D3 moveq #":",D1 bsr DECCR bne.s GAM52 addq #4,SP bclr #5,D3 cmpi.b #"W",D3 beq.s GAM54 cmpi.b #"L",D3 bne ERRIS3 bsr WADR move.l (SP)+,D2 movem.l D2/D3,-(SP) bra.s GAM50 GAM52:move.l (SP)+,A5 GAM54:bsr WINDEX move.l (SP)+,D2 move D3,-(SP) move.l D2,-(SP) bra.s GAM50 GAM56:move.l (SP)+,A0 move.l (A0),A3 move.l A6,D0 movem.l D0-D7/A5-A6,(A0) lea GAM58(PC),A4 move.l A0,GAM60-GAM58+2(A4) movem.l A3/A4,-(SP) movem.l REGIS,D0-D7/A0-A6 rts GAM58:movem.l D0-D7/A0-A6,REGIS move SR,D0 btst #$D,D0 bne.s GAM60 clr.l -(A7) move #$20,-(A7) trap #1 GAM60:lea 0.L,SP lea PILEUS,A0 move A0,USP movem.l (SP)+,D0-D7/A5/A6 MD780:rts ERRAE:moveq #22,D0 trap #15 WCINDEXAV:bsr WCINDEX addq #1,D4 bra.s GAJ30 WINDEXAV:bsr WINDEX GAJ30:bsr DECTMNP beq.s MD780 bra DECCRVE YVR:moveq #-1,D6 bra.s GAJ28 YTTYPE:move.l A0,-(SP) bsr.s YATC move.l VDIPB+12(PC),A0;INTOUT move (A0),D0 move.l (SP)+,A0 move D0,(A0) rts YATC:addq #6,A3 YV:moveq #0,D6 GAJ28:move (A3),D3 bsr HIDECMR movem.l VDIPB+4(PC),A0/A1;INTIN clr.l (A1) move D6,(A0) bsr.s VDIB bra SHOWCMR YVDIF:bsr.s YVDI GAM44:move.l VDIPB+12(PC),A0 GAM45:move (A0),D0 bra LB303 YVDIRF:bsr.s YVDIR bra.s GAM44 YVDIR:moveq #-1,D6 bra.s GAJ11 YVDI:moveq #0,D6 GAJ11:bsr DECTMNP beq VDI bsr DECCRDF bne.s GAJ12 bsr.s WINDEXAV move D3,-(SP) bsr.s WINDEXAV bra.s GAJ14 GAJ12:bsr.s WINDEXAV VDIB:move UAES(PC),D0 VDIBA:move D0,-(SP) GAJ14:move D3,D2 move D3,-(SP) bpl.s MD86 neg (SP) moveq #11,D2 MD86:subq #8,SP move D2,-(SP) cmpi #40,D3 blt.s MD88 subi #100,D3 bcs ERRAE addi #40,D3 MD88:addi #10,D3 cmpi #82,D3 bcc ERRAE lea TVDI(PC),A0 move.b (A0,D3.W),D3 bmi.s MD89 move D3,D2 lsr #4,D2 moveq #$F,D0 and D0,D2 and D0,D3 bra.s MD90 MD89:clr D2 ext D3 moveq #-1,D4 sub D3,D4 beq ERRAE moveq #37,D3 cmpi #5,D4 beq.s MD90 moveq #1,D3 bsr.s DECTMNP beq.s MD890 bsr WINDEXAV MD890:exg D2,D3 subq #2,D4 bmi.s MD90 move D2,D3 move D4,D2 MD90:lea 2(SP),A2 move D2,(A2)+ clr (A2)+ move D3,(A2)+ clr (A2)+ move D3,D5 move.l SP,A1 moveq #0,D4 clr D6 bra.s MD902 MD900:bsr.s DECTMNP beq MD91A bsr WCINDEXAV tst.l D6 bpl.s GAJ32 add ORIGINX(PC),D3 GAJ32:move D3,-(SP) bsr.s DECTMNP beq MD91A bsr WCINDEXAV tst.l D6 bpl.s GAJ33 add ORIGINY(PC),D3 GAJ33:move D3,-(SP) MD902:dbra D2,MD900 bra.s MD906 DECTMNP:bsr DECTMN beq.s GAM47 cmpi.b #")",D0 GAM47:rts MD904:bsr.s DECTMNP beq.s MD91A bsr WINDEXAV move D3,-(SP) addq #1,D6 MD906:dbra D5,MD904 bsr.s DECTMNP beq.s MD91A cmpi #8,(A1) beq.s MD908 cmpi #116,(A1) beq.s MD908 cmpi #11,(A1) bne.s MD910 cmpi #10,(A2) bne.s MD910 MD908:move.l VDIPB+4(PC),D3 movem.l D3/D4/D6/A1,-(SP) add D6,D6 ext.l D6 add.l D6,D3 move.l D3,-(SP) bsr WCHAIN move.l (SP)+,A1 moveq #$7F,D0 and.l D0,D3 clr D2 moveq #1,D1 bsr MF28 move.l A1,D0 sub.l (SP)+,D0 asr D0 subq #1,D0 movem.l (SP)+,D4/D6/A1 move D0,6(A1) MD910:bsr.s DECTMNP bne ERRAE MD91A:lea VDIPB+8(PC),A2 move.l (A2),A0 move.l A1,-(SP) bra.s MD912 MD911:move -(A1),(A0)+ MD912:dbra D4,MD911 move.l -(A2),A0 bra.s MD914 MD913:move -(A1),(A0)+ MD914:dbra D6,MD913 move.l -(A2),A0 move.l (SP)+,SP move.l (SP)+,(A0)+ move.l (SP)+,(A0)+ move.l (SP)+,(A0)+ move (SP)+,(A0)+ VDI:movem.l A5/A6,-(SP) move.l #VDIPB,D1 moveq #$73,D0 trap #2 movem.l (SP)+,A5/A6 rts YAESF:bsr.s YAES move.l AESPB+12(PC),A0 bra GAM45 YAES:bsr DECTMNP beq AES bsr WINDEX AESB:clr -(SP) move D3,D4 subi #10,D3 cmpi #116,D3 bcc ERRAE lea TTAES(PC),A2 move.b (A2,D3.W),D3 beq ERRAE move D3,D1 moveq #7,D0 and D0,D1 asr #3,D3 ext.l D3 divu #10,D3 move D3,D2 swap D3 cmp D0,D3 bne.s MD95 moveq #16,D3 MD95:move D2,-(SP) move D1,-(SP) move D3,-(SP) move D4,-(SP) move.l SP,A1 move D3,D4 moveq #0,D5 moveq #0,D6 bra.s MD952 MD950:bsr DECCRV bne.s MD958 bsr WINDEX move D3,-(SP) addq #1,D6 MD952:dbra D4,MD950 bra.s MD956 MD954:bsr DECCRV bne.s MD958 bsr WADR move.l D3,-(SP) addq #1,D5 MD956:dbra D2,MD954 MD958:bsr DECTMNP bne ERRAE move.l AESPB+8(PC),A0 move.l A1,-(SP) bra.s MD961 MD960:move -(A1),(A0)+ MD961:dbra D6,MD960 move.l AESPB+16(PC),A0 bra.s MD963 MD962:move.l -(A1),(A0)+ MD963:dbra D5,MD962 move.l AESPB(PC),A0 move.l (SP)+,SP move.l (SP)+,(A0)+ move.l (SP)+,(A0)+ move (SP)+,(A0)+ AES:tst.b AESOK bne.s ERRAES movem.l A5/A6,-(SP) move #$C8,D0 move.l #AESPB,D1 trap #2 movem.l (SP)+,A5/A6 rts ERRAES:moveq #86,D0 trap #15 XNUMF1:bsr.s XFFCT1R movem.l A0/A5,-(SP) bsr XNUMF bsr XLB76 movem.l (SP)+,A0/A5 rts YNUMF:bsr.s XNUMF1 bra.s MF12 YNUM:bsr.s YNUMF bra.s MF13 XFFCT1R:jmp XFFCT1 XDENF1:bsr.s XFFCT1R movem.l A0/A5,-(SP) bsr XDENF bsr XLB76 movem.l (SP)+,A0/A5 rts YDENF:bsr.s XDENF1 MF12:bra MG620 YDEN:bsr.s YDENF MF13:bra WPOLY1 ERRISR:bra ERRIS2 MF14:clr D2 MF16:bsr DECCRAL bne.s MF20 moveq #-1,D2 MF20:rts YPKCB:bsr.s MF14 clr D1 bsr WADR MF22:movem.l D1-D3,-(SP) bsr WCHAINV bsr DECTMNE movem.l (SP)+,D1/D2/A1 bra.s MF28 MF24:move.b (A0)+,D0 clr.b (A1) add D1,A1 move.b D0,(A1)+ MF28:subq.l #1,D3 bpl.s MF24 tst D2 bmi.s MF280 clr.b (A1) add D1,A1 clr.b (A1)+ MF280:move.l A1,-(SP) bsr POPN move.l (SP)+,A1 rts YPKCW:bsr.s MF14 moveq #1,D1 bsr WADRP bra.s MF22 YCHAN:bsr DECCRV bne MF42 bsr WCHAS tst.l D3 beq.s ERRISR bsr WCHASV bsr XILOC move.l A1,A3 move.l A0,A1 move TVARN(PC),D4 subq #2,D4 bsr LB95C exg D0,D3 exg D1,D3 bsr.s XCHAN bsr POPPR bsr POPPR bsr POPPR bra.s YCHAN YPRFACTD:bsr YPRFC1 bsr YSTR bsr.s MF30 lea GIB60(PC),A3 bsr.s XCHAN1 lea GIB62(PC),A3 bra.s XCHAN1 GIB60:dc.b "*",0 GIB62:dc.b "+",2,"* " YCHAN1:bsr.s MF30 btst #1,REGD7+3 beq.s MF29 lea MF44(PC),A3 bsr.s XCHAN1 lea MF46(PC),A3 bsr.s XCHAN1 MF29:btst #0,REGD7+3 beq.s MF42 lea MF48(PC),A3 bsr.s XCHAN1 lea MF50(PC),A3 XCHAN1:moveq #1,D3 move.l A3,A1 move (A1)+,D1 ext D1 ext.l D1 bsr.s XCHAN bsr POPPR MF30:bsr LB95A move.l D3,D0 MF42:rts XCHAN:addq #6,A6 move.l A6,-(SP) moveq #0,D5 move.b (A3)+,D5 subq.l #1,D3 move D5,D6 lea TYPCAR-1,A4 tst.b (A4) beq.s MF33 btst #6,1(A4,D5.L) beq.s MF33 bchg #5,D6 MF33:add.l D0,A6 bsr VERA6 sub.l D0,A6 MF34:subq.l #1,D0 bmi.s MF38 move.b (A0)+,D4 move.b D4,(A6)+ cmp.b D4,D5 beq.s GEB31 cmp.b D4,D6 bne.s MF34 GEB31:cmp.l D3,D0 bcs.s MF34 movem.l D0/D3/D5/A0/A3,-(SP) MF35:subq.l #1,D3 bmi.s MF36 subq.l #1,D0 move.b (A3)+,D5 cmp.b (A0)+,D5 beq.s MF35 tst.b (A4) beq.s GEB32 btst #6,1(A4,D5.L) beq.s GEB32 bchg #5,D5 subq #1,A0 cmp.b (A0)+,D5 beq.s MF35 GEB32:movem.l (SP)+,D0/D3/D5/A0/A3 bra.s MF34 MF36:movem.l (SP)+,D2/D3/D5/A2/A3 subq #1,A6 add.l D1,A6 bsr VERA6 sub.l D1,A6 move.l A1,A2 move.l D1,D2 MF37:subq.l #1,D2 bmi.s MF33 move.b (A2)+,(A6)+ bra.s MF37 MF38:move.l (SP)+,A2 bra LC12 YNUMR:tst D3 bne.s ERRREE bclr #5,(A0) bsr SLNG0R lea (A0,D0.W),A6 bra.s MF52 ERRREE:moveq #70,D0 trap #15 YDENR:tst D3 bne.s ERRREE move.l A2,-(SP) move.l A0,A2 jsr KB255 clr.l D1 jsr SLNG1 move.l A2,A0 move.l A1,A2 bsr LB76 move.l A0,A6 move.l (SP)+,A2 MF52:move.l A6,D0 sub.l A2,D0 move.l D0,-(A2) rts YDIVN:bsr.s MFDIV MF57:bsr XLB76 lea -2(A4),A2 bra POPNEW YMODN:bsr.s MFDIV move.l A2,A6 move.l A3,A2 bra.s MF57 YDIVD:bsr.s MFDIV move.l A3,A6 movem.l A0/A4/A5,-(SP) move D2,D1 jsr XEXPP movem.l (SP)+,A0/A4/A5 bra.s MF57 MFDIV:bsr WPOLY bsr WVGV move D2,-(SP) bsr XIPOL move (SP)+,D0 move.l A5,-(SP) bsr XPSDIV move.l (SP)+,A5 move.l A4,A0 rts PREVSV:dc.l 0 YBLOAD:bsr.s GAB60 bsr MF600 move.l PREVSV(PC),D3 bsr WVGAD move.l D3,D2 beq ERRISR moveq #-1,D3 bsr.s S3E01ER bra.s MF590 S3E01ER:jmp S3E01E GAB60:bsr WCHANF bsr.s MF59 jmp S3E058 YLOAD:bsr.s GAB60 addq #6,A6 move.l A6,-(SP) move.l A6,D2 lea -1000(SP),A3 move.l A3,D3 sub.l D2,D3 bsr DECCRV bne.s GAS66 bsr WADR GAS66:bsr.s S3E01ER move.l D0,A6 move.l (SP)+,A3 bsr MB84 MF590:clr.b FILETYP jmp S3E0AC MF59:lea FILEBUF,A1 moveq #22,D0 MF60:move.l (A0)+,(A1)+ dbra D0,MF60 clr (A1) move.l #"TAD.",D2 jmp S3DFFB YBSAVE:bsr.s WCHANFV bsr.s GAB66 bsr.s MF600 bsr WADR move.l D3,-(SP) bsr.s GAB65 bsr WADR move.l (SP)+,D2 move.l D2,PREVSV GAB62:jsr S3E03C bra.s MF590 WCHANFV:bsr WCHANF GAB65:bra DECCRVE GAB66:bsr.s MF59 jmp S3E076 YSAVED:bsr.s WCHANFV bsr WCHAIN bsr XILOC movem.l D0/A0,-(SP) move.l A1,A0 bsr.s GAB66 move.l (SP)+,D3 move.l (SP)+,D2 bsr.s GAB62 POP2N:bsr MF600 MF600:bra POPN YMAXD:move (A3),-(SP) GAM75:bsr.s XCMPCH cmp (SP),D3 beq.s GAM76 bsr POPN bra.s GAM77 GAM76:bsr POPPR GAM77:bsr DECCRV beq.s GAM75 addq #2,SP rts YCMP:bsr.s XCMPCH bra.s GAS64 XCMPCH:bsr WCHAS XCMPCH1:bsr XILOC moveq #0,D2 moveq #0,D3 lea TYPCAR-1,A4 move.b (A4)+,D4 MF65:subq.l #1,D0 bmi.s MF652 subq.l #1,D1 bmi.s MF650 move.b (A0)+,D2 move.b (A1)+,D3 tst.b D4 beq.s GEE32 btst #6,(A4,D2.L) beq.s GEE30 bclr #5,D2 GEE30:btst #6,(A4,D3.L) beq.s GEE32 bclr #5,D3 GEE32:cmp.b D3,D2 beq.s MF65 bcs.s MF653 MF650:moveq #1,D3 rts MF652:subq.l #1,D1 bmi.s MF654 MF653:moveq #-1,D3 rts MF654:moveq #0,D3 rts YCMP1:bsr WCHAS bsr.s XUPPER2 bsr.s XUPPER2 bsr.s XCMPCH1 bsr POP2N tst D3 bne.s GAS64 bsr.s XCMPCH1 GAS64:bra MB93 YUPPER1:bsr.s XUPPER1 bra POPPR XUPPER2:move TVARN(PC),D4 subq #1,D4 bsr LB95C XUPPER1:lea TYPCAR,A1 moveq #0,D0 moveq #6,D1 moveq #$5F,D2 addq #6,A6 move.l A6,A2 add.l D3,A6 add.l D3,A6 bsr VERA6 move.l A2,A6 lea TYP80-$80(PC),A3 bra.s GAS62 GAS52:move.b (A0)+,D0 bmi.s GAS54 btst D1,(A1,D0.L) beq.s GAS60 and D2,D0 bra.s GAS60 GAS54:cmpi #$B9,D0 bcc.s GAS60 move.b (A3,D0.L),D0 bne.s GAS56 move.b #"A",(A6)+ bra.s GAS58 GAS56:cmpi #1,D0 bne.s GAS60 move.b #"O",(A6)+ GAS58:moveq #"E",D0 GAS60:move.b D0,(A6)+ GAS62:subq.l #1,D3 bpl.s GAS52 bra LC12 YJSG:bsr.s GES24 YJSG1:move D2,-(SP) move.l D3,-(SP) bsr LB95A addq #6,A6 move.l A6,A3 moveq #32,D2 MF97:subq.l #1,D3 bmi.s MF98 cmp.b (A0)+,D2 beq.s MF97 subq #1,A0 MF98:addq.l #1,D3 move.l A0,A2 add.l D3,A0 MF99:subq.l #1,D3 bmi.s MG10 cmp.b -(A0),D2 beq.s MF99 MG10:addq.l #1,D3 sub.l D3,(SP) bsr MB825 move.l (SP)+,D3 move (SP)+,D2 bra.s MG18 YJSD:bsr.s MG16 ble.s MG17 MG15:bsr CPUSHN move.l A5,-(SP) move TVARN(PC),D0 move D0,D1 subq #1,D1 move D1,D2 bra XICHA1 MG16:moveq #0,D3 bsr.s YJSG1 bsr LB95A move.l D3,D4 bsr.s GES24 sub.l D4,D3 MG17:rts GES24:bsr WVGAZ move.l D3,D2 moveq #32,D3 GES25:bsr WVGAD exg D2,D3 rts YJSM:bsr.s MG16 ble.s GES25 move D2,-(SP) move.l D3,-(SP) asr.l D3 sub.l D3,(SP) bsr.s MG15 move.l (SP)+,D2 move (SP)+,D3 bsr.s GES25 MG18:tst.l D3 ble.s MG17 MG19:bsr CPUSHN bra XICHA YCONT:bsr.s MG22 move.l A5,-(SP) bsr PACK bsr WPOLY1 addq #8,A6 bsr XCONT1 bsr NEWVP move.l (SP)+,A5 bsr DECCRV bne.s MG21 subq #1,A5 bra.s YCONT MG21:rts MG22:clr D2 bsr DECCRV bne.s MG21 subq #1,A5 bra WVGV YCEFL:bsr PUSHID bsr.s YCONT bsr XIPOL move.l A5,-(SP) bsr XCTDIV move.l (SP)+,A5 MG23:subq #2,A2 bra POPNEW YGCD:bsr WPOLY bsr XIPOL move.l A5,-(SP) bsr XGCD move.l (SP)+,A5 bsr.s MG23 bsr DECCRV beq.s YGCD rts YSTR1:bsr WEXPR bsr DECCRV bne YSTR bsr WEXPREK subq #1,A5 bsr.s XPRTAR addq #1,A5 MG24:bsr DECCRD bsr WVAR bsr DECCRV beq.s MG24 rts XPRTAR:move.l A5,-(SP) bsr DECCRV beq.s MG28 bsr YSTR MG27:move.l (SP)+,A5 rts MG28:bsr DECCRD sne -(SP) bsr PUSHID bsr WVAR move D1,D2 bsr WCFF2 movem D2/D5,-(SP) bsr WPOLY1 move (SP),D0 bsr XDEGR tst D5 bne.s MG30 tst 2(SP) bne.s MG30 addq #6,SP bsr POP2N bsr.s XPRTAR bra.s MG27 MG30:move.l A5,-(SP) move #" (",-(SP) move D5,-(SP) bsr CPUSHN0 move TVARN(PC),D0 subq #3,D0 bsr WASGN2 moveq #0,D3 tst.b 12(SP) beq.s MG31 move (SP),D3 MG31:move 8(SP),D2 move D3,-(SP) bsr WCFF1 bsr XIFLOB bne.s MG32 cmpi #$4000,(A0) beq.s MG39 MG32:addq #6,A6 move.l A6,A2 move 4(SP),(A6)+ bsr LC12 move TVARN(PC),D0 move D0,D1 subq #4,D0 move D0,D2 bsr XHCHA bsr POPN move.l 6(SP),A5 bsr XPRTAR addq #6,A6 move.l A6,A2 move.l A6,A0 move.b #")",(A0)+ moveq #0,D0 move (SP),D0 movem 10(SP),D2/D3 ext.l D3 sub.l D3,D0 beq.s MG37 move.b #"*",(A0)+ bsr XFLIT subq #1,A0 cmpi.l #1,D0 beq.s MG37 move.b #"^",(A0)+ jsr XPREXLS move.b #22,(A0)+ MG37:move #"+(",4(SP) move.l A0,A6 bsr LC12 bsr XICHA move TVARN(PC),D0 move D0,D1 subq #3,D0 move D0,D2 bsr XHCHA MG39:bsr POPN move (SP)+,D3 tst.b 12(SP) beq.s MG390 subq #1,D3 bpl MG31 bra.s MG391 MG390:addq #1,D3 cmp (SP),D3 ble MG31 MG391:bsr POP2N lea 14(SP),SP bra MG27 YERRT:lea TFONR(PC),A3 movem.l D0-D7/A0-A6,-(SP) jsr LOCALT move.l (A3)+,YERA+2 move.l (A3)+,YERL+2 movem.l (SP)+,D0-D7/A0-A6 move D0,YERR+2 move.l (A3),D5 YERRTS:beq.s MG56 tst TFRUN beq.s MG56 clr.l (A3)+ tst.l (A3) beq.s GES48 move.l (A3),D7 GES48:move.l D5,A3 move.l TDEBA5,A5 bsr LB93 bsr MA49 bra IRUN MG56:rts YSUBSR:move.l (A3),-(SP) move.l D3,-(SP) MG58:bsr DECCRV bne.s MG60 bsr WRULE bra.s MG58 MG60:bsr PACK95 clr.l (A6)+ move.l A0,A2 add.l (SP)+,A2 move.l (SP)+,A1 movem.l A0-A2,-(SP) move.l A6,A3 MG61:move.l (A2)+,D0 beq.s MG62 move.l A2,(A6)+ bsr VERA6 add.l D0,A2 bra.s MG61 MG62:clr.l (A6)+ movem.l (SP),A0/A4 move.l A5,-(SP) jsr (A4) move.l (SP)+,A5 move.l (SP),A0 bsr XLB76 movem.l (SP)+,A0-A2 bsr XRECT MG620:move.l A6,D0 sub.l A0,D0 move.l D0,-(A0) rts YIMPL:bsr DECAN moveq #3,D3 cmp.l #GET79C+7,A3 beq.s MG65 moveq #4,D3 cmp.l #GET79I+8,A3 beq.s MG65 MG64:bsr ERRISR MG65:lea TYPCAR,A2 clr D0 MG66:bsr.s DECLTR move D5,D4 bsr DECCRM bne.s MG67 bsr.s DECLTR MG67:moveq #7,D2 sub D3,D2 bsr.s MG69 tst.b D6 beq.s MG68 addi #$20,D4 addi #$20,D5 bsr.s MG69 MG68:bsr DECCRV beq.s MG66 rts MG69:move D4,D0 MG70:lea (A2,D0.W),A0 tst.b (A0) bpl.s MG71 bclr D2,(A0) bset D3,(A0) MG71:addq #1,D0 cmp D0,D5 bcc.s MG70 rts DECLTR:bsr NEXTA5R subq #1,A5 move.b (A2,D0.W),D6 bpl.s MG64 addq #1,A5 move D0,D5 btst #6,D6 beq.s MG72 move.b -1(A2),D6 beq.s MG72 bclr #5,D5 MG72:rts YBRPT: lea YTRACE(PC),A0 tst (A0) bpl.s MG74 addq #4,A0 MG74:move #5,(A0) rts YPEKC:bsr WADR move.l D3,A2 bsr WADRV MG76:addq #6,A6 move.l A6,A1 move.l D3,D1 bra MM66 YERRD:bsr WINDEX move.l D3,D0 cmpi #ERRMAX,D0 bhi.s GES46 jsr PRMH move.l A0,D3 bra.s YPEKCZ1 GES46:bsr LB305 bra YSTR YPEKCZ:bsr WADR YPEKCZ1:move.l D3,A2 move.l D3,A0 MG77:tst.b (A0)+ bne.s MG77 subq #1,A0 neg.l D3 add.l A0,D3 bra.s MG76 YFSEL:bsr WCHANFV jsr FIXREP bsr POPN bsr WCHANF moveq #11,D0 lea TBUF+2000,A1 move.l A1,-(SP) GAL88:move.b (A0)+,(A1)+ dbeq D0,GAL88 clr.b (A1) lea MD94,A2 bsr DECCRV bne.s GAL90 bsr POPN bsr WCHANF move.l A0,A2 GAL90:move.l (SP)+,A1 jsr FSELB bsr POPN move.l #FILEBUF,D3 bra.s YPEKCZ1 ERRMT:moveq #37,D0 trap #15 YEXG:bsr WTNAM movem.l D0/D2/A3,-(SP) bsr DECCRVE bsr WTNAM movem.l (SP)+,D1/D3/A0 cmp D0,D1 bne.s ERRMT tst D0 beq.s GAS68 move D3,D0 bra.s MG79 GAS68:cmp D2,D3 bne.s ERRMT GAS70:move.b (A0),D0 move.b (A3),(A0)+ move.b D0,(A3)+ dbra D2,GAS70 rts MG790:move TVARN(PC),D0 move D0,D2 subq #1,D2 MG79:move.l TMVAR(PC),A0 move.l A0,A2 sub D2,A2 sub D2,A2 sub D2,A2 sub D2,A2 sub D0,A0 sub D0,A0 sub D0,A0 sub D0,A0 move.l (A0),A1 move.l (A2),A3 move.l A3,(A0) move.l A1,(A2) cmp (A1),D0 bne ERRFATR cmp (A3),D2 bne ERRFATR move D2,(A1) move D0,(A3) rts WNOMC:moveq #$40,D3 bsr WNOM bne.s ERRNCH andi #$F0,D0 cmpi #$40,D0 bne.s ERRNCH rts ERRNCH:moveq #87,D0 trap #15 WNOMVC:bsr WNOMV bne.s ERRNVV andi #$F0,D0 cmpi #$30,D0 bne.s ERRNVV rts ERRNVV:moveq #89,D0 trap #15 YCADD:bsr.s WNOMC move D2,-(SP) bsr WCHAINV move (SP)+,D2 YCADD1:lea XHCHA(PC),A3 bra.s MG80 YVOP:move.l (A3),-(SP) bsr.s WNOMVC move.l D2,-(SP) bsr DECCRVE bsr WEXPR movem.l (SP)+,D2/A3 MG80:move.l A5,-(SP) move D2,D0 move TVARN(PC),D1 jsr (A3) move.l (SP)+,A5 bra POPN YDET:lea TMEXCP(PC),A1 move.l (A1)+,A0 movem.l A0/A1,-(SP) move.l (A1),A2 moveq #32,D1 sub D1,A2 bra.s MG82 MG81:cmp.l A2,A0 bcc ERRPXC move.b D0,(A0)+ MG82:move.b (A5)+,D0 beq ERRISR cmp.b D0,D1 beq.s MG82 cmpi.b #",",D0 bne.s MG81 move.b #"(",(A0)+ move.b #"Ý",(A0)+ move.l A0,-(SP) moveq #10,D0 MG83:move.b D1,(A0)+ dbra D0,MG83 move.l A5,A2 bsr PB880 move.l A2,A5 bsr WINDEX cmpi #1000,D3 bcc ERRRG move.l D3,D2 bsr WVGK cmp.l D3,D2 bcs ERRRG movem.l D2/D3/A5,-(SP) bsr PUSHNU move TVARN(PC),-(SP) move.l 6(SP),D0 MG84:move.l D0,-(SP) move.l 18(SP),A0 jsr PINTA move.b #",",(A0)+ move.b #"Ý",(A0)+ move.l 10(SP),D0 MG85:movem.l D0/A0,-(SP) jsr PINTA move.b #")",(A0)+ move.l 30(SP),A5 bsr WEXPR bsr XIPRIOR movem.l (SP)+,D0/A0 addq.l #1,D0 cmp.l 6(SP),D0 ble.s MG85 move.l (SP)+,D0 addq.l #1,D0 cmp.l 2(SP),D0 ble.s MG84 move (SP)+,D0 movem.l (SP)+,D1/D2 sub.l D2,D1 bsr.s XDET move.l (SP)+,A5 movem.l (SP)+,D0/A0/A1 move.l A0,-(A1) rts XDET:moveq #1,D2 movem D0-D2,-(SP) addq #1,(SP) move D0,-(SP) bsr PUSHNU move (SP),D0 bsr WASGN2 MG87:move 4(SP),D0 bne.s MG88 move 6(SP),D0 bsr LB303 move (SP)+,D0 bsr WASGN2 addq #6,SP bra XIMUL MG88:moveq #0,D1 move 2(SP),D0 MG89:movem D0/D1,-(SP) bsr WHCOND move (SP),D0 bsr XHZERO bne.s MG92 neg 10(SP) movem (SP)+,D0/D1 move 4(SP),D4 addq #1,D1 addq #1,D0 add D4,D0 cmp D4,D1 ble.s MG89 move TVARN(PC),D6 sub (SP)+,D6 MG90:bsr POPN dbra D6,MG90 addq #6,SP bra PUSHNZ MG92:movem (SP)+,D0/D1 tst D1 beq.s MG94 movem (SP),D1/D2/D4 MG93:bsr MG79 addq #1,D0 addq #1,D2 dbra D4,MG93 MG94:moveq #1,D0 movem (SP),D1-D3 addq #2,D1 add D3,D1 MG95:movem D0-D2,-(SP) moveq #1,D0 addq #1,D1 addq #1,D2 MG96:movem D0-D2,-(SP) move D1,D2 move 10(SP),D0 bsr XHMUL move 4(SP),D2 bsr LB321 move TVARN(PC),D2 move D2,D1 move 8(SP),D0 bsr XHMUL move TVARN(PC),D1 move 2(SP),D0 move D0,D2 bsr XHSUB bsr POPN move 2(SP),D0 move D0,D2 move 12(SP),D1 bsr XHDIVE movem (SP)+,D0-D2 addq #1,D0 addq #1,D1 addq #1,D2 cmp 10(SP),D0 ble.s MG96 move 2(SP),D0 bsr POPD0 movem (SP)+,D0-D2 addq #1,D0 move 4(SP),D3 add D3,D1 cmp D3,D0 ble.s MG95 subq #1,4(SP) move 4(SP),D6 MG97:move (SP),D0 addq #2,D0 bsr POPD0 dbra D6,MG97 move (SP),D0 bsr POPD0 bra MG87 XELIM:move TVARN(PC),D6 addq #1,D6 movem D2/D5/D6,-(SP) move D5,D1 MH12:movem.l D0/D1/A0,-(SP) addq #8,A6 jsr XCOEFP clr -(A2) bsr LC12 movem.l (SP)+,D0/D1/A0 dbra D1,MH12 move (SP)+,D2 sub (SP),D2 subq #1,D2 move D2,D3 bra.s MH17 MH14:movem D2/D3,-(SP) MH15:bsr PUSHNZ dbra D3,MH15 movem 4(SP),D0/D2 MH16:movem D0/D2,-(SP) bsr LB321 movem (SP)+,D0/D2 addq #1,D2 dbra D0,MH16 movem (SP)+,D2/D3 MH17:dbra D2,MH14 addq #4,SP rts XDEGR:jmp XDEG YELIM:move TVARN(PC),-(SP) bsr WPOLY bsr WVGV move D2,-(SP) move D2,D0 addq #2,A0 bsr.s XDEGR move D5,-(SP) tst D5 beq.s MH20 bsr PACK movem 2(SP),D0/D4 bsr LB95C addq #2,A0 bsr.s XDEGR tst D5 beq.s MH20 move D5,D2 add (SP),D2 movem D2/D5,-(SP) bsr XELIM move 8(SP),D4 addq #1,D4 bsr LB95C addq #2,A0 movem (SP)+,D2/D3/D5/D6 move D6,D0 move D2,-(SP) bsr XELIM move 2(SP),D0 bsr POPD0 move (SP)+,D1 move (SP)+,D0 subq #1,D1 move.l A5,-(SP) bsr XDET move.l (SP)+,A5 rts MH20:addq #6,SP bsr POP2N PUSHNMR:bra PUSHNM YSGN:moveq #0,D0 cmpi #$4000,(A0) beq.s MH22 moveq #1,D0 btst #7,(A0) beq.s MH22 moveq #-1,D0 MH22:bsr LB305 bra POPPR YMEMBERP:bsr.s WORDF1 jsr XMEMBER bra YLEN WORDF:bsr XIFAC WORDF1:bsr WVGV bra LB95A YORDF:bsr.s WORDF move D2,D0 jsr XPOLE neg D5 move D5,D0 bra MB530 YDEGF:bsr.s WORDF bsr XDEGF bra YLEN YCONTF:bsr.s WORDF addq #6,A6 bsr XNLIT bra NEWVP1 YREDF:bsr.s WORDF MH87:addq #6,A6 bsr XCLIT bsr XTPOLYR bne ERRNDV move.l A2,A0 jsr XFDEV move.l A0,A2 bra NEWVP1 WNCOEF:movem D2/D3,-(SP) bsr XHPOLY lea 2(A2),A0 movem (SP)+,D0/D1 addq #8,A6 jsr XCOEFP clr -(A2) bra LC12 WCFF1:move TVARN(PC),D0 movem D0/D2/D3,-(SP) bsr.s WNCOEF move (SP)+,D2 subq #1,D2 bsr LB321 bsr XIMUL movem (SP)+,D2/D3 rts WCFF2:move D2,-(SP) bsr XIFAC bsr LB95A move (SP)+,D0 jsr XPOLE movem D0/D5,-(SP) move D0,D2 addq #6,A6 bsr XNLIT bsr LC12 bsr MG790 bsr LB95A move (SP),D2 bsr MH87 movem (SP)+,D2/D5 rts YCOEFF:bsr WVAR move D1,-(SP) bsr WVGA move (SP)+,D2 move.l D3,-(SP) bsr.s WCFF2 move.l (SP)+,D3 ext.l D5 add.l D5,D3 swap D3 tst D3 bne.s MH88 swap D3 bsr.s WCFF1 bsr POPPR bra POPPR MH88:moveq #0,D3 bra MB93 YPRINV:bsr WENTIER bsr WENTIERPV bsr MB231 lea XMINVS1,A2 MI34:move.l A5,-(SP) addq #6,A6 move.l A6,-(SP) move PRIOR(PC),(A6)+ bne.s MI35 clr.l (A6)+ MI35:jsr (A2) movem.l (SP)+,A2/A5 bra POPNEW YMDPWRE:bsr WENTIER bsr WENTIERV bsr WENTIERPV move.l A0,-(SP) move TVARN(PC),D0 subq #2,D0 bsr XHREEL bsr MB231 exg A1,A0 move.l (SP)+,A3 lea XMEXP,A2 bsr.s MI34 bra POPPR WCALMD2:bsr WPOLYU bsr DECCRVE WCALMD3:bsr WENTIERP move.l A0,A3 move TVARN(PC),D4 subq #1,D4 bsr LB95C addq #2,A0 rts WCALMD1:bsr WPOLYU WCALMD:bsr DECCRVE bsr.s WCALMD2 move.l A0,A4 subq #1,D4 bsr LB95C addq #2,A0 tst (A0) beq.s MI83 tst (A4) beq.s MI83 move.l (A0),D0 cmp 2(A4),D0 bne ERRPY MI83:rts YINV:bsr WPOLY bsr WVGV move D2,-(SP) bsr XIPOL subq #2,A6 move (SP)+,D0 move.l A5,-(SP) jsr XEUINV move.l (SP)+,A5 bsr NEWVP1 bra POPPR YHOMOG:bsr WVAR movem.l D1/A5,-(SP) bsr LB95A move.l (SP)+,D0 addq #6,A6 jsr XJFHMG move.l (SP)+,A5 bra NEWVP1 YMDDIV:bsr.s WCALMD1 lea MI86(PC),A2 MI84:bsr.s MI85 bra POPPR MI85:move.l A5,-(SP) addq #6,A6 move.l A6,-(SP) clr (A6)+ jsr (A2) movem.l (SP)+,A2/A5 bra POPNEW YMDMOD:bsr WCALMD1 lea XMPMOD1,A2 bra.s MI84 YMDPGCD:bsr WCALMD1 lea XMPGCD1,A2 bra.s MI84 YMDINV:bsr WCALMD1 lea XMPINV,A2 bra.s MI84 YMDS:bsr WCALMD2 lea MI87,A2 bra.s MI85 YMDPWR:bsr WPOLYU bsr WENTIERV bsr MG790 bsr WCALMD move.l A0,A1 move D4,D0 subq #1,D0 bsr XHREEL exg A1,A0 lea XMPEXP,A2 bsr.s MI84 bra POPPR MI86:move.l A4,A1 jsr XMPDIV move.l A3,A0 bra XLB76 YMDFF:bsr WCALMD2 move.l A5,-(SP) addq #6,A6 movem.l A0/A3/A6,-(SP) move.l A3,A0 jsr XMPT movem.l (SP)+,A0/A3 cmpi #$4000,-(A6) beq.s ERRINT jsr XMPPM move.l A2,A0 jsr XMFPLU move.l (SP),A0 bsr XLB76 movem.l (SP)+,A2/A5 bra POPNEW ERRINT:moveq #75,D0 trap #15 YMDSMP:jsr XMFBEZC bsr WCALMD3 subq #2,A0 move.l A5,-(SP) addq #6,A6 jsr XMFBEZ move.l (SP)+,A5 bra POPNEW YDIVE:bsr WPOLY bsr XIPOL move.l A5,-(SP) bsr XCTDIV2 beq.s ML52 ML51:jsr XPSP0 ML52:move.l (SP)+,A5 subq #2,A2 bra POPNEW YDIVEZ:bsr WPOLY bsr XIPOL move.l A5,-(SP) bsr XCTDIV2 bne.s ML51 move.l A2,A0 bsr WPOLYMC beq.s ML52 move.l A2,A6 bra.s ML51 YCHARG:bsr WADR move.l TMPROCA(PC),A3 move -(A3),D4 beq ERRARN move -(A3),D0 ext.l D0 addq #6,A6 move.l A6,A1 tst.l D3 ble.s MM67 sub.l D3,D0 blt.s MM67 bsr PB840 move.l A3,A2 move.l D0,D1 MM66:bsr ILB76 MM67:move.l A1,A2 bra LC12 YNONEXT:bsr WNOMI lea TMFOR(PC),A0 move.l (A0),A1 MM68:move.l (A1)+,D0 beq.s MM69 movem.l (A1)+,D4-D6 cmp.l A3,D5 bne.s MM68 move.l A1,(A0) MM69:rts YRESOL:bsr WINDEX move D3,(A0) jmp SETCED YVIDEOI:move.b -(A3),D3 bsr DECTMN beq.s MM72 bsr WINDEX MM72:jmp VIDEOSET YVERFY:jsr VERFY bra LB305 YSHOWCM:moveq #0,D0 bra.s GEB10 YSHOWM:move #$FF,D0 bra.s GEB10 YSHOWC:move #$FF00,D0 GEB10:moveq #0,D1 bra.s GEB13 YHIDECM:moveq #-1,D1 bra.s GEB12 YHIDEC:move #$80,D1 bra.s GEB12 YHIDEM:move #$8000,D1 GEB12:moveq #-1,D0 GEB13:move MOUSE0,D3 and D0,D3 or D1,D3 bsr DECTMN beq.s GEB14 bsr WADR GEB14:andi #$8080,D3 bra XEREM2R YDAMIER:bsr WCHAIN clr.b (A0,D3.L) move.l A0,A2 jsr DAMGN bra POPN YCSCR:addq #6,A6 move.l A6,A3 add.l YECRL(PC),A6 bsr VERA6 move.l A3,A2 bsr XESAV3 bra LC12 YRSCR:bsr WCHAIN cmp.l YECRL(PC),D3 bne ERRMGC move.l A0,A3 bsr XEREM3 bra POPN YUPPER:move (A3),GAM26 lea TYPCAR,A2 moveq #0,D0 moveq #6,D1 moveq #5,D2 bra.s GEA72 GEA70:move.b (A0),D0 btst D1,(A2,D0.L) beq.s GEA71 GAM26:bclr D2,(A0) GEA71:addq #1,A0 GEA72:subq.l #1,D3 bpl.s GEA70 rts RERDK:lea TFONS,A3 tst.l (A3) beq.s GEB54 move.l (A3),A4 move.l (A4)+,D4 cmp.l TMPROC(PC),D4 bne.s GEB54 move.l A4,SP move.l (SP)+,(A3) move.l TVALA6(PC),A6 bsr PACK GEB51:move (SP),D0 cmp TVARN(PC),D0 bgt ERRFATR beq.s GEB52 bsr POPN bra.s GEB51 GEB52:addq #2,SP move.l (SP)+,TDEBA5 move.l (SP)+,A0 bsr WEXCENDbksl1 addq #4,SP move.l (SP)+,A5 GEB53:bsr POPN bsr DECCRV bne.s GEB54 bsr WNOMV GEB54:moveq #0,D3 rts STFONS:bsr WVGA move.l D3,D0 bsr LB95A lea GEB56(PC),A1 move.l (SP)+,A4 move.l A1,-(SP) subq.l #1,D0 bmi ERREX sub.l D0,D3 ble.s GEB53 add.l D0,A0 movem.l D0/A5,-(SP) bsr XCHEXFZbksl1 move.l A0,D0 sub.l D0,(SP) move.l A0,-(SP) move.l TDEBA5,-(SP) move TVARN(PC),-(SP) move.l A0,A5 lea TFONS,A0 move.l (A0),-(SP) move.l TMPROC(PC),-(SP) move.l SP,(A0) jmp (A4) RNORDK:move.l (SP)+,A3 addq #4,SP move.l (SP)+,TFONS addq #2,SP bsr POPPR move.l (SP)+,TDEBA5 move.l (SP)+,A0 bsr WEXCENDbksl1 addq #1,A5 move.l A5,D3 add.l (SP)+,D3 move.l (SP)+,A5 addq #4,SP jmp (A3) YDKX:bsr.s STFONS bsr WEXPR bsr.s RNORDK bsr DECCRV bne.s GEB55 move.l D3,-(SP) bsr WNOMVC GEB540:move D2,D0 bsr WASGN2 move.l (SP)+,D3 bra.s GEB56 GEB55:bsr POPN GEB56:move.l D3,D0 bra LB305 YDKXC:bsr STFONS bsr WCHAS bsr.s RNORDK bsr DECCRV bne.s GEB55 move.l D3,-(SP) bsr WNOMC bra.s GEB540 YDKXI:bsr STFONS bsr WADR GEB57:move.l D3,TFONS1 bsr CPUSHN0 bsr.s RNORDK bsr DECCRV bne.s GEB58 move.l D3,-(SP) bsr WNOMI move.l TFONS1,D3 bsr LB900 move.l (SP)+,D3 GEB58:bsr POPN bra.s GEB56 YDKL:bsr STFONS bsr WLABL GEB59:move.l A3,D3 bra.s GEB57 YDKT:bsr STFONS bsr WVAR moveq #0,D3 move D1,D3 bra.s GEB57 YDKV:bsr STFONS bsr WNOMVC bra.s GEB59 YDKC:bsr STFONS bsr WNOMC bra.s GEB59 YDKI:bsr STFONS bsr WNOMI bra.s GEB59 YNXTCD:move.l TDEBA5+8,D0 bra.s LB305R YNXTLG:move.l A5,-(SP) move.l TDEBA5+8,A5 jsr LOCALS move.l (SP)+,A5 move.l TPL,D0 bra.s LB305R YERL:move.l #ZEROZERO,D0;.L bra.s LB305R YERA:move.l #ZEROZERO,D0;.L LB305R:bra LB305 YVSET:bsr CPUSHN0 GEF44:bsr WSTVSG bsr XICHA bsr DECCRV beq.s GEF44 rts YCSET:bsr CPUSHN0 GEF46:bsr WSTCSG bsr XICHA bsr DECCRV beq.s GEF46 rts YMKID:bsr WINDEX moveq #2,D0 bra.s GAI65 YMKLD:bsr WADR moveq #4,D0 GAI65:move.l D0,-(SP) move.l D3,D0 bsr LB305 bsr.s GAI66 move.l (SP),D3 bra.s GAI67 GAI66:move #$100,D0 bra LB303 YMKZD:bsr WENTIER bsr.s GAI66 bsr WADRV cmpi.l #$1000,D3 bcc ERRRG YMKZ1:move.l D3,-(SP) GAI67:move.l D3,D0 bsr LB305 bsr XIEXP bsr PUSHID move TVARN(PC),D0 subq #1,D0 move D0,D2 subq #1,D2 bsr MG79 bsr YMODSA bsr XIADD bsr XIFLOB jsr SLNH0 add D0,A0 move.l (SP)+,D3 sub.l D3,A0 move.l A0,A2 bsr MG76 bra POPPR YCDR:bsr.s WLMYC1 beq ERR92 move TVARN(PC),D4 bra XFOR2A YLMN:bsr.s WLMYC1 GEE72:bsr LB305 bra POPPR WLMY:bsr WADR move.l D3,D1 WLMY2:bsr LB95A WLMY1:moveq #0,D0 move.l A0,A2 add.l D3,A0 moveq #0,D4 move #$8000,D5 GEE74:cmp.l A0,A2 bge.s GEE75 move (A2)+,D0 or D0,D4 and D0,D5 move.l (A2)+,D3 subq.l #1,D1 beq.s GEE75 addq.l #1,D3 bclr #0,D3 add.l D3,A2 bra.s GEE74 GEE75:rts WLMYC:bsr.s WLMY WLMYC3:bne ERR92 tst.l D1 bne ERR92 rts WLMYC2:bsr LB95A WLMYC1:moveq #0,D1 bsr.s WLMY1 bne ERR92 moveq #0,D0 sub.l D1,D0 rts YLMY:bsr.s WLMYC bra.s GEE72 YLMC:bsr.s WLMYC bsr MG76 bra POPPR YLMV:bsr.s YLMC bra VERVAR1 YESET:bsr CPUSHN0 GEE76:bsr WADR move D3,-(SP) bsr WSTCELV move (SP)+,(A0) bsr XICHA bsr DECCRV beq.s GEE76 rts WFORV:bsr WNOMVC move D2,-(SP) bsr DECXIN bne ERRISR bsr WSTVIN GED62:lea GED60(PC),A2 moveq #6,D3 bsr MG76 bsr XICHA bsr XFOR5 move (SP)+,D2 rts WFORC:bsr WNOMC move D2,-(SP) bsr DECXIN bne ERRISR bsr WSTCIN bra.s GED62 GED64:bsr DECNEXTV beq.s GED67 bsr DECFORV bne.s GED66 bsr DEAV bsr.s GED64 bra.s GED64 GED66:bsr DEAVN bra.s GED64 GED67:move.l A4,A5 rts YFORV:bsr.s WFORV moveq #3,D3 move D2,-(SP) bsr GEY44 move (SP),6(A2) bsr.s GED64 move (SP)+,D2 YNEXTV:move.l A5,-(SP) moveq #3,D3 bsr GEY55 move.l (SP)+,A4 exg A5,A4 move 6(A1),D2 bsr.s XFORV GED70:beq.s GED67 lea 16(A1),A1 move.l A1,(A0) rts GEF90:bsr XFOR2 moveq #1,D0 GEF91:movem.l (SP)+,A0/A1/A4/A5 rts XFORV:movem.l A0/A1/A4/A5,-(SP) XFORVbksl1=* .1:bsr XFOR1 beq.s GEF90 move D2,-(SP) bsr XFOR3 bsr VERVAR1 bsr.s XFOR1 subq #1,D0 bne.s GEF82 GEF80:bsr XFOR2 GEF81:move (SP)+,D0 bsr WASGN2 moveq #0,D0 bra.s GEF91 GEF82:cmpi.b #3,D0 bne.s ERR93 move D0,-(SP) moveq #2,D1 bsr XFOR4V move TVARN(PC),D0 move D0,D1 move D0,D2 subq #1,D1 bsr XHSUB bsr XIFLOB bne.s ERR93 move (SP)+,D0 cmpi #$4000,(A0) beq.s .88 andi #$100,D0 beq.s .86 tst (A0) bmi.s .88 .84:bsr POP2N bsr.s XFOR2 bsr.s XFOR2 bsr.s XFOR2 move (SP)+,D2 bra.s XFORVbksl1 .86:tst (A0) bmi.s .84 .88:bsr POPN bsr PUSHID moveq #3,D1 bsr.s XFOR4V bsr XIADD bsr.s XFOR1 move D0,-(SP) bsr WSTVEL1 move (SP)+,(A0) bsr.s XFOR2 bsr.s XFOR5 bra.s GEF81 ERR93:moveq #93,D0 trap #15 XFOR1:moveq #5,D4 bsr LB95C tst.l D3 beq.s ERR93 move (A0),D0 cmpi #8,D0 rts GAM19:bsr.s XFOR2 XFOR6:bsr.s XFOR1 bne.s GAM19 XFOR2:moveq #5,D4 XFOR2A:move D4,-(SP) bsr LB95C move.l 2(A0),D0 addq.l #7,D0 bclr #0,D0 lea (A0,D0.L),A2 sub.l D0,D3 bmi.s ERR93 bsr MG76 move (SP)+,D0 bra WASGN2 XFOR3:moveq #1,D1 XFOR4:moveq #5,D4 bsr LB95C bsr WLMY1 bsr WLMYC3 bra MG76 XFOR4V:bsr.s XFOR4 bra VERVAR1 XFOR5:move TVARN(PC),D0 moveq #5,D1 moveq #5,D2 bsr XHCHA bra POPN GED74:bsr DECNEXTC beq GED67 bsr DECFORC bne.s GED76 bsr DEAV bsr.s GED74 bra.s GED74 GED76:bsr DEAVN bra.s GED74 YFORC:bsr WFORC moveq #4,D3 move D2,-(SP) bsr GEY44 move (SP),6(A2) bsr.s GED74 move (SP)+,D2 YNEXTC:move.l A5,-(SP) moveq #4,D3 bsr GEY55 move.l (SP)+,A4 exg A5,A4 move 6(A1),D2 bsr.s XFORC bra GED70 XFORC:movem.l A0/A1/A4/A5,-(SP) bsr XFOR1 beq GEF90 move D2,-(SP) bsr.s XFOR3 bsr XFOR1 cmpi #$8001,D0 beq GEF80 cmpi #$8002,D0 bne ERR93 moveq #16,D1 cmp.l D3,D1 bhi ERR93 addq #2,A0 moveq #1,D0 cmp.l (A0)+,D0 bne ERR93 move.l A0,A1 move.b (A0),D1 addq #2,A0 cmpi #$8103,(A0)+ bne ERR93 cmp.l (A0)+,D0 bne ERR93 sub.b (A0),D1 bne.s GEF94 bsr XFOR2 bra GEF80 GEF94:bcc.s GEF96 addq.b #1,(A1) bra GEF81 GEF96:subq.b #1,(A1) bra GEF81 WTNAM:move.l D1,-(SP) bsr WNOMVR bne.s GEG10 clr D0 cmpi #4,D2 bcs.s GEG10 ERRSZR:moveq #52,D0 trap #15 GEG10:move.l (SP)+,D1 rts WTDES:move.l D1,-(SP) bsr DECCRVE move.l (SP)+,D1 bsr.s WTNAM movem.l D0/D2/D3/D5/A3,-(SP) move.l D1,-(SP) bra.s GEG11 WTSRC:bsr.s WTSRC1 tst.l D1 bne.s GEH32 bsr LB93 subq #1,A5 addq #4,SP GEH32:rts WTSRC1:bsr.s WTNAM movem.l D0/D2/D3/D5/A3,-(SP) bsr WADRV move.l D3,-(SP) GEG11:bmi ERRIX bsr WADRV move.l (SP),D1 beq.s GEG110 subq.l #1,D1 GEG110:move.l D3,-(SP) bmi.s GEG12 bsr LMUL13 bra.s GEG14 GEG12:neg.l D3 bsr LMUL13 neg.l D3 GEG14:movem.l 16(SP),D0/D1 add.l D3,D0 cmp.l D1,D0 bcc ERRIXH movem.l (SP)+,D0-D5/A3 rts YCOPY:bsr.s WTSRC movem.l D0/D2/D3/A3,-(SP) bsr.s WTDES GAJ35:movem.l D0-D3/A3,-(SP) GEG18:movem.l 20(SP),D0-D2/A3 tst D1 bne.s GEG32 move.b (A3)+,D3 subq.l #1,D0 move.l D0,D4 ext D3 ext.l D3 bra.s GEG21 GEG20:asl.l #8,D3 move.b (A3)+,D3 add.l D0,D4 GEG21:dbra D2,GEG20 add.l D4,A3 move.l A3,32(SP) move 10(SP),D0 beq.s GEG28 cmpi #$30,D0 bne ERRMT move.l D3,D0 bsr LB305 GEG23:move 14(SP),D0 bsr WASGN2 move.l (SP),D0 sub D0,14(SP) GEG25:subq.l #1,4(SP) bhi.s GEG18 lea 36(SP),SP rts GEG32:sub D0,30(SP) cmpi #$30,D1 beq.s GEG34 cmp 10(SP),D1 bne ERRMT GEG34:bsr LB321 tst 10(SP) bne.s GEG23 bsr XIADR bne ERRIX bsr POPN GEG28:movem.l 12(SP),D2/A3 bsr LB900 move.l (SP),D0 GEG30:add.l D0,A3 dbra D2,GEG30 move.l A3,16(SP) bra.s GEG25 WTPER:move.l D1,-(SP) bsr WNOMVR bne ERRNID cmpi #3,D2 bne ERRSZR move.l (SP)+,D1 add.l D1,D3 cmp.l D5,D3 bhi ERRIXH rts CMPDET:tst D2 bne.s GEG42 lea CMPIB(PC),A0 subq #1,D3 bmi.s GEG41 lea CMPIW(PC),A0 beq.s GEG40 lea CMPIL(PC),A0 add.l D0,D0 GEG40:add.l D0,D0 GEG41:movem.l D0/D1/A3,4(SP) movem.l D2/D3/A0,16(SP) bsr DECCRVE move.l 8(SP),D1 bra.s WTPER GEG42:lea CMPV(PC),A0 cmpi #$30,D2 beq.s GEG43 lea CMPC(PC),A0 GEG43:move D3,A3 neg.l D0 bra.s GEG41 YSORT:lea -92(SP),SP bsr WTSRC bsr.s CMPDET subq #4,A3 move.l A3,-(SP) bsr WVGAZ move.l 8(SP),D1 cmp.l D1,D3 bhi ERRIXH move.l #GEK15,28(SP) move.l D3,-(SP) beq.s GAS50 movem.l (SP),D1/A3 addq #4,A3 bsr XPEROK GAS50:bsr WTSCM GEK12:move.l (SP),D5 addq.l #1,(SP) cmp.l 12(SP),D5 blt.s GEK14 lea 100(SP),SP rts GEK14:moveq #1,D6 bra.s DICHOT GEK15:movem.l (SP),D0/A1 sub.l D0,D6 add.l D0,D0 add.l D0,D0 add.l D0,A1 lea 4(A1),A0 bra.s GEK17 GEK16:move.l -(A1),-(A0) GEK17:addq.l #1,D6 ble.s GEK16 move.l (SP),(A1) bra.s GEK12 DICHOT:cmp.l D6,D5 bcc.s GEK20 move.l 32(SP),A0 jmp (A0) GEK20:move.l D5,D4 add.l D6,D4 asr.l D4 movem.l (SP),D1/A0 move.l D4,D0 add.l D0,D0 add.l D0,D0 move.l (A0,D0.L),D0 subq.l #1,D0 subq.l #1,D1 move.l 28(SP),A0 jsr (A0) bpl.s GEK22 move.l D4,D5 subq.l #1,D5 bra.s DICHOT GEK22:move.l D4,D6 addq.l #1,D6 bra.s DICHOT YSEARCH:lea -92(SP),SP bsr WTSRC1 subq.l #1,D1 bmi ERRIXH bsr CMPDET bsr XPEROK addq.l #1,D1 subq #4,A3 movem.l D1/A3,-(SP) move.l #GEK24,32(SP) bsr.s WTSCM moveq #1,D6 move.l (SP),D5 subq.l #1,D5 bra.s DICHOT GEK24:move.l D5,D0 lea 100(SP),SP bra LB305 WTSCM:bsr DECCRV bne.s GAS48 bsr DECAN beq ERRIS7 subq #1,D0 bne ERRIS7 lea 24(SP),A2 lea 40(SP),A0 GAS44:move.b (A1)+,(A0)+ bne.s GAS44 move.b #"(",-1(A0) move.l (A2),D2 subi #$30,D2 beq.s GAS46 cmpi #$10,D2 bne ERRIS7 GAS46:bsr.s WTSCMA bsr.s WTSCMA subq #2,A0 move.b (A0)+,(A0)+ move.l #CMPBAS,(A2)+ GAS48:rts WTSCMA:lea GAS40(PC),A1 tst D2 bne.s GAS42 move.b #"v",(A0)+ addq #2,A1 GAS42:move.b (A1)+,(A0)+ bne.s GAS42 subq #7,A0 move.l A0,(A2)+ addq #6,A0 rts WRTHEX1:neg D0 addi #$7FFF,D0 exg A6,A0 move D0,D3 lsr #8,D0 bsr.s GES78R move D3,D0 bsr.s GES78R exg A6,A0 rts GES78R:jmp GES78 CMPBAS:bsr.s CMPCAL move.l 28(SP),A0 bsr.s WRTHEX1 move.l 24(SP),A0 move D2,D0 bsr.s WRTHEX1 move.l A5,-(SP) lea 44(SP),A5 bsr WADR move.l (SP)+,A5 tst.l D3 rts REOIL:bsr.s CMPCAL move.l (A0),D0 move.l (A1),(A0) move.l D0,(A1) rts REOIW:bsr.s CMPCAL move (A0),D0 move (A1),(A0) move D0,(A1) rts REOIB:bsr.s CMPCAL move.b (A0),D0 move.b (A1),(A0) move.b D0,(A1) rts REOVC:bsr.s CMPCAL movem.l A0/A2/A3,-(SP) bsr MG79 movem.l (SP)+,A0/A2/A3 rts GEG61:neg.l D3 bsr LMUL13 neg.l D3 exg D0,D3 move.l 20(SP),D1 sub.l D1,D0 neg.l D1 bsr LMUL13 neg.l D3 bra.s GEG60 CMPCAL:move.l D6,-(SP) addq.l #1,D1 move.l 20(SP),D3 bmi.s GEG61 bsr LMUL13 exg D0,D3 move.l 20(SP),D1 sub.l D1,D0 bsr LMUL13 GEG60:move.l 28(SP),D2 add.l D2,D0 add.l D3,D2 move.l D0,A1 move.l D2,A0 move.l (SP)+,D6 rts CMPIL:bsr.s CMPCAL cmpm.l (A0)+,(A1)+ GEG58:blt.s GEG59 moveq #1,D0 rts GEG59:moveq #-1,D0 rts CMPIW:bsr.s CMPCAL cmpm (A0)+,(A1)+ bra.s GEG58 CMPIB:bsr.s CMPCAL cmpm.b (A0)+,(A1)+ bra.s GEG58 CMPV:bsr.s CMPCAL movem.l D2/D4-D6,-(SP) move D0,D2 bsr LB321 move.l (SP)+,D2 bsr LB321 bsr XISUB bsr XIFLOB bne ERRCP move.l (A0),-(SP) bsr POPN move.l (SP)+,D0 movem.l (SP)+,D4-D6 rts CMPC:bsr.s CMPCAL movem.l D0/D4-D6,-(SP) bsr LB321 move.l (SP)+,D2 bsr LB321 bsr XCMPCH1 bsr POP2N movem.l (SP)+,D4-D6 tst.l D3 rts YPERMUTE:bsr WTSRC tst D2 bne.s GEH14 lea REOIB(PC),A0 subq #1,D3 bmi.s GEH12 lea REOIW(PC),A0 beq.s GEH10 lea REOIL(PC),A0 add.l D0,D0 GEH10:add.l D0,D0 GEH12:move.l A3,-(SP) bra.s GEH18 GEH14:lea REOVC(PC),A0 move.l D3,-(SP) neg.l D0 GEH18:movem.l D0/D1,-(SP) move.l A0,GEH24 bsr DECCRVE move.l 4(SP),D1 bsr WTPER bsr.s XPEROK bsr.s XPEREF lea 12(SP),SP rts XPEREF:move.l A3,-(SP) move.l A3,A1 GEH20:cmp.l A2,A1 bcc.s GEH26 tst.l (A1)+ bmi.s GEH20 move.l A1,A0 GEH22:move.l -(A0),D0 move.l D0,D4 add.l D4,D4 add.l D4,D4 neg.l D0 move.l D0,(A0) neg.l D0 lea -4(A3,D4.L),A4 move.l (A4)+,D1 bmi.s GEH20 move.l A1,D6 subq.l #1,D0 subq.l #1,D1 move.l GEH24(PC),A0 jsr (A0) move.l D6,A1 move.l A4,A0 bra.s GEH22 GEH26:move.l (SP)+,A3 GEH28:neg.l (A3)+ cmp.l A2,A3 blt.s GEH28 rts GEH24:dc.l 0 XPEROK:add.l D1,A6 bsr VERA6R1 sub.l D1,A6 move.l D1,D0 beq.s GEG69 move.l A6,A2 GEG67:clr.b (A2)+ subq.l #1,D0 bhi.s GEG67 move.b #1,(A2) move.l D1,D0 move.l A3,A2 GEG68:move.l (A2)+,D2 subq.l #1,D2 cmp.l D1,D2 bcc.s ERR94 tas (A6,D2.L) bne.s ERR94 subq.l #1,D0 bhi.s GEG68 GEG69:rts ERR94:move #94,D0 trap #15 YNEXTPERM:bsr WADR bsr DECCRVE move.l D3,D1 ble ERRIX bsr WTPER move.l D1,-(SP) bsr WVGA move.l (SP)+,D1 tst.l D3 bgt.s GEG66 moveq #1,D0 move.l A3,A2 GEG64:move.l D0,(A2)+ addq.l #1,D0 cmp.l D0,D1 bcc.s GEG64 tst.l D3 bmi.s GEG86 bra PUSHNU GEG66:bsr.s XPEROK move.l A2,A0 GEG70:subq #4,A0 cmp.l A3,A0 blt PUSHNZ GEG72:move.l (A0),D2 lea -1(A6,D2.L),A1 clr.b (A1)+ GEG74:addq.l #1,D2 move.b (A1)+,D3 bmi.s GEG74 bne.s GEG70 st -(A1) move.l D2,(A0)+ cmp.l A2,A0 bge.s GEG76 move.l A6,A1 moveq #0,D2 bra.s GEG74 GEG86:movem.l D1/A2/A3,-(SP) GEG88:bsr.s XRNDRG add.l D0,D0 add.l D0,D0 lea (A3,D0.L),A0 move.l (A3),D0 move.l (A0),(A3)+ move.l D0,(A0) subq.l #1,D1 bne.s GEG88 movem.l (SP)+,D1/A2/A3 GEG76:moveq #0,D5 move.l #GEG80,GEH24 bsr XPEREF btst #0,D5 bne PUSHNM bra PUSHNU GEG80:addq #1,D5 rts XRNDRG:movem.l D1/A3/A5/A6,-(SP) move.l D1,D0 bsr XPOSELR move.l A2,A0 jsr XRND moveq #0,D0 move (A2)+,D0 bclr #14,D0 bne.s GEG91 cmpi #2,D0 beq.s GEG90 move.l (A2)+,D0 bra.s GEG91 GEG90:move (A2)+,D0 GEG91:movem.l (SP)+,D1/A3/A5/A6 rts WLECT:bsr WTSTCH beq.s GEK35 bsr WADR bra.s GEK38 GEK35:bsr WCHAS tst.l D3 beq.s GEK37 moveq #0,D3 move.b (A0),D3 GEK37:bsr POPNR bclr #5,D3 subi #$40,D3 GEK38:tst.l D3 moveq #16,D0 cmp.l D0,D3 bhi ERRRG move.l D3,D0 rts YCHDR:bsr.s WLECT subq #1,D0 bmi.s GEK39 move D0,-(SP) move #$E,-(SP) trap #1 addq #4,SP GEK39:rts WLECT1:cmpi.b #"(",(A5)+ beq.s GES56 subq #1,A5 moveq #0,D0 rts GES56:bsr.s WLECT DECCRPDE:bsr DECCRPD bne ERRIS5 move.l D3,D0 rts YDFREE:bsr.s WLECT1 jsr DFREE1 bra LB305 YDIRD:bsr.s WLECT1 lea -100(SP),SP move.l SP,A3 move D0,-(SP) move.l A3,-(SP) move #$47,-(SP) trap #1 tst.l D0 beq.s GES52 clr.b (A3) GES52:move.l A3,D3 bsr YPEKCZ1 lea 108(SP),SP rts FRNAM:move.l A0,-(SP) bsr.s WCHANF move.l (SP)+,A1 moveq #64,D0 GAL27:move.b (A0)+,(A1)+ dbeq D0,GAL27 bsr LB920 bra POPN YCHDIR:bsr.s WCHANF move.l A0,-(SP) move #$3B,-(SP) trap #1 tst.l D0 bne.s ERREP addq #6,SP POPNR:bra POPN ERREP:moveq #83,D0 trap #15 YMKDIR:bsr.s WCHANF moveq #$39,D0 GES54:move.l A0,-(SP) move D0,-(SP) trap #1 addq #6,SP tst.l D0 bpl.s POPNR ERRTOS:lea TTOS,A1 move D0,D1 neg D1 bsr GER76 moveq #95,D0 trap #15 WCHANF:bsr WTSTCH beq WCHASZ bra ERREX YRMDIR:bsr.s WCHANF moveq #$3A,D0 bra.s GES54 YKILL:bsr.s WCHANF moveq #$41,D0 bra.s GES54 YEXIST:bsr.s WCHANF clr -(SP) move.l A0,-(SP) move #$4E,-(SP) trap #1 addq #8,SP tst.l D0 bra LB606 YFILES:jsr FIXREP0 moveq #0,D3 cmpi.b #"(",(A5) bne.s GEA50 addq #1,A5 bsr.s WCHANF jsr FIXREP bsr POPN bsr WVGAZ bsr DECCRPDE GEA50:addq #6,A6 jsr WVIEW2 move.l A0,A2 bra LC12 YNAME:bsr.s WCHANF bsr DECXAS beq.s GES68 bsr DECCRVE GES68:bsr.s WCHANF bsr XILOC move.l A0,-(SP) move.l A1,-(SP) clr -(SP) move #$56,-(SP) trap #1 lea 12(SP),SP tst.l D0 bmi ERRTOS bra POP2N YCHANS:bsr DECCRM move SR,-(SP) bsr WCHAS move.l A6,A1 moveq #-1,D1 moveq #$3F,D0 GEK45:move.l D1,(A1)+ dbra D0,GEK45 move.l A6,A1 move #$100,D0 cmp.l D0,D3 bcs.s GEK46 move.l D0,D3 GEK46:move (SP)+,SR beq.s GEK50 bra.s GEK48 GEK47:move.b (A0)+,(A1)+ GEK48:subq #1,D3 bpl.s GEK47 bra.s GEK54 GEK50:moveq #0,D0 bra.s GEK52 GEK51:move.b (A0,D3.L),D0 move.b D3,(A1,D0.L) GEK52:subq #1,D3 bpl.s GEK51 GEK54:move TVARN(PC),D4 subq #1,D4 bsr LB95C moveq #0,D0 bra.s GEK56 GEK55:move.b (A0),D0 move.b (A6,D0.L),(A0)+ GEK56:subq.l #1,D3 bpl.s GEK55 bra POPN YBREAK:bsr DECXBREAK bne YONMENU bsr DECTMN beq.s YBREAK0 bsr DECXSTOP beq.s YBREAK0 bsr DECXNEXT beq.s YNOBREAK bsr WLABLG bra.s GEK60 YBREAK0:sub.l A3,A3 GEK60:lea TFONB,A0 move.l A3,(A0) jmp SETBREAK-TFONB(A0) YBRKLBL:bsr DECLABL bpl.s GEK60 YNOBREAK:move #$70,GETSHIFT_AD rts YDEBUG:bsr DECTMN move.l A5,A6 bne WG jmp WDEBUG0 YNEW:jsr XNEW trap #5;HOTB YQUIT:jmp WDSEKA YTIMED:bsr.s XTIMB1 addq #6,A6 move.l A6,A2 move TCTIMR(PC),D0 bsr XTIMEQ bra LC12 YDATED:bsr.s WJUL addq #6,A6 move.l A6,A2 bsr XDATEQ1 bra LC12 WJUL:cmpi.b #"(",(A5)+ bne.s KM80 WJUL1:bsr WADR bsr DECCRPDE bra.s KM82 KM80:subq #1,A5 bsr XTIMEC KM82:bsr XTIMEB tst D1 beq ERRRGR rts XTIMB1:move #$2A,-(SP) trap #1 move D0,(SP) bsr XTIME lea TCTIMD(PC),A0 move (SP)+,D0 move D0,(A0)+ tst (A0)+ beq.s XTIMB1 bsr.s XDATED move D2,GTIMEN move D1,GTIMEMO move D0,GTIMEY move.b (A0)+,D1 move D1,GTIMEH move.b (A0)+,D1 move D1,GTIMEM move.b (A0)+,D1 move D1,GTIMES GER88:rts XDATED:move D0,D2 andi #$1F,D2 move D0,D1 ror #5,D1 andi #$F,D1 rol #7,D0 andi #$7F,D0 addi #1980,D0 rts TIMA1:dc.l 0 YTIMEH:cmpi #24,D3 bcc.s ERRRGR andi #$7FF,D5 ror #5,D3 GER91:or D3,D5 GER92:move D6,-(SP) move #$2B,-(SP) trap #1 tst D0 bmi.s ERRRGR move.l D5,(SP) move #$2D,(SP) trap #1 addq #4,SP rts ERRRGR:bra ERRRG YTIMEM:cmpi #60,D3 bcc.s ERRRGR andi #$F81F,D5 rol #5,D3 bra.s GER91 YTIMES:cmpi #60,D3 bcc.s ERRRGR andi #$FFE0,D5 asr D3 bra.s GER91 YTIMEY:subi #1980,D3 cmpi #128,D3 bcc.s ERRRGR andi #$1FF,D6 ror #7,D3 GER94:or D3,D6 bra.s GER92 YTIMEMO:subq #1,D3 cmpi #12,D3 bcc.s ERRRGR addq #1,D3 andi #$FE1F,D6 rol #5,D3 bra.s GER94 YTIMEN:subq #1,D3 cmpi #31,D3 bcc.s ERRRGR addq #1,D3 andi #$FFE0,D6 bra.s GER94 YCLOCK:moveq #-1,D3 bra.s GER96 YNOCLOCK:moveq #0,D3 GER96:bsr DECTMN beq.s GER98 bsr WADR GER98:move D3,(A0) rts XTIMEJ1:bsr XTIMB1 XTIMEJ:move GTIMEY(PC),D0 subi #1976,D0 move GTIMEMO(PC),D1 subq #3,D1 bpl.s GES22 addi #12,D1 subq #1,D0 GES22:move D0,D2 mulu #365,D0 asr #2,D2 add D2,D0 mulu #979,D1 addi #15,D1 asr #5,D1 add D1,D0 add GTIMEN(PC),D0 divu #7,D0 swap D0 rts YTIMED1:bsr WJUL move D6,D0 bra LB303 YSETTIME:bsr.s GES44 bsr DECCRV beq.s GES44 rts YSETTIME1:bsr DECCRE GES44:bsr WCHASZ movem.l A5/A6,-(SP) move.l A0,A6 jsr WSTMDT movem.l (SP)+,A5/A6 bra POPN XTIMEA:tst D0 bgt.s KM60 addq #1,D0 KM60:subq #3,D1 bpl.s KM62 addi #12,D1 subq #1,D0 KM62:mulu #979,D1 addi #15,D1 asr #5,D1 add D1,D2 move D0,D1 addi #$8000,D0 mulu #365,D0 asr #2,D1 add D1,D2 ext.l D2 add.l D2,D0 cmpi.l #12538374,D0 blt.s KM64 divu #25,D1 move D1,D2 asr #2,D1 sub D1,D2 subq #2,D2 sub.l D2,D0 KM64:subi.l #10239203,D0 rts XTIMEB:move.l D0,D4 addi.l #10247088,D0 moveq #0,D1 move.l D0,D6 cmpi.l #23936048,D0 bhi.s KM76 asl.l #2,D0 divu #1461,D0 subi #32765,D0 move D0,D5 moveq #10,D3 KM70:moveq #1,D1 moveq #1,D2 subq #1,D5 bne.s KM72 moveq #-1,D5 KM72:move D5,D0 bsr.s XTIMEA cmp.l D0,D4 dbge D3,KM70 moveq #12,D3 KM74:moveq #0,D2 move D3,D1 move D5,D0 bsr XTIMEA sub.l D4,D0 dblt D3,KM74 move.l #2299177,D1 sub.l D4,D1 blt.s KM75 moveq #16,D2 cmp.l D2,D1 bgt.s KM75 moveq #10,D2 bra.s KM77 KM75:moveq #0,D2 KM77:sub D0,D2 move D3,D1 move D5,D0 addq.l #3,D6 divu #4900,D6 swap D6 ext.l D6 divu #7,D6 swap D6 KM76:rts XTIMEC:bsr XTIMB1 move GTIMEY(PC),D0 move GTIMEMO(PC),D1 move GTIMEN(PC),D2 bra XTIMEA YTIMEJ:cmpi.b #"(",(A5)+ beq.s KN10 subq #1,A5 bsr.s XTIMEC bra.s KN14 KN10:bsr WTSTCH beq.s KN16 bsr WINDEX subq #1,D3 cmpi #12,D3 bcc ERRRGR addq #1,D3 move D3,-(SP) bsr WINDEXV subq #1,D3 cmpi #31,D3 bcc ERRRGR addq #1,D3 move D3,-(SP) bsr WINDEXV cmpi #$7FFF,D3 beq ERRRGR bsr DECCRPDE move (SP)+,D2 move (SP)+,D1 bsr XTIMEA KN14:bra LB305 KN16:bsr WCHASZ movem.l A5/A6,-(SP) move.l A0,A6 jsr WSDT move.l D0,D3 movem.l (SP)+,A5/A6 bsr POPN bsr DECCRPDE bra.s KN14 YERR:move #14,D0;.W bra LB303 YERROR:bsr WINDEX cmpi #ERRMAX,D3 bhi ERRRGR move D3,D0 trap #15 DECLABL:bsr DECCRE bsr WCHASZ move.l A5,-(SP) move.l A0,A5 lea -1.W,A3 bsr DECXNEXT beq.s .1 sub.l A3,A3 bsr DECTMN beq.s .10 bsr DECXSTOP beq.s .1 bsr DECAN beq.s .2 tst D0 bmi.s .2 move.b (A3)+,D0 andi #$F0,D0 cmpi #$50,D0 bne.s .2 move.l A3,D1 addq.l #1,D1 bclr #0,D1 move.l D1,A3 .1:bsr DECTMN bne.s .2 .10:move.l (SP)+,A5 bsr POPN move.l A3,D0 rts .2:move.l (SP)+,A5 ERRLIR:bra ERRLI YERRLBL:bsr.s DECLABL bmi.s ERRLIR bra.s MG54 YERRLBLV:lea TFONR(PC),A3 MCH10:lea GET79S+1(PC),A2 moveq #4,D3 tst.l (A3) beq.s MCH12 move.l (A3),A3 move.l (A3),D3 move.l D3,A2 moveq #$19,D0 .1:move.b -(A2),D1 beq.s .2 cmp.b D0,D1 bne.s .1 .2:addq #1,A2 sub.l A2,D3 MCH12:bra MG76 YBRKLBLV:lea GET79N+1(PC),A2 moveq #4,D3 cmpi #$70,GETSHIFT_AD beq.s MCH12 lea TFONB,A3 bra.s MCH10 YON:bsr DECXERROR bne YBREAK sub.l A3,A3 bsr DECTMN beq.s MG54 bsr DECXSTOP beq.s MG54 bsr WLABLG MG54:lea TFONR(PC),A0 move.l A3,(A0)+ move.l D7,(A0)+ rts ERRFI1:moveq #96,D0 trap #15 ERRFI2:moveq #97,D0 trap #15 ERRIS5:bra ERRISR YOPEN:bsr WCHAS moveq #1,D0 cmp.l D0,D3 bne.s ERRIS5 move.b (A0),D0 bclr #5,D0 moveq #4,D1 lea GA250(PC),A0 GA25:cmp.b (A0)+,D0 dbeq D1,GA25 bne.s ERRIS5 neg D1 bne.s GA27 move.l TMRAN(PC),A0 subq #6,A0 GA26:addq #1,D1 addq #6,A0 tst (A0) bmi.s ERRFI1 bne.s GA26 move RFILES0,D0 add D1,D0 move D0,(A0)+ clr.l (A0)+ GA27:move D1,-(SP) bsr DECCRVE bsr POPN bsr XCANAL bne.s ERRFI2 cmpi #NBCANAUX-2,D3 bcc ERRRGR bsr DECCRVE move (SP)+,D0 GA270:move D0,D1 cmpi #-4,D0 bne.s GA28 addq #1,D1 GA28:move.l A0,-(SP) movem D0/D1,-(SP) bsr WCHANF moveq #5,D0 cmp.l D0,D3 bne.s GA36 move.l (A0),D0 ori.l #$20202000,D0 lea GA29(PC),A1 moveq #9,D1 GA31:cmp.l (A1)+,D0 dbeq D1,GA31 bne.s GA36 tst D1 beq.s GA32 subq #4,D1 bra GA42 GA32:bsr DECCRVE bsr WNOMC move.l TMMEM(PC),A1 moveq #-7,D1 subq #6,A1 GA33:subq #1,D1 addq #6,A1 tst (A1) bmi.s ERRFI3 bne.s GA33 move D2,(A1)+ moveq #0,D3 move (SP),D0 addq #2,D0 bne.s GA330 move.l D3,(A1)+ move D1,-(SP) bsr CPUSHN move D2,D0 bsr WASGN2 move (SP)+,D1 bra.s GA42 GA330:addq #2,D0 bne.s GA34 move D2,D4 bsr LB95C GA34:move.l D3,(A1)+ bra.s GA42 ERRFI3:moveq #98,D0 trap #15 GA36:moveq #$3D,D0 moveq #2,D1 move (SP),D3 addq #2,D3 bne.s GA37 moveq #$3C,D0 bra.s GA38 GA37:subq #1,D3 bne.s GA39 GA38:moveq #0,D1 GA39:move D1,-(SP) move.l A0,-(SP) move D0,-(SP) trap #1 tst D0 bpl.s GA40 tst D3 ble ERRTOS subq #1,(SP) clr 6(SP) trap #1 tst D0 bmi ERRTOS GA40:addq #8,SP move D0,D5 addq #3,D3 bne.s GA41 moveq #2,D2 bsr GA710 GA41:move D5,D1 GA42:movem (SP)+,D0/D2 move.l (SP)+,A0 move.b D2,(A0)+ move.b D1,(A0)+ move D0,-(SP) bsr POPN move (SP)+,D2 bmi.s GA43 move D2,-(SP) bsr WADRV tst.l D3 ble ERRRGR addq #6,A6 move.l A6,A2 move.l D3,(A6)+ move.l D3,(A6)+ bsr LC12 move (SP)+,D0 add RFILES0,D0 bsr WASGN2 GA43:rts YDEVTY:bsr.s XCANAL move D4,D0 bra LB303 YDEVID:bsr.s XCANAL move D5,D0 bra LB303 XCANAL:bsr.s DECCRDF GA44:bsr WINDEX cmpi #NBCANAUX,D3 bhi ERRRGR lea CANAUX,A0 add D3,A0 add D3,A0 XCANAL1:move (A0),D5 ext D5 move D5,D0 lea TMMEM(PC),A2 move.l (A2)+,A1 move.l (A2)+,A2 addq #8,D0 bgt.s GA45 add D0,D0 sub D0,A1 add D0,D0 sub D0,A1 GA45:move.b (A0),D4 ext D4 ble.s GA46 subq #1,D4 add D4,D4 add D4,A2 add D4,D4 add D4,A2 move.b (A0),D4 ext D4 GA46:rts DECCRDF:moveq #"#",D1 jmp DECCR XCANAL2A:bsr.s DECCRDF XCANAL2:bsr.s GA44 GAB26:beq.s ERRFI6 addq #1,D4 beq.s GA46 addq #2,D4 beq.s GA46 ERRFI4:moveq #99,D0 trap #15 ERRFI6:moveq #101,D0 trap #15 XCANAL5:lea CANAUX1,A0 bsr.s DECCRDF beq.s XCANAL2 bsr.s XCANAL1 bra.s GAB26 XCANAL3:bsr.s XCANAL beq.s ERRFI6 GA74:cmpi #-7,D5 blt.s GA46 cmpi #6,D5 bge.s GA46 ERRFI7:moveq #102,D0 trap #15 XCANAL4A:bsr.s DECCRDF XCANAL4:bsr GA44 GAB70:beq.s ERRFI6 addq #2,D4 beq.s GA46 addq #1,D4 beq.s GA46 ERRFI5:moveq #100,D0 trap #15 XCANAL6:bsr XCANAL bgt.s GA46 moveq #110,D0 trap #15 XCANINP:bsr.s XCANAL5 bsr DECCRVSR move D5,D0 subq #5,D0 beq.s GAB39 addq #3,D0 beq.s GAB39 addq #3,D0 GAB39:rts YLPRINTDEV:lea CANAUX3,A0 bra.s GAB12 YPRINTDEV:lea CANAUX2,A0 GAB12:bsr.s XCLOSE moveq #-2,D0 GA270R:bra GA270 YINPUTDEV:lea CANAUX1,A0 bsr.s XCLOSE moveq #-1,D0 bra.s GA270R YCLOSE:bsr DECTMNR bne.s GA54 XCLOSEA:move #NBCANAUX,D3 lea CANAUX,A0 GA52:bsr.s XCLOSE addq #2,A0 dbra D3,GA52 rts GA54:bsr XCANAL XCLOSE:bsr XCANAL1 beq.s GA49 blt.s GA47 clr (A2) GA47:cmpi #-8,D5 bgt.s GA48 clr (A1) GA48:bsr.s GA49 cmpi #6,D5 blt.s GA490 move.l A0,-(SP) move D5,-(SP) move #$3E,-(SP) trap #1 tst.l D0 bmi ERRTOS addq #4,SP move.l (SP)+,A0 GA49:move #$FFFF,(A0) lea CANAUX1,A1 cmp.l A0,A1 beq.s GA490 subq.b #1,(A0) addq #2,A1 cmp.l A0,A1 beq.s GA490 subq #1,(A0) addq #2,A1 cmp.l A0,A1 beq.s GA490 clr (A0) GA490:rts YINP:bsr DECCRDF bne.s GA56 bsr XCANAL2 moveq #1,D3 bsr.s RDCAN moveq #0,D0 move.b -(A6),D0 bra LB305 GA56:bsr.s PERIPH moveq #2,D2 bra.s GA561 PERIPH:bsr WINDEX cmpi #6,D3 bcc ERRRGR rts YINPQ:bsr.s PERIPH moveq #1,D2 moveq #4,D1 bra.s GA560 YOUTQ:bsr.s PERIPH moveq #8,D2 moveq #5,D1 GA560:cmp D1,D3 bcc ERRRGR GA561:move D3,-(SP) move D2,-(SP) trap #13 addq #4,SP bra LB303 RDCAN1:add.l D3,A6 bsr VERA6R1 sub.l D3,A6 RDCAN:movem.l D3/A0,-(SP) bsr XCANAL1 move D5,D1 addq #3,D1 beq ERRFI4 moveq #2,D0 subq #2,D1 beq.s GA58 moveq #0,D0 addq #1,D1 bne.s GA59 GA58:move D0,D5 GA59:bpl.s GA61 move (A1)+,D4 bsr LB95C add.l (A1),A0 sub.l (A1),D3 ble.s ERRFI8 move.l (SP)+,D1 cmp.l D3,D1 bhi.s ERRFI8 add.l D1,(A1) GA590:move.b (A0)+,(A6)+ subq.l #1,D1 bne.s GA590 GA60:move.l (SP)+,A0 rts ERRFI8:moveq #103,D0 trap #15 GA61:cmpi #6,D5 bcc.s GA64 GA62:move D5,-(SP) move #2,-(SP) trap #13 addq #4,SP move.b D0,(A6)+ subq.l #1,D3 bne.s GA62 addq #4,SP bra.s GA60 GA64:move.l A6,-(SP) move.l D3,-(SP) move D5,-(SP) move #$3F,-(SP) trap #1 tst.l D0 bmi ERRTOS cmp.l D0,D3 bne.s ERRFI8 lea 12(SP),SP add.l (SP)+,A6 bra.s GA60 YBGET:bsr XCANAL2A bsr WADRV move.l D3,-(SP) bsr WVGA move.l (SP)+,A1 tst.l D3 ble ERRRGR move.l A6,-(SP) move.l A1,A6 bsr RDCAN move.l (SP)+,A6 rts YINPUTD:bsr WADR move.l D3,-(SP) ble ERRRGR lea CANAUX2,A0 bsr DECCRVR bne.s GA68 bsr XCANAL2A GA68:addq #6,A6 move.l (SP)+,D3 move.l A6,-(SP) bsr RDCAN1 move.l (SP)+,A2 bra LC12 XLOC:bsr GA74 bge.s GA71 move.l 2(A1),D0 rts GA71:moveq #1,D2 GA710:moveq #0,D3 GA72:move D2,-(SP) move D5,-(SP) move.l D3,-(SP) move #$42,-(SP) trap #1 tst.l D0 bmi ERRTOS lea 10(SP),SP rts YLOC:bsr XCANAL3 bsr.s XLOC bra LB305 YLOF:bsr.s XLOF1 bra LB305 YEOF:bsr.s XLOF1 cmp.l D0,D3 bcc PUSHNM PUSHNZR:bra PUSHNZ XLOF1:bsr XCANAL3 XLOF:bsr GA74 bge.s GA76 move (A1)+,D4 bsr LB95C move.l D3,D0 move.l (A1)+,D3 rts GA76:bsr.s GA71 move.l D0,-(SP) moveq #2,D2 bsr.s GA710 move.l (SP)+,D3 move.l D0,-(SP) bsr.s XSEEK move.l (SP)+,D0 rts YRSEEK:bsr.s GA80 neg.l D3 GA81:moveq #2,D2 bra.s XSEEKU YRELSEEK:bsr.s GA80 moveq #1,D2 bra.s XSEEKU GA80:bsr XCANAL3 WVGAZ:moveq #0,D3 bra WVGAD YSEEK:bsr.s GA80 tst.l D3 bmi.s GA81 XSEEK:moveq #0,D2 XSEEKU:bsr GA74 bge GA72 move (A1)+,D4 move.l D3,D1 bsr LB95C move.l (A1),D0 subq #1,D2 beq.s GA77 bmi.s GA78 add.l D3,D1 bra.s GA78 GA77:add.l D0,D1 GA78:cmp.l D1,D3 bcs ERRRGR move.l D1,(A1) rts YBPUT:bsr XCANAL4A bsr WADRV move.l D3,-(SP) bsr WVGA move.l (SP)+,A3 tst.l D3 ble ERRRGR PTCAN:move.l A0,-(SP) bsr XCANAL1 move D5,D0 addq #1,D0 beq.s GA85 addq #1,D0 bne.s GA90 bsr VERPRN1R bra.s GA89 GA84:move.b (A3)+,D0 jsr X12E GA85:subq.l #1,D3 bpl.s GA84 GA86:move.l (SP)+,A0 rts GA88:move.b (A3)+,D0 jsr XP12C GA89:subq.l #1,D3 bpl.s GA88 bra.s GA86 GA90:addq #1,D0 beq.s GA86 bpl.s GA92 move.l D3,D1 move (A1)+,D4 bsr LB95C move.l (A1),D0 sub.l D0,D3 bmi.s ERRFI9 add.l D1,(A1) add.l D0,A0 move.l D1,D0 cmp.l D0,D3 bge.s GA901 move.l D3,D0 GA901:sub.l D0,D3 sub.l D0,D1 bra.s GA903 GA902:move.b (A3)+,(A0)+ GA903:subq.l #1,D0 bpl.s GA902 tst.l D1 beq.s GA86 move -(A1),-(SP) move.l A3,A2 move.l D1,D3 bsr MG76 move (SP)+,D2 bsr YCADD1 bra.s GA86 ERRFI9:moveq #104,D0 trap #15 GA92:cmpi #6,D5 bcc.s GA95 bra.s GA94 GA93:moveq #0,D0 move.b (A3)+,D0 move D0,-(SP) move D5,-(SP) move #3,-(SP) trap #13 addq #6,SP GA94:subq.l #1,D3 bpl.s GA93 bra.s GA86 GA95:move.l A3,-(SP) move.l D3,-(SP) move D5,-(SP) move #$40,-(SP) trap #1 tst.l D0 bmi ERRTOS cmp.l D0,D3 bne.s ERRNYR lea 12(SP),SP bra GA86 ERRNYR:moveq #56,D0 trap #15 PTCAN13:moveq #13,D0 bsr.s PTCANB moveq #10,D0 PTCANB:movem.l D0-D6/A1-A4,-(SP) lea GA97,A3 move.b D0,(A3) moveq #1,D3 bsr PTCAN movem.l (SP)+,D0-D6/A1-A4 rts YOUT:bsr DECCRDF bne.s GAB10 bsr XCANAL4 GA96:bsr DECCRVR bne.s GA98 bsr WADR move D3,D0 bsr.s PTCANB bra.s GA96 GA98:rts GAB10:bsr PERIPH move D3,D5 GAB11:bsr DECCRVR bne.s GA98 bsr WADR andi #$FF,D3 move D3,-(SP) move D5,-(SP) move #3,-(SP) trap #13 addq #6,SP bra.s GAB11 RDCANA:movem.l D5/D6/A1/A2,-(SP) moveq #1,D3 bsr RDCAN moveq #0,D0 move.b -(A6),D0 movem.l (SP)+,D5/D6/A1/A2 rts RDCANB:bsr.s RDCANA beq.s GAB34 cmpi #13,D0 bne.s GAB34 bsr.s RDCANA cmpi #10,D0 bne.s ERREOL clr D0 GAB34:rts ERREOL:moveq #106,D0 trap #15 WRCANB:move.b D0,(A1)+ cmp.l A2,A1 ble.s GAB34 ERRLTL:moveq #105,D0 trap #15 RDCAN2:moveq #",",D6 bra.s GAB30 RDCAN3:moveq #0,D6 GAB30:lea TBUF,A1 move.l A1,-(SP) clr D5 lea TBUFLC(A1),A2 bra.s GAB32 GAB31:bsr.s WRCANB GAB32:bsr.s RDCANB beq.s GAB38 GAB35:cmpi #34,D0 bne.s GAB37 GAB36:bsr.s WRCANB bsr.s RDCANB beq.s GAB38 cmpi #34,D0 bne.s GAB36 GAB37:addq #1,D5 cmpi #"(",D0 beq.s GAB31 subq #2,D5 cmpi #")",D0 beq.s GAB31 addq #1,D5 bne.s GAB31 cmp D6,D0 bne.s GAB31 GAB38:clr.b (A1) move.l (SP)+,D3 rts YINPUT:bsr XCANINP bne.s GAB41 bra YINPT GAB40:bsr.s DECCRVSR bne.s GAB45 GAB41:move.l A0,-(SP) bsr WNOMV bne ERRIS7 move.l (SP),A0 movem.l D0/D2/A3/A5,-(SP) bsr.s RDCAN2 movem.l (SP)+,D0/D2/A3 move.l D3,A5 bsr WREAD2 bsr NEXTA5R tst.b D0 beq.s GAB43 lea -1(A5),A1 bsr IGNINP GAB43:move.l (SP)+,A5 move.l (SP)+,A0 bra.s GAB40 GAB45:rts DECCRVSR:jmp DECCRVS YLINE:bsr DECXINPUT bne YLINE1 bsr XCANINP bne.s GAB51 bra.s GAB55 GAB50:bsr.s DECCRVSR bne.s GAB45 GAB51:move.l A0,-(SP) bsr WNOMC move.l (SP),A0 move D2,-(SP) bsr RDCAN3 bsr YPEKCZ1 move (SP)+,D0 bsr WASGN2 move.l (SP)+,A0 bra.s GAB50 GAB55:bsr.s XINTXT bra.s GAB57 GAB56:bsr.s DECCRVSR bne.s GAB45 GAB57:bsr WNOMC move.l A5,-(SP) move D2,-(SP) bsr.s XINRDC bsr YPEKCZ1 move (SP)+,D0 move.l (SP)+,A5 bsr WASGN2 bra.s GAB56 XINTXT:lea TINPTF(PC),A2 clr (A2)+ move.l #MA451,(A2) bsr.s DECCRGR bne.s MA42 lea T3FDB6,A0 move.l A0,(A2) lea 98(A0),A1 MA40:move.b (A5)+,D0 beq.s ERRIS7 cmp.b D1,D0 bne.s MA402 cmp.b (A5)+,D0 beq.s MA402 subq #1,A5 MA41:clr.b (A0) bsr DECCRVSR MA42:rts MA402:move.b D0,(A0)+ cmp.l A1,A0 blt.s MA40 bra ERRLTL ERRIS7:moveq #34,D0 trap #15 XINRDC:move.l TINPTP(PC),A0 bsr HIDECMR bsr.s X9R bra.s GER48 X9R:jmp X9 GER47:jsr X12E GER48:move.b (A0)+,D0 bne.s GER47 clr.b TESCV bsr.s X9R move.l A6,-(SP) jsr X4A move.l A6,D3 move.l (SP)+,A6 rts DECCRGR:jmp DECCRG YINPT:bsr.s XINTXT MA45:bsr WNOMV bne.s ERRIS7 movem.l D0/D2/A3/A5,-(SP) lea TINPT(PC),A0 move.l (A0)+,A5 tst (A0)+ bne.s MA450 bsr.s XINRDC move.l D3,A5 MA450:movem.l (SP)+,D0/D2/A3 bsr.s WREAD2 bsr DECCRVR lea TINPT(PC),A1 beq.s MA452 move.l A5,(A1)+ clr (A1) bsr.s MA454 bra.s MA453 MA452:move.l A5,(A1)+ st (A1) MA453:move.l (SP)+,A5 bsr DECCRVSR beq.s MA45 MA454:move.l TINPT(PC),A1 move.b (A1),D0 beq.s MA455 IGNINP:lea MA456(PC),A0 bsr XN15R move.l A1,A0 bsr X15NR MA455:rts WREAD2:andi #$F0,D0 cmpi #$40,D0 bne WASGN1 move D2,-(SP) bsr.s WCHABR2 bra LB64 WCHABR2:clr -(SP) bra.s MA457 WREAD1:andi #$F0,D0 cmpi #$40,D0 bne WASGN1 move D2,-(SP) bsr.s WCHABR bra LB64 VERA6R1:jmp VERA6 WCHABR:move #CARCOM,-(SP) MA457:bsr DECCRGR bne.s MA460 subq #1,A5 addq #2,SP bra WCHAS MA460:addq #6,A6 clr D2 move (SP)+,D1 move.l A6,A2 MA461:move.l A6,A1 MA46:bsr.s VERA6R1 move.b (A5),D0 beq.s MA47 MA462:cmpi.b #34,D0 bne.s MA464 MA463:bsr.s VERA6R1 move.b (A5)+,(A6)+ move.b (A5),D0 beq.s MA47 cmpi.b #34,D0 bne.s MA463 cmp.b 1(A5),D0 bne.s MA464 move.b (A5)+,(A6)+ bra.s MA463 MA464:addq #1,D2 cmpi.b #"(",D0 beq.s MA465 subq #2,D2 cmpi.b #")",D0 beq.s MA465 addq #1,D2 bne.s MA465 cmpi.b #",",D0 beq.s MA47 MA465:cmp.b D1,D0 beq.s MA47 move.b (A5)+,(A6)+ cmpi.b #32,D0 beq.s MA46 bra.s MA461 MA47:move.l A1,A6 bra.s GAG10 YWORDSD:addq #6,A6 move.l A6,A2 jsr XWORDS bra.s GAG10 YINKEYD:addq #6,A6 move.l A6,A2 bsr ESCAPERR jsr RD beq.s GAG10 move.b D0,(A6)+ bne.s GAG10 swap D0 move.b D0,(A6)+ GAG10:bra LC12 YWIDTH:bsr WINDEX move D3,(A0) rts YLET:bsr WNOMV bne ERRIS7 bra WASGN YSTRINGD:bsr WADR move.l D3,-(SP) bmi ERRRGR bsr DECCRVER bsr WTSTCH beq.s GAG12 bsr WINDEX cmpi #$100,D3 bcc ERRRGR move D3,D2 move.l (SP)+,D3 bra CPUSHN GAG12:bsr WCHAS addq #6,A6 move.l A6,A2 move.l (SP)+,D1 bra.s GAG17 GAG14:move.l A0,A1 move.l A6,A3 add.l D3,A6 bsr VERA6R1 GAG16:cmp.l A6,A3 bge.s GAG17 move.b (A1)+,(A3)+ bra.s GAG16 GAG17:subq.l #1,D1 bpl.s GAG14 bra GAP96 ERR107:moveq #107,D0 trap #15 YFIELD:bsr XCANAL6 move (A2),-(SP) GAG20:bsr DECCRVR beq.s GAG21 addq #2,SP rts GAG21:bsr WADR move.l D3,-(SP) ble.s ERR107 bsr DECXAS bne ERRIS7 moveq #$40,D3 bsr WNOM bne ERRIS7 andi #$F0,D0 cmpi #$40,D0 bne.s GAG23 move.l (SP),D3 move D2,-(SP) moveq #32,D2 bsr CPUSHN move (SP),D0 bsr WASGN2 moveq #-1,D2 move (SP)+,D2 move.l D2,A3 bra.s GAG25 GAG23:cmpi #$20,D0 bne ERRMT sub.l D3,D5 move D2,D0 move.l D5,D2 bsr NBIND add.l D2,D2 add.l D2,D2 addq.l #4,D2 cmp.l (SP),D2 blt ERRIXH GAG25:addq #6,A6 move.l A6,A2 move.l (SP),(A6)+ move.l A3,(A6)+ bsr LC12 move 4(SP),D2 bsr YCADD1 move.l (SP)+,D0 move (SP),D4 bsr LB95C sub.l D0,4(A0) bpl GAG20 ERR108:moveq #108,D0 trap #15 ERR109:moveq #109,D0 trap #15 YGET:bsr DECCRDF bne ERRIS7 clr -(SP) bra.s GAG30 YPUT:bsr DECCRDF bne ERRIS7 st -(SP) GAG30:bsr XCANAL6 move (A2)+,D4 move D4,-(SP) move.l A0,-(SP) move.l (A2),D3 addq.l #1,D3 bsr WVGAD move.l D3,(A2) subq.l #1,D3 bmi.s ERR109 move.l D3,-(SP) bsr LB95C move.l (SP)+,D3 move.l (A0)+,D1 bsr LMUL13 tst.l (A0)+ bne.s ERR108 bsr XSEEK moveq #8,D0 move.l D0,-(SP) GAG32:movem.l (SP)+,D0/A1 move (SP),D4 bsr LB95C add.l D0,A0 exg A1,A0 addq.l #8,D0 cmp.l D3,D0 ble.s GAG33 addq #4,SP rts GAG33:movem.l (A1)+,D3/A3 movem.l D0/A0,-(SP) tst 10(SP) beq.s GAG36 move.l A3,D4 bmi.s GAG35 GAG34:bsr PTCAN bra.s GAG32 GAG35:movem.l D3/A0,-(SP) bsr LB95C cmp.l (SP)+,D3 bne ERR107 move.l A0,A3 move.l (SP)+,A0 bra.s GAG34 GAG36:move.l A3,D4 bmi.s GAG38 move.l A6,-(SP) move.l A3,A6 bsr RDCAN move.l (SP)+,A6 bra.s GAG32 GAG38:move D4,-(SP) addq #6,A6 move.l A6,-(SP) bsr RDCAN1 move.l (SP)+,A2 bsr LC12 move (SP)+,D0 bsr WASGN2 bra.s GAG32 GAG40:bsr WNOMC move D2,-(SP) bsr.s GAG42 move (SP)+,D4 bsr LB95C GAG400:cmp.l D3,D1 ble.s GAG41 move.l D3,D1 GAG41:sub.l D1,D3 rts GAG42:bsr DECCREE bsr WCHAIN move.l A0,A2 move.l D3,D1 rts GAG43:move.l A6,-(SP) move.l A0,A6 bsr ILB76 move.l (SP)+,A6 rts GAG44:moveq #32,D0 bra.s GAG46 GAG45:move.b D0,(A0)+ GAG46:subq.l #1,D3 bpl.s GAG45 rts YLSET:bsr.s GAG40 bsr.s GAG43 bsr.s GAG44 bra.s GAG48 YRSET:bsr.s GAG40 bsr.s GAG44 GAG47:bsr.s GAG43 GAG48:bra POPN YMIDDC:bsr DECCRPGI bsr WNOMC bsr WADRV subq.l #1,D3 bmi ERRRGR movem.l D2/D3,-(SP) bsr WVGAM bsr DECCRPDE move.l D3,-(SP) bsr.s GAG42 move.l (SP)+,D3 cmp.l D3,D1 bcs.s GAG49 move.l D3,D1 GAG49:move.l (SP)+,D4 bsr LB95C add.l (SP),A0 sub.l (SP)+,D3 bmi.s GAG48 bsr.s GAG400 bra.s GAG47 YCHDRF:move #$19,-(SP) trap #1 addq #2,SP addq #1,D0 bra.s GAG61 YMOUSE:bsr.s VDI33 movem D0-D2,-(SP) moveq #2,D3 bra.s GAI11 GAI10:bsr DECCRVER GAI11:move (SP)+,D0 move D3,-(SP) bsr.s GAG61 bsr WPILEASG move (SP)+,D3 dbra D3,GAI10 rts VDI33:move.l VDIPB+4(PC),A0;INTIN move #1,(A0)+ clr (A0) moveq #33,D3 bsr.s VDICR AESMOUSE:move.l AESPB+8(PC),A0;AINTIN move #32,(A0)+ moveq #14,D0 GAG60:clr (A0)+ dbra D0,GAG60 lea -16(SP),SP move.l AESPB+16(PC),A0;ADDRIN move.l SP,(A0) moveq #25,D3 bsr AESCR lea 16(SP),SP move.l AESPB+12(PC),A0;AINTOUT addq #2,A0 movem (A0),D0/D1/D2 rts YMOUSEX:bsr.s AESMOUSE GAG61:bra LB303 YMOUSEY:bsr.s AESMOUSE move D1,D0 bra.s GAG61 YMOUSEK:bsr.s AESMOUSE move D2,D0 bra.s GAG61 YMOUSEXC:bsr.s VDI33 bsr WCINDEX move D3,D0 GAG62:move.l VDIPB+8(PC),A0;PTSIN movem D0/D1,(A0) moveq #28,D3 VDICM:bsr HIDECMR bsr.s VDICR SHOWCMR:jmp SHOWCM YMSIZE:addq #6,A3 move (A3),-(SP) bsr WINDEX move.l VDIPB+8(PC),A0;PTSIN move.l D3,(A0) move (SP)+,D3 bra OVDIC VDICR:jmp VDIC YMOUSEYC:bsr VDI33 GAG63:bsr WCINDEX move D3,D1 bra.s GAG62 YSETMOUSE:bsr VDI33 bsr WCINDEX bsr DECCRVER move D3,D0 bra.s GAG63 YDEFMOUSE:bsr WTSTCH beq.s GAG64 bsr CPUSHN0 bsr WINDEX andi #7,D3 bra.s GAG66 GAG64:bsr WCHAIN moveq #74,D0 cmp.l D3,D0 bne.s ERR111 move.l AESPB+16(PC),A1;ADDRIN move.l A0,(A1) move #255,D3 GAG66:move.l AESPB+8(PC),A0;AINTIN move D3,(A0) move D3,DEFMOUSE moveq #78,D3 bsr.s AESCR bra POPN ERR111:moveq #111,D0 trap #15 AESCR:jmp AESC XMKILL:lea GBRAN,A0 moveq #6,D0 GAG80:clr.l (A0)+ dbra D0,GAG80 clr GEVNT XMKILLA:lea GARBRE,A0 move.l (A0),D2 beq.s GAG83 clr.l (A0)+ clr (A0)+ move.l D2,A0 cmpi #$7F8F,-(A0) bne.s GAG83 moveq #0,D1 GAG82:move.l AESPB+8(PC),A0;AINTIN move D1,(A0) move.l AESPB+16(PC),A0;ADDRIN move.l D2,(A0) moveq #30,D3 bsr.s AESCR GAG83:rts GAH32:subq #1,D5 bmi ERRIXH bsr LB95C subq #1,D4 move.l A6,A1 add.l D3,A6 bsr VERA6R1 move.l A1,A6 bra.s GAH34 GAH33:move.b (A0)+,(A6)+ beq.s GAH35 GAH34:dbra D3,GAH33 clr.b (A6)+ GAH35:move.l A6,D0 subq.l #1,D0 sub.l A1,D0 rts ERRMEN:moveq #112,D0 trap #15 ERR113:moveq #113,D0 trap #15 XMCOC:bsr WNOMVR cmpi #$40,D0 bne ERRIS7 move.l A6,-(SP) sub D3,D5 move D2,D4 GAH30:bsr.s GAH32 bne.s GAH30 bsr.s GAH32 bne.s GAH30 move.l (SP),A0 bsr.s XMCONS move.l (SP)+,A6 rts XMCONS:movem.l A0/A5/A6,-(SP) bsr XMKILLA moveq #4,D0 move.l AESPB+8(PC),A0;AINTIN move.l D0,(A0) moveq #104,D3 bsr AESCR move.l (SP),A0 moveq #0,D6 moveq #12,D5 tst.b (A0) beq.s ERRMEN GAG87:tst.b (A0)+ beq.s GAG89 addq #1,D5 GAG88:tst.b (A0)+ bne.s GAG88 bra.s GAG87 GAG89:addq #1,D6 tst.b (A0) bne.s GAG87 cmpi #8,D6 bgt.s ERRMEN move.l D6,D0 add.l D5,D0 add.l D0,D0 addq.l #8,D0 add.l A0,D0 sub.l (SP),D0 move D5,D1 mulu #24,D1 add.l D1,D0 cmp.l TAMPMENU(PC),D0 bgt.s ERR113 move.l TMENU(PC),A4 move.l A4,A5 lea (A4,D5.L),A6 move D5,D0 subq #1,D0 moveq #-1,D2 GAG91:move D2,(A4)+ dbra D0,GAG91 move #$7F8F,(A4)+ move D5,GARBRN move.l A4,A3 add.l D1,A3 move.l A4,A0 move.l A4,-(SP) move D5,D4 subq #1,D4 moveq #0,D0 moveq #$1C,D1 moveq #$10,D3 GAG93:addq #1,D0 move D0,(A4)+ move.l D2,(A4)+ move D1,(A4)+ clr.l (A4)+ clr.l (A4)+ clr.l (A4)+ move.l D3,(A4)+ dbra D4,GAG93 move #$20,-16(A4) move D2,(A0)+ addq #2,(A0)+ move #$B,(A0)+ move.l A0,-(SP) move.l AESPB+12(PC),A0;AINTOUT addq #2,A0 movem (A0),D0-D2 move.l (SP)+,A0 move #$13,GMENHX moveq #$12,D4 cmpi #2,RESOL bcc.s GAG95 add D1,D1 addq #3,GMENHX moveq #$14,D4 GAG95:subq #3,(A0)+ lea 12(A0),A0 move D2,(A0)+ move #$190,(A0)+ move #$B,(A0)+ addq #3,(A0)+ addq #3,(A0)+ subq #8,(A0)+ addq #6,A0 move #$1100,(A0)+ addq #4,A0 move D2,(A0)+ move D4,(A0)+ lea 9*24(A0),A2 moveq #$C,D4 move.l D4,(A2)+ move.l A2,-(SP) subq.l #3,(A2)+ addq #8,A2 move D0,(A2)+ move D1,(A2)+ move D2,(A2)+ move #$12C,(A2)+ subq #2,(A0)+ addq #4,(A0)+ addq #3,(A0) add D6,(A0)+ subq #3,(A0)+ addq #8,A0 move D3,(A0)+ addq #2,A0 move.l A0,-(SP) addq #2,A0 move GMENHX,(A0)+ moveq #0,D6 move.l 12(SP),A4 moveq #0,D4 GAG97:moveq #32,D0 move (A0)+,D1 bsr XMTAM addq #4,A0 move D0,(A0)+ addq #4,A0 move.l A3,(A0) move.b D0,(A3)+ moveq #8,D1 GAG98:move.b (A4)+,(A3)+ dbeq D1,GAG98 move.b D0,-1(A3) move.l A3,D1 sub.l (A0)+,D1 clr.b (A3)+ subq #1,A4 GAH10:tst.b (A4)+ bne.s GAH10 move D4,(A0)+ move D4,D3 asl #3,D1 move.l D1,(A0)+ add D1,D4 move GMENHX,(A0)+ move.l A2,-(SP) move (A2)+,(A2)+ subq.l #8,(A2)+ addq #4,A2 move.l #$FF1100,(A2)+ addi #16,D3 move D3,(A2)+ addq #6,A2 moveq #0,D2 moveq #0,D3 tst.b (A4) beq ERRMEN GAH12:tst.b (A4)+ beq.s GAH20 move (A2)+,D1 bsr.s XMTAM addq #8,A2 cmpi.b #"-",-(A4) bne.s GAH14 addq #8,(A2) GAH14:addq #2,A2 move.l A3,(A2) GAH16:move.b (A4)+,(A3)+ bne.s GAH16 move.l A3,D0 subq.l #1,D0 sub.l (A2)+,D0 cmp.l D0,D2 bcc.s GAH18 move.l D0,D2 GAH18:move.l D3,(A2)+ addi #16,D3 addq #4,A2 bra.s GAH12 XMTAM:subq #1,D1 move.b D1,(A5,D6.L) move.b D6,(A6,D1.W) addq #1,D6 rts GAH20:asl #3,D2 addq #1,D6 move.l (SP),A1 move -24(A2),D0 move D0,(A1)+ move (A1)+,D1 subq #1,D0 move D0,(A1)+ lea 14(A1),A1 move D2,(A1)+ move D3,(A1)+ GAH22:cmp.l A2,A1 bge.s GAH24 lea 20(A1),A1 move D2,(A1)+ addq #2,A1 bra.s GAH22 GAH24:subq #1,D1 move D1,-24(A2) move.l (SP)+,A1 tst.b (A4) bne GAG97 move #$B,(A1) move.l (SP)+,A1 move D4,(A1) cmp -24(A1),D4 bge ERRMEN move.l (SP)+,A1 move D1,(A1) move #2,-24(A0) movem.l (SP)+,A0/A1/A5/A6 move.l A0,GARBRE move.l A0,D2 cmpi #2,RESOL bcc.s GAH27 GAH26:lea 18(A0),A0 move (A0),D0 asr D0 move D0,(A0)+ addq #2,A0 move (A0),D0 asr D0 move D0,(A0)+ cmp.l A2,A0 blt.s GAH26 GAH27:moveq #1,D1 bra GAG82 YMENUC:bsr DECXKILL beq XMKILL bsr WTSTCH beq XMCOC bsr DECXOFF bne.s GAH44 move.l GARBRE,D0 beq.s GAH42 move.l D0,A0 lea 78(A0),A0 moveq #3,D5 GAH38:cmpi #32,(A0)+ bne.s GAH42 move.l (A0)+,D1 moveq #1,D6 and D6,D1 bne.s GAH40 addq #1,D5 lea 18(A0),A0 bra.s GAH38 GAH40:moveq #33,D3 GAH41:move.l AESPB+8(PC),A0;AINTIN movem D5/D6,(A0) move.l AESPB+16(PC),A0;ADDRIN move.l GARBRE,(A0) bne AESCR GAH42:rts GAH44:bsr WINDEX move D3,-(SP) bsr WINDEXV move (SP)+,D2 cmp GARBRN,D2 bcc.s GAH42 move.l TMENU(PC),A0 move.b (A0,D2.W),D5 ext D5 cmpi #-1,D5 beq.s GAH42 move D3,D6 moveq #1,D0 asr D3 and D0,D6 and D0,D3 addi #31,D3 bra.s GAH41 YMENU:bsr DECCRPGI bsr GAH720 bsr DECCRPDE addq #1,D3 bne.s GAH46 move.l GARBRE,D0 bra.s GAH50 GAH46:addq #1,D3 bne.s GAH51 move.l A0,D0 GAH50:bra LB305R YBASEPAGE:move.l BASEPAGE(PC),D0 bra.s GAH50 GAH51:subq #2,D3 add D3,D3 moveq #32,D4 move -2(A0,D3.W),D0 bra GAH82 YONMENU:bsr DECXMENU bne YONX moveq #0,D3 bsr DECXKEY beq.s GAH52 bsr DECXBUTTON bne.s GAH60 lea GEVNT+2,A0 bsr.s GAH64 bsr.s GAH62 moveq #1,D3 GAH52:move D3,D0 bpl.s GAH53 moveq #4,D0 GAH53:lea GEVNT+1,A0 bset D0,(A0) asl.l #2,D3 move.l A5,GBRAN-GEVNT+3(A0,D3.L) bra YPAGE GAH60:bsr DECXMOUSE bne.s GAH65 lea GEVNT+8,A0 bsr WINDEX andi #1,D3 move D3,-(SP) mulu #10,D3 add D3,A0 bsr.s GAH63 bsr.s GAH62 bsr.s GAH62 moveq #2,D3 add (SP)+,D3 bra.s GAH52 GAH61:bsr GAI740 GAH62:bsr GAH63 GAH63:bsr DECCRVER GAH64:bsr WCINDEX move D3,(A0)+ rts YORIGIN:lea ORIGINX(PC),A0 bsr.s GAH64 lea ORIGINY(PC),A0 bra.s GAH63 GAH65:moveq #4,D3 bsr DECXMESSAGE beq.s GAH52 bsr DECXTIMER bne.s GAH67 bsr WCADR bsr.s DIV5 move.l D0,GAH680 moveq #5,D3 bra.s GAH52 DIV5:moveq #0,D0 moveq #7,D1 GAH66:asr.l #3,D3 add.l D3,D0 asr.l D3 add.l D3,D0 dbra D1,GAH66 rts GAH680:dc.l 0 ESCAPERR:jmp ESCAPE GAH67:moveq #-1,D3 bsr DECTMNR bne GAH52 jsr SHOWM move.l $4BA.W,D3 btst #5,GEVNT+1 beq.s GAH68 add.l GAH680(PC),D3 GAH68:move.l D3,-(SP) bsr.s ESCAPERR move.l AESPB+16(PC),A0;ADDRIN move.l #GEVNTR+2,(A0) lea GEVNT,A0 ori #$20,(A0) move.l AESPB+8(PC),A1;AINTIN moveq #7,D0 GAH69:move.l (A0)+,(A1)+ dbra D0,GAH69 moveq #25,D3 bsr AESCR lea GEVNTR+18,A1 move.l AESPB+12(PC),A0;AINTOUT move (A0),D0 moveq #6,D1 move.l (SP)+,D3 cmpi #$20,D0 bne.s GAH71 cmp.l $4BA.W,D3 bcc.s GAH68 GAH71:move (A0)+,(A1)+ dbra D1,GAH71 moveq #4,D3 btst D3,D0 beq.s GAH73 bsr.s GAH72 cmpi #10,(A0) bne.s GAH75 moveq #-1,D3 add 8(A0),D4 move.b (A1,D4.W),D0 ext D0 move D0,-(A0) bra.s GAH75 GAH720:bsr WINDEX GAH72:lea GEVNTR+2,A0 move.l TMENU(PC),A1 move GARBRN-GEVNTR-2(A0),D4 rts GAH73:lea GAH78(PC),A2 GAH74:move.b (A2)+,D3 bmi.s GAH77 btst D3,D0 beq.s GAH74 GAH75:lea GBRAN+4,A0 asl #2,D3 move.l (A0,D3.W),D3 beq.s GAH77 bsr YPEKCZ1 bsr LB920 GAH76:addq #4,SP bra YXQT2 GAH77:rts GAH78:dc.b 0,2,3,1,5,-1 YONX:bsr WADR tst.l D3 ble YPAGE GAH94:bsr DECTMNR beq.s GAH77 move.l D3,-(SP) bsr WCHABR move.l (SP)+,D3 subq.l #1,D3 beq.s GAH96 bsr POPN bsr DECCRVR bra.s GAH94 GAH96:bsr LB93 bra.s GAH76 YMENUID:bsr.s GAH720 add D4,A1 bra.s GAH80 YOBID:bsr.s GAH720 GAH80:move.b (A1,D3.W),D0 ext D0 GAH82:cmp D4,D3 bcc ERRRGR ext.l D0 bra LB305R YMESSAGE:bsr WCHASZ jsr ALERT1 bra POPN YSUREQ:bsr XCHAZE jsr ALERT bra LB606 YALERT:bsr WINDEX move D3,-(SP) bsr WCHASZV bsr WINDEXV andi #3,D3 move D3,-(SP) bsr WCHASZV jsr XILOC move.l A0,A2 move.l A1,A0 movem (SP)+,D0/D1 jsr GEV83 bsr.s LB303R bsr WPILEASGV bra POP2N GAI13:dc.b "[0][" GAI14:dc.b "]",0 YVH0:move UAES0(PC),D0 bra.s LB303R YLPOS:bsr.s DUMPAR bsr XLPOS LB303R:jmp LB303 YPOS:bsr.s DUMPAR move TCURSX(PC),D0 bra.s LB303R YCSRLIN:bsr.s DUMPAR move TCURSY(PC),D0 bra.s LB303R XRNLOG:lea WRNLOG(PC),A0 GIB32:addq #8,A6 move.l A5,-(SP) jsr XINTE2 bra.s GIB34 XRNPI:lea WRNPI(PC),A0 bra.s GIB32 YRND:bsr.s DUMPAR move.l A5,-(SP) addq #8,A6 jsr XFLRND GIB34:move #-1,-(A2) move.l (SP)+,A5 bra LC12 DUMPAR:cmpi.b #"(",(A5) bne.s GAI44 addq #1,A5 bsr WCHAIN bsr DECCRPDE jmp POPN(PC) GAI46:dc.b 46 GAI48:dc.b 108 MOORE:lea TMOORE,A0 moveq #0,D0 moveq #0,D1 move.b GAI46(PC),D1 moveq #0,D2 move.b GAI48(PC),D2 move (A0,D2.W),D0 add D1,A0 add (A0),D0 move D0,(A0) subq #2,D1 bpl.s GAI50 moveq #108,D1 GAI50:subq #2,D2 bpl.s GAI52 GAI51:moveq #108,D2 moveq #46,D1 GAI52:move.b D2,GAI48 move.b D1,GAI46 GAI44:rts IMOORE0:lea $4BA.W,A0 moveq #4,D0 bra.s GAI53 IMOOREA:cmpi #$4000,(A0) beq.s IMOORE0 bsr SLNG0R GAI53:lea TMOORE,A1 moveq #7,D3 move.b D3,109(A1) bsr.s GAI60 GAI54:move.l A1,A2 moveq #108,D1 GAI55:move.b (A2),D2 bsr.s GAI58 move.b D2,(A2)+ dbra D1,GAI55 dbra D3,GAI54 bsr.s GAI51 move #500,D4 GAI56:bsr.s MOORE dbra D4,GAI56 rts GAI57:moveq #8,D5 move.b (A3)+,D6 GAI58:dbra D5,GAI61 GAI59:dbra D4,GAI57 GAI60:move D0,D4 move.l A0,A3 bra.s GAI59 GAI61:add.b D6,D6 addx D2,D2 rts DECTMNR:jmp DECTMN YRANDOMIZE:bsr.s DECTMNR beq.s IMOORE0 bsr WREEL bsr.s IMOOREA jmp POPN YPAUSE:bsr WCADR bsr DIV5 add.l $4BA.W,D0 GAI70:bsr ESCAPERR cmp.l $4BA.W,D0 bcc.s GAI70 rts PREPMT4:moveq #4,D0 PREPMT:move.l (SP)+,A1 move D3,-(SP) move D0,D3 GAI72:clr -(SP) dbra D3,GAI72 move.l SP,A0 move D0,(A0)+ jmp (A1) DECCRVER:jmp DECCRVE DECCRVR:jmp DECCRV GAI74:bsr WCINDEX add ORIGINX(PC),D3 move D3,(A0)+ move D3,D2 rts GAI741:bsr.s DECCRVER GAI740:bsr.s GAI74 GAI75:bsr.s DECCRVER GAI76:bsr WCINDEX add ORIGINY(PC),D3 move D3,(A0)+ rts GAI77:bsr.s GAI740 lea OLDXY(PC),A1 move D2,(A1)+ move D3,(A1)+ rts YCIRCLE:moveq #8,D0 moveq #-2,D3 bsr.s PREPMT bsr.s GAI740 addq #8,A0 bsr GAH63 bra.s GAI79 YPCIRCLE:moveq #8,D0 moveq #-3,D3 bsr.s PREPMT bsr.s GAI740 addq #8,A0 bsr GAH63 bsr DECTMNR bne.s GAI79 subq #1,18(SP) clr.l -(A0) move D3,-(A0) bra.s VDIG YELLIPSE:moveq #-6,D3 bsr.s PREPMT4 bsr GAH61 GAI79:bsr.s PREPANG bra.s VDIG YPELLIPSE:moveq #-7,D3 bsr PREPMT4 bsr GAH61 bsr DECTMNR bne.s GAI79 addq #2,10(SP) VDIG:move (SP)+,D0 move.l VDIPB+8(PC),A1;PTSIN subq #1,D0 GAI80:move (SP)+,(A1)+ dbra D0,GAI80 move (SP)+,D3 bsr HIDECMR bsr OVDIC bra SHOWCMR PREPANG:move.l #3600,-(SP) bsr DECCRVR bne.s GAI78 move.l SP,A0 bsr GAH64 bsr GAH63 GAI78:move.l VDIPB+4(PC),A0;INTIN move.l (SP)+,(A0) rts YBOX:moveq #10,D0 bsr PREPMT bsr GAI740 move.l D3,(A0)+ bsr GAI741 move.l SP,A1 move.l (A1)+,D0 move D0,(A0)+ move D3,(A0)+ move D0,(A0)+ move (A1)+,(A0)+ move D2,(A1) VDI6:move (SP)+,D0 asr D0 move.l VDIPB(PC),A2;CONTRL move #6,(A2)+ move D0,(A2)+ move.l VDIPB+8(PC),A1;PTSIN subq #1,D0 GAI82:move.l (SP)+,(A1)+ dbra D0,GAI82 addq #2,SP GAJ45:clr.l (A2)+ clr.l (A2)+ move UAES(PC),(A2) bsr HIDECMR bsr VDI bra SHOWCMR YPSET:pea GAI84(PC) bsr PREPMT4 bsr GAI77 move D2,(A0)+ move D3,(A0)+ bra.s VDI6 GAI84:bsr DECCRVR beq.s YPSET GAI86:rts DECTOV:bsr DECCRVR beq.s GAI86 bra DECXTO GAI92:bsr DECTMNR beq.s GAI86 YLINE1:pea GAI92(PC) bsr PREPMT4 bsr.s DECTOV beq.s GAI88 bsr GAI77 bsr.s DECTOV bne ERRIS7 bra.s GAI90 OLDXY:dc.l 0 GAI88:move.l OLDXY(PC),(A0)+ GAI90:bsr GAI77 bra.s VDI6 GAI94:bsr DECCRVR bne.s GAI86 YMARK:pea GAI94(PC) moveq #7,D3 moveq #2,D0 bsr PREPMT bsr GAI740 bra VDIG YGDOSQ:moveq #-2,D0 trap #2 addq #2,D0 beq PUSHNZR bra PUSHNMR YPOLYFILL:move (A3),-(SP) bsr WTSRC moveq #64,D5 cmp.l D5,D1 bhi ERRLOC1 move D1,-(SP) pea GAJ41(PC) movem.l D0/D2/D3/A3,-(SP) move.l D1,-(SP) pea GAJ39(PC) bsr WTDES movem.l D0/D2/D3/A3,-(SP) move.l VDIPB+8(PC),A3;PTSIN addq #2,A3 GAJ37:moveq #2,D0 moveq #0,D2 moveq #1,D3 bra GAJ35 GAJ39:move.l (SP)+,D1 move.l VDIPB+8(PC),A3;PTSIN bra.s GAJ37 GAJ41:move (SP),D1 move ORIGINX(PC),D2 move ORIGINY(PC),D3 move.l VDIPB+8(PC),A0;PTSIN bra.s GAJ43 GAJ42:add D2,(A0)+ add D3,(A0)+ GAJ43:dbra D1,GAJ42 move.l VDIPB(PC),A2;CONTRL move (SP)+,D1 move (SP)+,(A2)+ move D1,(A2)+ bra GAJ45 YLTYPE:bsr WINDEX GAL65:move.l VDIPB+4(PC),A0;INTIN move D3,(A0) cmpi #8,D3 bcs.s GAL66 moveq #113,D3 bsr.s OVDIC moveq #7,D3 bra.s GAL65 GAL66:moveq #15,D3 OVDIC:movem.l A0/A5,-(SP) lea MD94,A5 bsr VDIB movem.l (SP)+,A0/A5 rts YATF:move.l VDIPB+12(PC),-(SP);INTOUT GAL68:addq #4,A3 moveq #0,D3 move.b (A3)+,D3 add.l D3,(SP) move.b (A3)+,D3 bsr.s OVDIC GAL78:move.l (SP)+,A0 move (A0),D0 bra LB303R YATF2:move.l VDIPB+16(PC),-(SP);PTSOUT bra.s GAL68 YPOINT:move.l VDIPB+12(PC),A0;INTOUT add (A3),A0 move.l A0,-(SP) pea GAL78(PC) move #105,-(SP) subq #4,SP move.l SP,A0 bsr GAI740 move #2,-(SP) bra VDIG GAL70X:bsr.s GC30 cmpi #256,D2 bcc ERRRGR rts GAL70:bsr.s GC30 cmpi #16,D2 bcc ERRRGR rts YCOLOR:bsr.s GAL70 bsr GC21 GAL72:moveq #7,D1 GAL720:movem D1-D3,-(SP) trap #14 addq #6,SP rts YCOLORF:bsr.s GAL70 moveq #-1,D3 bsr.s GAL72 bra LB303R YVCOLOR:bsr.s GC20 move D3,D0 andi #$888,D0 andi #$777,D3 add D3,D3 asr #3,D0 add D0,D3 bra.s GC18 YVCOLORF:bsr.s GC24 move D0,D3 andi #$EEE,D0 andi #$111,D3 asl #3,D3 asr D0 add D3,D0 bra LB303R GC30:bsr DECCRPGI bsr WINDEX tst D3 bmi ERRRGR move D3,D2 bra DECCRPDE YXVCOLOR:bsr.s GC20 GC18:move.l VDIPB+4(PC),A0;INTIN move D2,(A0)+ move D3,D0 asr #8,D0 bsr.s GC22 move D3,D0 asr #4,D0 bsr.s GC22 move D3,D0 bsr.s GC22 moveq #14,D3 bra OVDIC GC20:bsr.s GC30 GC21:jsr DECCRE bra WADR GC22:andi #$F,D0 mulu #200,D0 addq #1,D0 divu #3,D0 move D0,(A0)+ rts YXVCOLORF:bsr.s GC24 bra LB303R GC24:bsr.s GC30 move.l VDIPB+4(PC),A0;INTIN move D2,(A0)+ move #1,(A0)+ moveq #26,D3 bsr OVDIC move.l VDIPB+12(PC),A0;INTOUT addq #2,A0 moveq #0,D0 bsr.s GC26 bsr GC26 GC26:move (A0)+,D3 mulu #3,D3 addq #1,D3 divu #200,D3 asl #4,D0 moveq #15,D1 cmp D3,D1 bcc.s GC28 move D1,D3 GC28:add D3,D0 rts YBOUNDA:moveq #1,D3 bra.s GAL80 YNOBOUNDA:moveq #0,D3 GAL80:bsr DECTMNR beq.s GAL82 bsr WINDEX andi #1,D3 GAL82:move D3,(A0) move.l VDIPB+4(PC),A0;INTIN move D3,(A0) moveq #104,D3 bra OVDIC TEFFET:dc.w 0;| TBOUNDA:dc.w 1;| TLEND1:dc.w 0;| TLEND2:dc.w 0;| MTYPE:dc.w 0;| YLBEGIN:bsr WINDEX move D3,D2 move D3,(A0)+ move (A0),D3 bra.s GAL84 YLEND:bsr WINDEX move D3,(A0) move -(A0),D2 GAL84:move.l VDIPB+4(PC),A0;INTIN movem D2/D3,(A0) moveq #108,D3 bra OVDIC YHARDCOPY:bsr.s VERPRN1R move #20,-(SP) trap #14 addq #2,SP rts VERPRN1R:jmp VERPRN1 YHEX:move (A3),-(SP) bsr WEXPR move (SP)+,D0 move.b D0,TBASE+1 bsr YSTR move.b TBASET+3(PC),TBASE+1 rts YFCNT:addq #2,A3 YWORKOUT:bsr.s XFCNT bra LB305R YCCNT:addq #6,A3 bsr.s XFCNT bne ERRIS7 moveq #$20,D0 bra WASGN XFCNT:cmpi.b #"(",(A5)+ bne.s GAL25 bsr WINDEX bsr DECCRPDE move.l (A3)+,A0 moveq #0,D2 move.b (A3)+,D2 bne.s GAL21 move #$100,D2 GAL21:cmp D2,D3 bcc ERRRGR moveq #0,D2 move.b (A3)+,D2 cmpi #1,D2 beq.s GAL22 asl #2,D3 add D3,A0 move.l (A0),D0 bra.s GAL23 GAL22:add D3,D3 add D3,A0 move (A0),D0 ext.l D0 GAL23:move.l A0,A3 moveq #0,D3 rts GAL25:subq #1,A5 move.l (A3),D0 rts TVARUM:dc.w 0 XSTACKN:tst D3 bmi ERRRGR add TVARU(PC),D3 cmp TVARUM(PC),D3 bcc ERRRGR addq #1,D3 move D3,D0 rts YSTACKF:bsr.s YSTACKDF bra VERVAR1 YSTACKDF:bsr.s XSTACKB bsr.s XSTACKN move D0,D2 jmp LB321 YSTACK:bsr.s XSTACKC move D3,-(SP) jsr WEXPRCOND GAM62:move (SP)+,D3 bsr.s XSTACKN bra WASGN2 YSTACKD:bsr.s XSTACKC move D3,-(SP) bsr WCHAIN bra.s GAM62 XSTACKB:cmpi.b #"(",(A5)+ bne ERRIS7 bsr WINDEX bra DECCRPDE XSTACKC:bsr.s XSTACKB DECCREE:jsr DECCRE bne ERRIS7 rts YVERSION:bsr WADR cmpi.l #$1000D,D3 beq.s GAV60 moveq #1,D0 cmp.l D0,D3 beq.s GAS80 moveq #100,D0 cmp.l D0,D3 bcs ERRRGR moveq #120,D0;VERSION cmp.l D3,D0 bcs ERRRGR GAS80:move.l D3,(A3) rts GAV60: clr.b GEQ70 rts YFSUBS:jsr XIFAC move #-1,-(SP) move TCMPX(PC),D2 beq.s GAR70 subq #4,SP move D2,-(SP) bsr LB16R jsr XICFLA GAR70:bsr DECCRVR bne.s GAR76 bsr WVAR move.l SP,A0 GAR72:move (A0)+,D0 bmi.s GAR74 addq #4,A0 cmp D0,D1 bne.s GAR72 bra ERRNR GAR74:subq #4,SP move D1,-(SP) bsr.s DECCREE jsr WFLOAT bra.s GAR70 GAR76:move TVARN(PC),D4 move.l SP,A1 GAR78:bsr LB95C tst (A1)+ bmi.s GAR80 move.l A0,(A1)+ subq #1,D4 bra.s GAR78 GAR80:move.l SP,A1 move.l A5,-(SP) move D4,-(SP) addq #6,A6 jsr XFSTV bsr LC12 move (SP)+,D0 bsr WASGN2 move.l (SP)+,A5 GAR82:tst (SP)+ bmi.s GAR84 addq #4,SP bsr POPNR bra.s GAR82 GAR84:rts YEVEN:bsr.s GIB28 bra.s GIB20 YODD:bsr.s GIB28 eor D1,D0 bra.s GIB20 GIB28:bsr WENTIER bsr SLNG0R add D0,A0 moveq #0,D0 moveq #1,D1 move -(A0),D0 and D1,D0 rts YCOMPLEXP:bsr.s GIB22 bmi.s GIB16 movem.l A5/A6,-(SP) jsr XTCX movem.l (SP)+,A5/A6 bra.s GIB20 YFLOATP:bsr.s GIB22 bmi.s GIB18 GIB16:jmp LB608 YEXACTP:bsr.s GIB22 bmi.s GIB16 GIB18:jmp LB607 YRATNUMP:bsr.s GIB24 GIB20:beq.s GIB18 bra.s GIB16 YINTEGERP:bsr.s GIB24 bne.s GIB16 btst #5,(A0) bra.s GIB20 YPOLYP:bsr.s GIB26 bra.s GIB20 YLITP:bsr.s GIB26 bne.s GIB16 bsr WPOLY1 moveq #1,D0 cmp (A0)+,D0 bne.s GIB16 addq #2,A0 cmp.l (A0)+,D0 bne.s GIB16 cmpi #$4001,(A0) bra.s GIB20 GIB22:jsr WEXPR tst (A0) rts GIB24:bsr.s GIB22 jmp XIREEL GIB26:bsr.s GIB22 jmp XIPOLY INITU:st TFRDG move.l TPPL(PC),D0 bne.s PD60 jsr INITR jsr XNWL moveq #0,D0 PD60:jsr PNLG move.l D0,TPPL move.l A0,A5 PD61:bsr.s INITAR1 clr.l REGD7 st TFRUN st TFRDG bsr SHOWCMR rts YRUN:jmp GRUN YMERGE:jmp GMERGE YSAVE:jmp GSAVE YOVER:jmp GOVER YDIR:jmp GDIR INITAR1:jmp INITA WRUN:jsr XSED lea TDRUN(PC),A0 jsr XPTET moveq #0,D0 tst.b (A6) beq.s PD62 bsr WDLGX PD62:move.l D0,TPPL move.l D0,-(SP) bsr INITU tst.l (SP)+ bne.s IRUN bsr WSPBAS1 bsr.s SBINSTR move.l TDBAS,A5 IRUN:move.l TPILE(PC),SP bsr WINSTR bra.s IRUN SBINSTR:lea GEB41(PC),A5 jsr DECAN lea BINSTR(PC),A0 move #$8000,(A0) tst D0 bmi.s GEB40 cmpi.b #$50,(A3)+ bne.s GEB40 clr.b (A0) GEB40:rts IMM14:bsr PC14 trap #3;HOT WIMM:move.l A6,A0 GAM34:tst.b (A0)+ bne.s GAM34 lea -1790(A0),A0 cmp.l A0,A6 blt ERRLTL lea TDIMM(PC),A0 jsr XPTET0 lea -1(A6),A5 bsr DECCLR bne.s IMM13 tst.b (A4) beq.s IMM14 IMM13:bsr INITAR1 move.l #$100,REGD7 lea TMEXCP(PC),A1 move.l (A1)+,A0 move.l (A1),A2 lea -16(A2),A2 IMM10:cmp.l A2,A0 bcs.s IMM11 jmp ERRFAT IMM11:move.b (A5)+,(A0)+ bne.s IMM10 subq #1,A0 lea IMM12(PC),A5 bsr PB880 bra IRUN IMM12:dc.b $1A,0 ;DEBUG YFOIS:dc.l 1;| YRETC:dc.l 0;| YECRA:dc.w 0;| YTRACE:dc.w 0;| BINSTR:dc.b 0;| BEND:dc.b 0;| dc.l 0;| SUITA0:tst.b (A0)+ bne.s SUITA0 PD66:cmpi.b #$1A,(A0) beq.s PD67 cmpi.b #1,(A0) bne.s PD67 move.l 2(A0),A0 bra.s PD66 PD67:rts Y10L:moveq #1,D2 move.b #$F6,TDF4 movem.l TPI,A0/A1 move.l TDEBA5,A5 movem.l A0/A1,-(SP) cmp.l A0,A5 beq.s PD70 lea 1(A5),A2 move.l A0,A5 bsr SAUTLBL cmp.l A5,A2 beq.s PD70 lea HH85(PC),A0 bsr XN15R lea -1(A2),A0 bsr X15NR PD70:move.l TPL,D0 bne.s PD72 cmpi #16,TCURSY bcc.s PD74 move.l D2,TPL jsr PLGN1M movem.l TPI,A0/A1 bsr.s SUITA0 beq.s PD74 move.l A0,A5 move.l A1,-(SP) jsr LOCALS move.l (SP)+,D2 addq.l #1,D2 bra.s PD70 PD72:move.b #$F0,TDF4 move TCURSBL(PC),TCURSB move.l TPI,A0 clr REGD7+2 jsr XFORM1 jsr XANBK move TCURSBM(PC),TCURSB st FSAUTM jsr PBKLA1 movem.l (SP),D2/A0 exg A0,D2 clr REGD7+2 jsr XANBK PD74:movem.l (SP)+,A0/A1 movem.l A0/A1,TPI lea HH83(PC),A0 bsr.s X15R move.l A1,D0 beq.s PD75 jmp PINTAE PD75:lea HH85(PC),A0 bsr.s X15R rts TCURSBL:dc.w 0 YBKP:cmp.l #SKBP+64,A5 bge.s HH190 move.l A0,(A5)+ clr.l (A5) rts HH190:moveq #16,D0 bsr.s HH194 HH193:moveq #65,D0 HH194:clr TFRUN trap #15 X15R:jmp X15 X15NR:jmp X15N YRBP:lea U3F85D(PC),A0 jsr ZF3E6 lea T3FDB6,A6 tst.b (A6) beq.s HH192 WDLGX:move.l A5,-(SP) jsr WDLGN bne.s HH193 jsr PNLG move.l (SP)+,A5 moveq #1,D1 HH192:rts WGINIT:lea YFOIS(PC),A0 moveq #1,D0 move.l D0,(A0)+ clr.l (A0)+ move.l D0,(A0)+ rts XESAVH:move D0,-(SP) jsr LOCALS move.l TPL,TPPL bsr.s XESAV move (SP)+,D0 rts XESAV:lea YECR,A3 XESAV3:addq #4,A3 move.l A3,-(SP) move #81,-(SP) trap #14 move D0,(A3)+ addq #2,SP move MOUSE0,(A3)+ move RESOL,(A3)+ move INVERSE,(A3)+ moveq #7,D0 lea ZFFFF8240,A0 HH210:move.l (A0)+,(A3)+ dbra D0,HH210 moveq #85,D0 bsr.s HH218 lea TCURSBM(PC),A0 move #FSAUVG/2-1,D0 HH212:move (A0)+,(A3)+ dbra D0,HH212 move #2,-(SP) trap #14 addq #2,SP move.l D0,A0 move.l A3,A1 bsr.s HH20 bsr SHOWCMR move.l (SP),A0 bsr.s CHKSUM move.l (SP)+,A0 move.l D0,-(A0) rts CHKSUM:move #FSAUVG/2+275,D1 moveq #0,D0 GEX92:rol.l D0 add (A0)+,D0 dbra D1,GEX92 rts HH20:bsr HIDECMR move YECRLD(PC),D0 HH21:move.l (A0)+,(A1)+ move.l (A0)+,(A1)+ move.l (A0)+,(A1)+ move.l (A0)+,(A1)+ dbra D0,HH21 rts HH218:move.l A3,-(SP) move #256,-(SP) lea 512(A3),A3 clr -(SP) move D0,-(SP) trap #14 lea 10(SP),SP rts YECRL:dc.l 37772 YECRLD:dc.w 1999 XEREM:lea YECR,A3 XEREM3:move.l (A3)+,D2 move.l A3,A0 bsr.s CHKSUM cmp.l D0,D2 bne.s ERRMGC move (A3)+,-(SP) move #80,-(SP) trap #14 addq #4,SP move.l A3,-(SP) addq #2,A3 move (A3)+,RESOL jsr SETCED move (A3)+,D3 jsr VIDEOSET move.l A3,-(SP) move #6,-(SP) trap #14 addq.l #6,SP lea 32(A3),A3 moveq #84,D0 bsr.s HH218 lea TCURSBM(PC),A0 move #FSAUVG/2-1,D0 HH216:move (A3)+,(A0)+ dbra D0,HH216 move #2,-(SP) trap #14 addq #2,SP move.l D0,A1 move.l A3,A0 bsr HH20 move.l (SP)+,A3 move (A3)+,D3 XEREM2R:jmp XEREM2 ERRMGC:moveq #79,D0 trap #15 WG:tst.b (A6) beq.s HI103 moveq #0,D0 cmpi.b #$30,(A6) beq.s HI100 bsr WDLGX HI100:move.l D0,TPPL lea GEX86(PC),A2 jsr DAMGN bsr XESAV HI101:move.l TPPL(PC),-(SP) bsr INITU tst.l (SP)+ bne.s HI102 bsr WSPBAS1 bsr SBINSTR bsr XESAV move.l TDBAS,A5 HI102:bsr WGINIT addq #1,-(A0) cmpi.b #$1A,(A5) beq.s HI27R1 bsr XEREM bra IRUN HI103:move.l TPPI(PC),A5 move.l A5,D0 bne.s HI104 tst.l TPPL bne.s HI101 HI27R1:bra HI27 HI104:cmp.l SOURCEI,D0 bcs.s HI27R1 cmp.l TDHAUT,D0 bcc.s HI27R1 bsr PD61 bra.s HI102 HI21A:lea SKBP,A0 HI21B:move.l (A0)+,D0 beq.s HI21F cmp.l D0,A5 bcs.s HI21B move.l D0,A1 HI21C:tst.b (A1)+ bne.s HI21C cmp.l A1,A5 bcc.s HI21B subq.l #1,YFOIS bne.s HI21F bra.s HI21D WG1:move.l TPPI(PC),A5 cmpi #2,D1 bcs.s HI21A beq.s HI21D cmpi #5,D1 beq.s HI21G cmpi #3,D1 bne.s HI21E move.l YRETC(PC),D0 cmp.l TMPROCA(PC),D0 bgt.s HI21D HI21F:move.l TDEBA5,A5 move.l TVALA6(PC),A6 jmp WINSTR3 HI21G:cmp.l TDBAS,A5 bcs.s HI21F cmp.l TDHAUT,A5 bhi.s HI21F bra.s HI21D HI21E:move.l YRETL,D0 cmp.l TMFOR(PC),D0 bge.s HI21F HI21D:bsr XESAVH HI10:move #0,RESOL RESOL1=HI10+2 clr -(SP) move #87,-(SP) trap #14 addq #4,SP jsr DAMPR1 jsr XCLRT1 lea GEX85(PC),A2 jsr DAMGN bsr Y10L lea PB961(PC),A5 bsr WSPBAS bsr WGINIT HI14:jsr VDKEY jsr CURSACT jsr XKEY1 lea SKBP.L,A5 lea YECRA(PC),A1 move.l D0,D1 swap D1 cmpi #1,D1 bcc GEY10 cmpi #$215,D0 beq GEA40 cmpi #$214,D0 beq HI220 bcc HI27R cmpi #$200,D0 bcs.s GEX90 tst.b D0 beq HI24 cmpi.b #7,D0 bcc.s GEX88 addi #$40,D0 bra.s GEX91 GEX88:beq HI33 cmpi.b #10,D0 bcc.s GEX89 addi #$42,D0 bra.s GEX91 GEX89:beq HI240 cmpi.b #19,D0 beq HI40 addi #39,D0 bra.s GEX91 GEX90:cmpi #$100,D0 bcs.s GEX91 cmpi.b #12,D0 beq HI220 cmpi.b #13,D0 bne.s HI27R GEX91:cmpi.b #"2",D0 bcs HI22 cmpi.b #"9",D0 bhi HI22 subi.b #"1",D0 GEY12:move.l TPI,A0 HI15:subq.b #1,D0 bmi.s HI20 bsr SUITA0 beq.s HI27R bra.s HI15 HI20:bsr YBKP HI21:bsr XEREM bra HI21F GEY10:beq.s GEY14 tst (A1) bne.s HI27R clr D6 move.b D0,D6 jsr WDCUR bne.s HI27R sub.l TPL,D0 bgt.s GEY12 beq HI33 HI27R:bra HI27 GEY14:tst (A1) bne.s HI27R lea TD000(PC),A1 move TCURSC-TD000(A1),D1 addq #1,D1 move D0,D2 ext D0 mulu D0,D1 asr #8,D2 add D2,D1 bsr.s GEY15 jsr PONT cmp.l A1,A0 bge HI14R move.b (A0),D2 btst #6,(A2,D2.W) beq HI14R lea TBUF,A3 move.l A3,A5 moveq #31,D0 bra.s GEY19 GEY15:lea (A1,D1.W),A0 GEY15A:lea TYPCAR,A2 moveq #0,D2 GEY16:cmp.l A1,A0 blt.s GEY17 move.b -(A0),D2 btst #1,(A2,D2.W) bne.s GEY16 GEY17:addq #1,A0 cmpi.b #32,(A0) beq.s GEY17 rts FLTYP:dc.b 0,0 GEY18:move.b D2,(A3)+ GEY19:move.b (A0)+,D2 tst.b (A2,D2.W) dbpl D0,GEY18 subq #1,A0 movem.l A3/A5,-(SP) clr.b (A3)+ move #1000,D0 GEY29:move.b (A0)+,(A3)+ cmp.l A1,A0 dbgt D0,GEY29 clr.b (A3)+ move.l TVALA6(PC),A6 bsr YTYP movem.l (SP)+,A3/A5 lea 1(A3),A0 move.b FLTYP(PC),D0 bmi.s HI14R cmpi.b #13,D0 bcs.s GEY21 cmpi.b #16,D0 bcs.s HI14R cmpi.b #$50,D0 bcs.s GEY21 cmpi.b #$52,D0 bcs.s HI14R cmpi.b #$71,D0 bcs.s GEY27 cmpi.b #$74,D0 bcs.s HI14R cmpi.b #$75,D0 beq.s HI14R GEY21:cmpi.b #"(",(A0) bne.s GEY26 moveq #0,D3 GEY23:move.b (A0)+,D0 beq.s HI14R move.b D0,(A3)+ addq #1,D3 cmpi.b #"(",D0 beq.s GEY23 subq #1,D3 cmpi.b #34,D0 bne.s GEY25 GEY24:move.b (A0)+,D0 beq.s HI14R move.b D0,(A3)+ cmpi.b #34,D0 bne.s GEY24 GEY25:cmpi.b #")",D0 bne.s GEY23 subq #1,D3 bne.s GEY23 clr.b (A3) GEY26:bsr PB962 move.l A5,A0 bsr X15R moveq #"=",D0 bsr X12BR clr.l REGD7 bsr GEB74 bsr MA512 HI14R:bra HI14 GEY27:cmpi.b #$55,D0 bcc.s GEY21 GEY28:cmpi.b #32,(A0)+ beq.s GEY28 cmpi.b #":",-(A0) beq.s HI14R bra.s GEY21 HI22:cmpi.b #$20,D0 beq.s HI240 cmpi.b #6,D0 beq.s HI220 lea HH70(PC),A0 jsr RELAD0 bne.s HI27 jmp (A0) HI220:tst (A1) beq.s HI27 bsr HIDECMR jsr XCLR bsr XESAV bra.s HI14R HI23:move.l TMPROCA(PC),YRETC move #3,YTRACE bra HI21 HI24:move #2,YTRACE bra HI21 HI240:move #5,YTRACE bra HI21 HI25:trap #3;HOT HI26:tst (A1) bne.s HI27 bsr YRBP bne HI20 HI27:bra HH190 HI28:tst (A1) bne.s HI27 bsr YRBP beq.s HI27 bsr YBKP HI29:bsr YRBP beq HI21 bsr YBKP bra.s HI29 HI31:st (A1) bsr XEREM bra HI14R HI32:tst (A1) bne.s HI27 clr TFRUN lea HH82(PC),A0 jsr S3BE10 st TFRUN move.l D0,YFOIS ble.s HI27 bsr YRBP bne.s HI34 HI33:move.l TPI,A0 HI34:bra HI20 HI36:clr YTRACE bra HI21 HI40:move #4,YTRACE move.l TMFOR(PC),YRETL bra HI21 GEA40:tst (A1) bne.s HI27 bsr X9R move.l TMPROCA(PC),A3 lea GEA41(PC),A0 move -(A3),D4 beq.s GEA45 move -(A3),D0 ext.l D0 beq.s GEA45 movem.l D0/D4/A3,-(SP) lea GEA42(PC),A0 jsr S3BE10 move.l D0,D3 movem.l (SP)+,D0/D4/A3 lea GEA43(PC),A0 tst.l D3 bgt.s GEA46 GEA44:jsr PINTAE GEA45:bsr X15NR HI14S:bra HI14 GEA46:cmp.l D3,D0 blt.s GEA44 sub.l D3,D0 jsr PB840 move D0,D3 bra.s GEA48 GEA47:move.b (A3)+,D0 jsr X12A GEA48:dbra D3,GEA47 bra.s HI14S XTIME:moveq #$2C,D0 move D0,-(SP) trap #1 addq #2,SP lea TCTIMR(PC),A0 lea TIMA1(PC),A1 move.l $4BA.W,D1 cmp (A0),D0 beq.s GER72 move D0,(A0)+ move.l D1,(A1) lea TCTIM-TCTIMR-2(A0),A1 GES72:move D0,D1 rol #5,D1 andi #$1F,D1 bsr.s GER75 move D0,D1 ror #5,D1 bsr.s GER74 move D0,D1 add D1,D1 bsr.s GER74 clr D0 GER71:rts GER72:sub.l (A1),D1 cmpi #160,D1 bcs.s GER71 bset #0,TCTIM1-TCTIMR(A0) bset #0,4(A0) rts GER73:addq #1,A0 addq #3,A1 rts GER74:andi #$3F,D1 GER75:cmp.b (A0),D1 beq.s GER73 move.b D1,(A0)+ GER76:ror D1 moveq #47,D2 GER77:addq #1,D2 subq.b #5,D1 bpl.s GER77 move.b D2,(A1)+ addi.b #29,D1 rol D1 move.b D1,(A1)+ addq #1,A1 GES29:rts XDATE:move #$2A,-(SP) trap #1 addq #2,SP move D0,TCTIMD lea TCDAT(PC),A1 cmp (A1),D0 beq.s GES29 move D0,(A1) bsr XTIMEJ1 lea TCDAT2(PC),A0 add D0,D0 lea TCDAT1(PC),A1 move (A0,D0.W),(A1)+ addq #1,A1 move GTIMEN(PC),D1 bsr.s GER76 move GTIMEMO(PC),D1 sub D1,A0 add D1,D1 sub D1,A0 move.b (A0)+,(A1)+ move.b (A0)+,(A1)+ move.b (A0)+,(A1)+ rts XDATEQ:bsr XDATED XDATEQ1:move D0,-(SP) move D2,-(SP) move.l A6,A1 moveq #"/",D0 move.b D0,2(A6) move.b D0,5(A6) bsr.s GER76 move (SP)+,D1 bsr.s GER76 move (SP),D0 ext.l D0 bpl.s KM90 neg.l D0 KM90:move.l A1,A0 jsr PINTA move.l A0,A6 move (SP)+,D0 bpl.s KM92 move.b #"B",(A6)+ move.b #"C",(A6)+ KM92:rts XTIMEQ:move.l A6,A1 moveq #-1,D1 move.l D1,-(SP) move.l SP,A0 moveq #":",D1 move.b D1,2(A6) move.b D1,5(A6) bsr GES72 addq #4,SP GES74:move.l A1,A6 clr.b -(A6) rts dc.b "DECNOVOCTSEPAOUJULJUNMAIAVRMARFEVJAN";| TCDAT2:dc.b "DILUMAMEJEVESA";| ; dc.b " ";| TCDAT1:dc.b "JJ NN MMM",0;| TCDAT:dc.w 0 TCDAT3:dc.w -1 TCTIM3:dc.w -1 TCTIMD:dc.w 0 TCTIMR:dc.w 0 dc.b 0,0,0 TCTIM2:dc.b 27,"Y",$23,104,27,"p",0 TCTIM:dc.b "00:00:0" TCTIM1:dc.b "0",0 even GET79:dc.w $1901;CAR 1-26 dc.w GET79A+1-* dc.w GET79B+1-* dc.w GET79C+1-* dc.w GET79D+1-* dc.w GET79E+1-* dc.w GET79F+1-* dc.w GET79G+1-* dc.w GET79H+1-* dc.w GET79I+1-* dc.w GET79J+1-* dc.w GET79K+1-* dc.w GET79L+1-* dc.w GET79M+1-* dc.w GET79N+1-* dc.w GET79O+1-* dc.w GET79P+1-* dc.w GET79Q+1-* dc.w GET79R+1-* dc.w GET79S+1-* dc.w GET79T+1-* dc.w GET79U+1-* dc.w GET79V+1-* dc.w GET79W+1-* dc.w GET79X+1-* dc.w GET79Y+1-* dc.w GET79Z+1-* dc.w 0 INDSZ:dc.w 32,3 dc.w 16,1 dc.w 8,0 dc.w 4,$401 dc.w 2,$602 dc.w 1,$703 TBNOMI:dc.l 0 G: GET79A:dc.b 14,"argument",0,13,0 GARGUMENT=*-2 dc.w YPROC-Y9 dc.l 0 dc.b 10,"access ",0,$72 GACCESS: dc.l 0 dc.b 8,"abs",0,5 dc.w YABS-Y9 dc.l 0 dc.b 10,"appr",0,11,0 dc.w YAPP-Y9 dc.l 0 dc.b 8,"asc",0,9 dc.w YASC-Y9 dc.l 0 dc.b 8,"atn",0,5 dc.w YATN-Y9 dc.l 0 dc.b 10,"atn2",0,6,0 dc.w YANGLE-Y9 dc.l 0 dc.b 10,"asin",0,5,0 dc.w YASIN-Y9 dc.l 0 dc.b 10,"acos",0,5,0 dc.w YACOS-Y9 dc.l 0 dc.b 10,"asinh",0,5 dc.w YASINH1-Y9 dc.l 0 dc.b 10,"acosh",0,5 dc.w YACOSH-Y9 dc.l 0 dc.b 10,"atnh",0,5,0 dc.w YATNH-Y9 dc.l 0 dc.b 20,"addrin",0,$79,0 GADDRIN=*-2 dc.w YFCNT-Y9,YCCNT-Y9 dc.l ADDRIN dc.b 3,3 dc.l 0 dc.b 20,"addrout",0,$79 GADDROUT=*-1 dc.w YFCNT-Y9,YCCNT-Y9 dc.l ADDROUT dc.b 1,3 dc.l 0 dc.b 8,"aes",0,13 dc.w YAES-Y9 dc.l 0 dc.b 10,"aesf",0,11,0 dc.w YAESF-Y9 dc.l 0 GAND:dc.b 6,"and",0,$75 dc.l 0 dc.b 10,"arg$",0,$6B,0 dc.w YCHARG-Y9 dc.l 0 GAS:dc.b 6,"as ",0,$71 dc.l 0 dc.b 10,"alert",0,13 dc.w YALERT-Y9 dc.l 0 GET79B:dc.b 14,"base",0,$74,0 TBASET:dc.l 10 dc.w YBASE-Y9 dc.l 0 dc.b 10,"bios",0,11,0 dc.w YBIOS-Y9 dc.l 0 dc.b 16,"breakpoint",0,13,0 dc.w YBRPT-Y9 dc.l 0 GBREAK:dc.b 8,"break",0,$71 dc.l 0 dc.b 10,"bget",0,13,0 dc.w YBGET-Y9 dc.l 0 dc.b 10,"bput",0,13,0 dc.w YBPUT-Y9 dc.l 0 dc.b 10,"bload",0,13 dc.w YBLOAD-Y9 dc.l 0 dc.b 10,"bsave",0,13 dc.w YBSAVE-Y9 dc.l 0 GBUTTON:dc.b 10,"button",0,$71,0 dc.l 0 dc.b 8,"box",0,13 dc.w YBOX-Y9 dc.l 0 dc.b 18,"boundary",0,$76,0 dc.l TBOUNDA dc.w YBOUNDA-Y9 dc.l 0 dc.b 12,"bin$",0,$6B,0 dc.w YHEX-Y9,2 dc.l 0 dc.b 14,"basepage",0,0,0 dc.w YBASEPAGE-Y9 dc.l 0 dc.b 18,"breaklabel$",0,$78 dc.w YBRKLBLV-Y9 dc.w YBRKLBL-Y9 dc.l 0 GET79C:dc.b 12,"char ",0,13 dc.w YCVAR-Y9,$40 dc.l 0 dc.b 12,"charn",0,$41 dc.w $7FFF,$8000 dc.l 0 dc.b 14,"complex",0,$79 dc.w YCOMPLEXF-Y9,YCOMPLEX-Y9 dc.l 0 dc.b 12,"change$",0,$69 dc.w YCHAN-Y9 dc.l 0 dc.b 14,"changes$",0,$6A,0 dc.w YCHANS-Y9 dc.l 0 GCASE:dc.b 10,"case",0,14,0;ANCIEN WHEN dc.w YWHEN-Y9 dc.l 0 G79CLR:dc.b 10,"clear",0,13 dc.w YCLR-Y9 dc.l 0 dc.b 14,"cursc",0,$76 dc.l TCURSX dc.w YCURSX-Y9 dc.l 0 dc.b 14,"cursl",0,$76 dc.l TCURSY dc.w YCURSX-Y9 dc.l 0 dc.b 12,"csrlin",0,0,0 dc.w YCSRLIN-Y9 dc.l 0 dc.b 14,"cursh",0,$76 dc.l TCURSA dc.w YCURSH-Y9 dc.l 0 dc.b 14,"clock",0,$76 dc.l TCTIM3 dc.w YCLOCK-Y9 dc.l 0 dc.b 10,"cond ",0,13 dc.w YCOND-Y9 dc.l 0 dc.b 10,"chrp$",0,$6B dc.w YCHRP-Y9 dc.l 0 dc.b 8,"cos",0,5 dc.w YCOS-Y9 dc.l 0 dc.b 10,"cosh",0,5,0 dc.w YCOSH1-Y9 dc.l 0 dc.b 10,"cint",0,5,0 dc.w YCINT-Y9 dc.l 0 dc.b 12,"calla",0,13 dc.w YCALLA-Y9 dc.w $A000 dc.l 0 dc.b 12,"callf",0,13 dc.w YCALLA-Y9 dc.w $F000 dc.l 0 dc.b 20,"contrl",0,$79,0 GCONTRL=*-2 dc.w YFCNT-Y9,YCCNT-Y9 dc.l CONTRL dc.b 12,1 dc.l 0 dc.b 8,"cmp",0,10 dc.w YCMP-Y9 dc.l 0 dc.b 10,"cmp1",0,10,0 dc.w YCMP1-Y9 dc.l 0 dc.b 10,"call",0,13,0 dc.w YCALL-Y9 dc.l 0 dc.b 10,"cont",0,3,0 dc.w YCONT-Y9 dc.l 0 dc.b 10,"contf",0,1 dc.w YCONTF-Y9 dc.l 0 GET79W:dc.b 10,"coef",0,4,0 dc.w YPC-Y9 dc.l 0 dc.b 10,"conc$",0,$6B dc.w YCONC-Y9 dc.l 0 dc.b 10,"coeff",0,2 dc.w YCOEFF-Y9 dc.l 0 dc.b 10,"cadd",0,13,0 dc.w YCADD-Y9 dc.l 0 dc.b 10,"cset$",0,$6B dc.w YCSET-Y9 dc.l 0 dc.b 10,"copy",0,13,0 dc.w YCOPY-Y9 dc.l 0 dc.b 14,"chdrive",0,$79 dc.w YCHDRF-Y9,YCHDR-Y9 dc.l 0 dc.b 10,"cdr$",0,$69,0 dc.w YCDR-Y9 dc.l 0 dc.b 10,"chr$",0,$6B,0 dc.w YCHR-Y9 dc.l 0 dc.b 10,"chdir",0,13 dc.w YCHDIR-Y9 dc.l 0 dc.b 10,"close",0,13 dc.w YCLOSE-Y9 dc.l 0 dc.b 8,"cls",0,13 dc.w YCLS-Y9 dc.l 0 dc.b 8,"cvz",0,9 dc.w YCVZ-Y9 dc.l 0 dc.b 8,"cvi",0,9 dc.w YCVI-Y9 dc.l 0 dc.b 8,"cvl",0,9 dc.w YCVL-Y9 dc.l 0 dc.b 8,"cvx",0,9 dc.w VERVAR-Y9 dc.l 0 dc.b 12,"cvs",0,9 dc.w YCVS-Y9 dc.l XFLI32 dc.l 0 dc.b 12,"cvd",0,9 dc.w YCVS-Y9 dc.l XFLI64 dc.l 0 dc.b 12,"circle",0,13,0 dc.w YCIRCLE-Y9 dc.l 0 dc.b 12,"clip",0,13,0 dc.w YVR-Y9,129 dc.l 0 dc.b 12,"color",0,$79 GCOLOR=*-1 dc.w YCOLORF-Y9,YCOLOR-Y9 dc.l 0 dc.b 12,"checker",0,13 dc.w YDAMIER-Y9 dc.l 0 dc.b 10,"carg",0,7,0 dc.w YCARG-Y9 dc.l 0 dc.b 10,"cabs",0,7,0 dc.w YCABS-Y9 dc.l 0 dc.b 10,"cxabs",0,11 dc.w YCXABS-Y9 dc.l 0 dc.b 12,"cxnorm",0,11,0 dc.w YCXNORM-Y9 dc.l 0 dc.b 10,"cxint",0,11 dc.w YCXINT-Y9 dc.l 0 dc.b 10,"cxdiv",0,11 dc.w YCXDIV-Y9 dc.l 0 dc.b 10,"cxmod",0,11 dc.w YCXMOD-Y9 dc.l 0 dc.b 10,"cxinv",0,11 dc.w YCXINV-Y9 dc.l 0 dc.b 10,"cxgcd",0,11 dc.w YCXGCD-Y9 dc.l 0 dc.b 14,"complexp",0,11,0 dc.w YCOMPLEXP-Y9 dc.l 0 dc.b 18,"continuecase",0,14,0 dc.w YCONTCASE-Y9 dc.l 0 dc.b 8,"cc",0,11,0 dc.w YCC-Y9 dc.l 0 GET79D:dc.b 16,"develop",0,$76 dc.l PRIOR dc.w YPRIORD-Y9 dc.l 0 GET79D1:dc.b 10,"data",0,15,0 dc.w YPAGE-Y9 dc.l 0 dc.b 10,"dive",0,4,0 dc.w YDIVE-Y9 dc.l 0 dc.b 10,"divez",0,4 dc.w YDIVEZ-Y9 dc.l 0 dc.b 18,"distingo",0 GDIST:dc.b $76,0 dc.l MAJMIN-1 dc.w YPRIORD-Y9 dc.l 0 dc.b 12,"decode",0,10,0 dc.w YDK-Y9 dc.l 0 dc.b 12,"decodex",0,9 dc.w YDKX-Y9 dc.l 0 dc.b 12,"decodei",0,9 dc.w YDKI-Y9 dc.l 0 dc.b 12,"decodec",0,9 dc.w YDKC-Y9 dc.l 0 dc.b 12,"decodev",0,9 dc.w YDKV-Y9 dc.l 0 dc.b 14,"decodelit",0,9 dc.w YDKT-Y9 dc.l 0 dc.b 14,"decodelbl",0,9 dc.w YDKL-Y9 dc.l 0 dc.b 14,"decodexi",0,9,0 dc.w YDKXI-Y9 dc.l 0 dc.b 14,"decodexc",0,9,0 dc.w YDKXC-Y9 dc.l 0 dc.b 10,"divr",0,6,0 dc.w YDIVR-Y9 dc.l 0 dc.b 10,"deg",0,3 dc.w YPYDE-Y9 dc.w 0 dc.l 0 dc.b 10,"degf",0,1,0 dc.w YDEGF-Y9 dc.l 0 dc.b 14,"derm",0,2,0 dc.w YDERK-Y9 dc.l XDV dc.l 0 dc.b 10,"dcom",0,2,0 dc.w YDCOM-Y9 dc.l 0 GDIV:dc.b 8,"div",0,2 dc.w YDIVP-Y9 dc.l 0 dc.b 12,"der",0,1 dc.w YDER-Y9 dc.l XDV dc.l 0 dc.b 8,"den",0,1 dc.w YDEN-Y9 dc.l 0 dc.b 10,"denf",0,1,0 dc.w YDENF-Y9 dc.l 0 dc.b 10,"denr",0,5,0 dc.w YDENR-Y9 dc.l 0 dc.b 10,"divn",0,4,0 dc.w YDIVN-Y9 dc.l 0 dc.b 10,"divd",0,4,0 dc.w YDIVD-Y9 dc.l 0 dc.b 8,"det",0,11 dc.w YDET-Y9 dc.l 0 dc.b 8,"datav",0,$72 GDATAV:dc.l 0 dc.b 8,"datac",0,$72 GDATAC:dc.l 0 dc.b 8,"datai",0,$72 GDATAI:dc.l 0 dc.b 8,"dataa",0,$72 GDATAA: dc.l 0 GETDO:dc.b 8,"do",0,14,0 dc.w YDO-Y9 dc.l 0 dc.b 10,"dir$",0,$60,0 dc.w YDIRD-Y9 dc.l 0 dc.b 10,"dfree",0,0 dc.w YDFREE-Y9 dc.l 0 dc.b 12,"dvarnum",0,11 dc.w YDVARNUM-Y9 dc.l 0 dc.b 10,"debug",0,13 dc.w YDEBUG-Y9 dc.l 0 dc.b 14,"date",0,$76,0 dc.l TCDAT3 dc.w YCLOCK-Y9 dc.l 0 dc.b 10,"devty",0,11 dc.w YDEVTY-Y9 dc.l 0 dc.b 10,"devid",0,11 dc.w YDEVID-Y9 dc.l 0 dc.b 12,"date$",0,$78 dc.w YDATED-Y9 dc.w YSETTIME1-Y9 dc.l 0 dc.b 18,"defmouse",0,$74,0,0,0 DEFMOUSE:dc.w 0 dc.w YDEFMOUSE-Y9 dc.l 0 dc.b 8,"dim",0,13 dc.w YDIM-Y9 dc.l 0 dc.b 8,"dir",0,13 dc.w YDIR-Y9 dc.l 0 GET79E:dc.b 12,"endif ",0,15,0 dc.w YENDIF-Y9 dc.l 0 GET79E2:dc.b 10,"else",0,14,0 dc.w YELSE-Y9 dc.l 0 GECAS:dc.b 14,"endselect",0,15 dc.w YENDSELECT-Y9 dc.l 0 dc.b 10,"exact",0,11 dc.w YEXACT-Y9 dc.l 0 dc.b 12,"exactp",0,11,0 dc.w YEXACTP-Y9 dc.l 0 dc.b 10,"even",0,11,0 dc.w YEVEN-Y9 dc.l 0 GERROR:dc.b 10,"error",0,15 dc.w YERROR-Y9 dc.l 0 dc.b 10,"elim",0,4,0 dc.w YELIM-Y9 dc.l 0 dc.b 10,"exit",0,14,0 dc.w YEXIT-Y9 dc.l 0 dc.b 12,"exitif",0,14,0 dc.w YEXITIF-Y9 dc.l 0 dc.b 16,"exitselect",0,14,0 dc.w YEXITSELECT-Y9 dc.l 0 dc.b 8,"exp",0,7 dc.w YEXP-Y9 dc.l 0 dc.b 10,"exp1",0,5,0 dc.w YEXP1-Y9 dc.l 0 GET79E1:dc.b 8,"end",0,15 dc.w YSTOP-Y9 dc.l 0 dc.b 8,"exg",0,13 dc.w YEXG-Y9 dc.l 0 GEQV:dc.b 6,"eqv",0,$71 dc.l 0 dc.b 14,"elementn",0,9,0 dc.w YLMN-Y9 dc.l 0 dc.b 14,"elementy",0,$A,0 dc.w YLMY-Y9 dc.l 0 dc.b 14,"element$",0,$6A,0 dc.w YLMC-Y9 dc.l 0 dc.b 14,"elementv",0,$A,0 dc.w YLMV-Y9 dc.l 0 dc.b 10,"eset$",0,$6B dc.w YESET-Y9 dc.l 0 dc.b 10,"exist",0,11 dc.w YEXIST-Y9 dc.l 0 dc.b 8,"err",0,0 dc.w YERR-Y9 dc.l 0 dc.b 10,"err$",0,$6B,0 dc.w YERRD-Y9 dc.l 0 dc.b 8,"erl",0,0 dc.w YERL-Y9 dc.l 0 dc.b 8,"era",0,0 dc.w YERA-Y9 dc.l 0 dc.b 8,"eof",0,11 dc.w YEOF-Y9 dc.l 0 dc.b 12,"ellipse",0,13 dc.w YELLIPSE-Y9 dc.l 0 dc.b 10,"eight",0,$70 dc.w $4008 dc.l 0 dc.b 18,"errorlabel$",0,$78 dc.w YERRLBLV-Y9 dc.w YERRLBL-Y9 dc.l 0 GET79F:dc.b 16,"factor",0,$76,0 dc.l PRIOR dc.w YPRIORF-Y9 dc.l 0 dc.b 16,"format",0,$74,0,0,0 TFRMT:dc.w 0 dc.w YFRMT-Y9 dc.l 0 GFUNCTION:dc.b 14,"function ",0,13 dc.w YPROC-Y9 dc.l 0 GCFUNCTION:dc.b 14,"function$",0,13 dc.w YPROC-Y9 dc.l 0 GET79F1:dc.b 10,"for ",0,14,0 dc.w YFOR-Y9 dc.l 0 dc.b 16,"formatx",0,$74,0,0 TFRMTX:dc.w 0 dc.w YFRMT-Y9 dc.l 0 dc.b 16,"formatm",0,$74 TFRMTM:dc.l 1 dc.w YFORMATM-Y9 dc.l 0 dc.b 16,"formatl",0,$74 TFRMTL:dc.l 0 dc.w YFRMT-Y9 dc.l 0 GFORV:dc.b 10,"forv",0,14,0 dc.w YFORV-Y9 dc.l 0 GFORC:dc.b 10,"forc",0,14,0 dc.w YFORC-Y9 dc.l 0 dc.b 12,"factorn",0,11 dc.w YFCN-Y9 dc.l 0 dc.b 12,"factore",0,1 dc.w YFCE-Y9 dc.l 0 dc.b 12,"factorp",0,1 dc.w YFCP-Y9 dc.l 0 dc.b 10,"fsel$",0,$6B dc.w YFSEL-Y9 dc.l 0 GET79U:dc.b 10,"formf",0,1 dc.w YFRF-Y9 dc.l 0 dc.b 10,"formd",0,1 dc.w YFRD-Y9 dc.l 0 dc.b 10,"formc",0,11 dc.w YFORMC-Y9 dc.l 0 dc.b 10,"float",0,7 dc.w YFLOAT-Y9 dc.l 0 dc.b 12,"floatp",0,11,0 dc.w YFLOATP-Y9 dc.l 0 dc.b 10,"fsubs",0,1 dc.w YFSUBS-Y9 dc.l 0 dc.b 12,"files$",0,$60,0 dc.w YFILES-Y9 dc.l 0 dc.b 8,"fix",0,5 dc.w YINT-Y9 dc.l 0 dc.b 8,"fre",0,0 dc.w YFRE-Y9 dc.l 0 dc.b 10,"field",0,13 dc.w YFIELD-Y9 dc.l 0 dc.b 12,"fill",0,13,0 dc.w YVR-Y9,103 dc.l 0 dc.b 18,"f",$7F,"color",0,$79 dc.w YATF-Y9,YATC-Y9,25,$225 dc.l 0 dc.b 18,"f",$7F,"type",0,$79,0 dc.w YATF-Y9,YATC-Y9,23,$25 dc.l 0 dc.b 18,"f",$7F,"style",0,$79 dc.w YATF-Y9,YATC-Y9,24,$425 dc.l 0 dc.b 14,"f",$7F,"user",0,13,0 dc.w YV-Y9,112 dc.l 0 GET79G:dc.b 10,"goto ",0,14 dc.w YGOTO-Y9 dc.l 0 dc.b 10,"gcdr",0,11,0 dc.w YPGCDR-Y9 dc.l 0 dc.b 8,"gcd",0,4 dc.w YGCD-Y9 dc.l 0 dc.b 12,"gemdos",0,11,0 dc.w YGEM-Y9 dc.l 0 dc.b 20,"global",0,$79,0 GGLOBAL=*-2 dc.w YFCNT-Y9,YCCNT-Y9 dc.l GLOBAL dc.b 15,1 dc.l 0 dc.b 12,"gosub ",0,14,0 dc.w YGOSUB-Y9 dc.l 0 dc.b 10,"gint",0,5,0 dc.w YGINT-Y9 dc.l 0 dc.b 8,"get",0,13 dc.w YGET-Y9 dc.l 0 dc.b 20,"gcontrl",0,$79 GGCONTRL=*-1 dc.w YFCNT-Y9,YCCNT-Y9 dc.l CONTROL dc.b 5,1 dc.l 0 dc.b 20,"gintin",0,$79,0 GGINTIN=*-2 dc.w YFCNT-Y9,YCCNT-Y9 dc.l AINTIN dc.b 16,1 dc.l 0 dc.b 20,"gintout",0,$79 GGINTOUT=*-1 dc.w YFCNT-Y9,YCCNT-Y9 dc.l AINTOUT dc.b 7,1 dc.l 0 dc.b 10,"gdos?",0,0 dc.w YGDOSQ-Y9 dc.l 0 dc.b 20,"graphmode",0,$79 dc.w YATF-Y9,YATC-Y9,32,$423 dc.l 0 GET79H:dc.b 10,"homog",0,2 dc.w YHOMOG-Y9 dc.l 0 dc.b 14,"hidem",0,$76 dc.l MOUSE0 dc.w YHIDEM-Y9 dc.l 0 dc.b 14,"hidec",0,$76 dc.l MOUSE0 dc.w YHIDEC-Y9 dc.l 0 dc.b 16,"hidecm ",0,$76 dc.l MOUSE0 dc.w YHIDECM-Y9 dc.l 0 dc.b 14,"himem",0,$74 TRTOP:dc.l $380000 dc.w YHIMEM-Y9 dc.l 0 dc.b 14,"hardcopy",0,13,0 dc.w YHARDCOPY-Y9 dc.l 0 dc.b 12,"hex$",0,$6B,0 dc.w YHEX-Y9,16 dc.l 0 GET79I:dc.b 12,"index ",0,13,0 dc.w YCIND-Y9 dc.l 0 dc.b 14,"implicit",0,13,0 dc.w YIMPL-Y9 dc.l 0 dc.b 12,"intsqr",0,5,0 dc.w YISQR-Y9 dc.l 0 dc.b 12,"introot",0,5 dc.w YINTROOT-Y9 dc.l 0 dc.b 10,"intlg",0,5 dc.w YINTLG-Y9 dc.l 0 GIN:dc.b 6,"in",0,$72,0 dc.l 0 GET79IF:dc.b 8,"if",0,14,0 dc.w YDIF-Y9 dc.l 0 dc.b 8,"ift",0,14 dc.w YIFTH-Y9 dc.l 0 GINPUT:dc.b 10,"input",0,15 dc.w YINPUT-Y9 dc.l 0 dc.b 10,"instr",0,10 dc.w YIST-Y9 dc.l 0 dc.b 12,"instrk",0,10,0 dc.w YISTK-Y9 dc.l 0 dc.b 8,"int",0,5 dc.w YLINT-Y9 dc.l 0 dc.b 14,"intg",0,1,0 dc.w YDER-Y9 dc.l XNTG dc.l 0 dc.b 14,"intgm",0,2 dc.w YDERK-Y9 dc.l XNTG dc.l 0 dc.b 8,"inv",0,4 dc.w YINV-Y9 dc.l 0 dc.b 18,"intin",0,$79 GINTIN=*-1 dc.w YFCNT-Y9,YCCNT-Y9 dc.l INTIN dc.b 128,1 dc.l 0 dc.b 20,"intout",0,$79,0 GINTOUT=*-2 dc.w YFCNT-Y9,YCCNT-Y9 dc.l INTOUT dc.b 128,1 dc.l 0 dc.b 8,"inp",0,11 dc.w YINP-Y9 dc.l 0 dc.b 10,"inp?",0,11,0 dc.w YINPQ-Y9 dc.l 0 dc.b 12,"input$",0,$6B,0 dc.w YINPUTD-Y9 dc.l 0 dc.b 14,"input",$7F,"dev",0,13 dc.w YINPUTDEV-Y9 dc.l 0 dc.b 12,"inkey$",0,$60,0 dc.w YINKEYD-Y9 dc.l 0 dc.b 14,"integerp",0,11,0 dc.w YINTEGERP-Y9 dc.l 0 GIMP:dc.b 6,"imp",0,$71 dc.l 0 dc.b 10,"im",0,11,0 dc.w YREIM-Y9,1 dc.l 0 GET79J:dc.b 12,"justl$",0,$69,0 dc.w YJSG-Y9 dc.l 0 dc.b 12,"justr$",0,$69,0 dc.w YJSD-Y9 dc.l 0 dc.b 12,"justc$",0,$69,0 dc.w YJSM-Y9 dc.l 0 dc.b 16,"juliandate",0,0,0 dc.w YTIMEJ-Y9 dc.l 0 GET79K:dc.b 16,"keytest",0,0 dc.w YKEYGET-Y9 dc.l RDKM dc.l 0 dc.b 16,"keyget",0,0,0 dc.w YKEYGET-Y9 dc.l XKEY dc.l 0 GKILL:dc.b 10,"kill",0,13,0 dc.w YKILL-Y9 dc.l 0 GKEY:dc.b 6,"key",0,$71 dc.l 0 GET79L:dc.b 10,"lit",0,13 dc.w YLITT-Y9,$10 dc.l 0 dc.b 14,"limit",0,$74 TLIMIT:dc.l 0 dc.w YLIMT-Y9 dc.l 0 GLOCAL:dc.b 10,"local",0,13 dc.w YLOCAL-Y9 dc.l 0 dc.b 12,"locate",0,15,0 dc.w YCURS-Y9 dc.l 0 dc.b 10,"line",0,13,0 dc.w YLINE-Y9 dc.l 0 dc.b 10,"load$",0,$6B dc.w YLOAD-Y9 dc.l 0 GLOOP:dc.b 10,"loop",0,14,0 dc.w YLOOP-Y9 dc.l 0 dc.b 8,"len",0,9 dc.w YLEN-Y9 dc.l 0 dc.b 10,"lint",0,5,0 dc.w YLINT-Y9 dc.l 0 dc.b 8,"log",0,7 dc.w YLOG-Y9 dc.l 0 dc.b 10,"log10",0,7 dc.w YLOG10-Y9 dc.l 0 dc.b 10,"log1",0,5,0 dc.w YLOG1-Y9 dc.l 0 dc.b 10,"left$",0,$69 dc.w YLEFT-Y9 dc.l 0 dc.b 8,"loc",0,11 dc.w YLOC-Y9 dc.l 0 dc.b 8,"lof",0,11 dc.w YLOF-Y9 dc.l 0 dc.b 16,"lprint",$7F,"dev",0,13,0 dc.w YLPRINTDEV-Y9 dc.l 0 dc.b 10,"lpos",0,0,0 dc.w YLPOS-Y9 dc.l 0 dc.b 12,"lprint",0,13,0 dc.w YLPRINT-Y9 dc.l 0 dc.b 14,"lower$",0,$69,0 dc.w YUPPER-Y9,$5D0 dc.l 0 dc.b 10,"litp",0,11,0 dc.w YLITP-Y9 dc.l 0 dc.b 8,"let",0,13 dc.w YLET-Y9 dc.l 0 dc.b 10,"lset",0,13,0 dc.w YLSET-Y9 dc.l 0 dc.b 18,"l",$7F,"color",0,$79 dc.w YATF-Y9,YATC-Y9,17,$223 dc.l 0 dc.b 18,"l",$7F,"type",0,$79,0 dc.w YATF-Y9,YLTYPE-Y9,15,$23 dc.l 0 dc.b 18,"l",$7F,"width",0,$79 dc.w YATF2-Y9,YATC-Y9,16,$023 dc.l 0 dc.b 14,"l",$7F,"end",0,$76 dc.l TLEND2 dc.w YLEND-Y9 dc.l 0 dc.b 16,"l",$7F,"begin",0,$76 dc.l TLEND1 dc.w YLBEGIN-Y9 dc.l 0 dc.b 10,"load",0,13,0 dc.w YOVER-Y9 dc.l 0 GET79M:dc.b 8,"mod",0,2 dc.w YMODP-Y9 dc.l 0 dc.b 10,"modr",0,6,0 dc.w YMODR-Y9 dc.l 0 dc.b 10,"mods",0,6,0 dc.w YMODS-Y9 dc.l 0 GET79M1:dc.b 8,"max",0,6 dc.w YMAX-Y9 dc.l 0 dc.b 12,"mtimer",0,0,0 dc.w YTIME3-Y9 dc.l 0 dc.b 10,"music",0,13 dc.w YMUS-Y9 dc.l 0 GMIN:dc.b 8,"min",0,6 dc.w YMIN-Y9 dc.l 0 dc.b 12,"max$",0,$6A,0 dc.w YMAXD-Y9,1 dc.l 0 dc.b 12,"min$",0,$6A,0 dc.w YMAXD-Y9,-1 dc.l 0 dc.b 10,"modn",0,4,0 dc.w YMODN-Y9 dc.l 0 dc.b 10,"modd",0,4,0 dc.w YDIVD-Y9 dc.l 0 dc.b 10,"mlen",0,11,0 dc.w YLEN1-Y9 dc.l 0 dc.b 10,"mddiv",0,11 dc.w YMDDIV-Y9 dc.l 0 dc.b 10,"mdmod",0,11 dc.w YMDMOD-Y9 dc.l 0 dc.b 10,"mdgcd",0,11 dc.w YMDPGCD-Y9 dc.l 0 dc.b 10,"mdinv",0,11 dc.w YMDINV-Y9 dc.l 0 dc.b 10,"mdpwr",0,11 dc.w YMDPWR-Y9 dc.l 0 dc.b 12,"mdpwre",0,11,0 dc.w YMDPWRE-Y9 dc.l 0 dc.b 10,"mdff",0,11,0 dc.w YMDFF-Y9 dc.l 0 dc.b 8,"mds",0,11 dc.w YMDS-Y9 dc.l 0 dc.b 10,"mdsmp",0,2 dc.w YMDSMP-Y9 dc.l 0 dc.b 12,"mirror$",0,$69 dc.w YMIRROR-Y9 dc.l 0 dc.b 12,"mid$",0,$78,0 dc.w YMID-Y9,YMIDDC-Y9 dc.l 0 dc.b 10,"mkdir",0,13 dc.w YMKDIR-Y9 dc.l 0 dc.b 18,"mem",$7F,"files",0,$74,0,0 MEMFILES:dc.w 8 dc.w YPILEC-Y9 dc.l 0 dc.b 14,"mousex",0,$79,0 dc.w YMOUSEX-Y9 dc.w YMOUSEXC-Y9 dc.l 0 dc.b 14,"mousey",0,$79,0 dc.w YMOUSEY-Y9 dc.w YMOUSEYC-Y9 dc.l 0 dc.b 12,"mousek",0,0,0 dc.w YMOUSEK-Y9 dc.l 0 GMENU:dc.b 12,"menu",0,$79,0 dc.w YMENU-Y9 dc.w YMENUC-Y9 dc.l 0 GMOUSE:dc.b 10,"mouse",0,13 dc.w YMOUSE-Y9 dc.l 0 GMESSAGE:dc.b 12,"message",0,13 dc.w YMESSAGE-Y9 dc.l 0 dc.b 12,"menu",$7F,"id",0,$B dc.w YMENUID-Y9 dc.l 0 dc.b 10,"mkz$",0,$6B,0 dc.w YMKZD-Y9 dc.l 0 dc.b 10,"mki$",0,$6B,0 dc.w YMKID-Y9 dc.l 0 dc.b 10,"mkl$",0,$6B,0 dc.w YMKLD-Y9 dc.l 0 dc.b 10,"mkx$",0,$6B,0 dc.w WEXPR-Y9 dc.l 0 dc.b 14,"mks$",0,$65,0 dc.w YMKSD-Y9 dc.l IEEE32 dc.l 0 dc.b 14,"mkd$",0,$65,0 dc.w YMKSD-Y9 dc.l IEEE64 dc.l 0 dc.b 10,"mark",0,13,0 dc.w YMARK-Y9 dc.l 0 dc.b 20,"m",$7F,"height",0,$79,0 dc.w YATF2-Y9,YMSIZE-Y9,19,$224 dc.l 0 dc.b 18,"m",$7F,"color",0,$79 dc.w YATF-Y9,YATC-Y9,20,$224 dc.l 0 dc.b 18,"m",$7F,"type",0,$76,0 dc.l MTYPE dc.w YTTYPE-Y9,18 dc.l 0 dc.b 10,"merge",0,13 dc.w YMERGE-Y9 dc.l 0 dc.b 12,"memberp",0,1 dc.w YMEMBERP-Y9 dc.l 0 GET79N:dc.b 10,"next ",0,14 dc.w YNEXT-Y9 dc.l 0 dc.b 20,"nodistingo",0 GNODIST:dc.b $76,0 dc.l MAJMIN-1 dc.w YPRIORF-Y9 dc.l 0 dc.b 12,"nolocal",0,13 dc.w YNOLOC-Y9 dc.l 0 dc.b 12,"nonext",0,13,0 dc.w YNONEXT-Y9 dc.l 0 dc.b 16,"noclock",0,$76 dc.l TCTIM3 dc.w YNOCLOCK-Y9 dc.l 0 dc.b 16,"nodate",0,$76,0 dc.l TCDAT3 dc.w YNOCLOCK-Y9 dc.l 0 dc.b 20,"noboundary",0,$76,0 dc.l TBOUNDA dc.w YNOBOUNDA-Y9 dc.l 0 GNEXTV:dc.b 10,"nextv",0,14 dc.w YNEXTV-Y9 dc.l 0 GNEXTC:dc.b 10,"nextc",0,14 dc.w YNEXTC-Y9 dc.l 0 dc.b 10,"norm",0,1,0 dc.w YNORM-Y9 dc.l 0 dc.b 8,"num",0,1 dc.w YNUM-Y9 dc.l 0 dc.b 10,"numf",0,1,0 dc.w YNUMF-Y9 dc.l 0 dc.b 10,"numr",0,5,0 dc.w YNUMR-Y9 dc.l 0 dc.b 14,"nextperm",0,11,0 dc.w YNEXTPERM-Y9 dc.l 0 dc.b 14,"nextcode",0,0,0 dc.w YNXTCD-Y9 dc.l 0 dc.b 14,"nextline",0,0,0 dc.w YNXTLG-Y9 dc.l 0 GNOT:dc.b 6,"not",0,$75 dc.l 0 dc.b 8,"new",0,13 dc.w YNEW-Y9 dc.l 0 dc.b 10,"name",0,13,0 dc.w YNAME-Y9 dc.l 0 dc.b 16,"notilde",0,$76 dc.l TILDE dc.w YPRIORF-Y9 dc.l 0 GET79O:dc.b 10,"ord",0,3 dc.w YPYDE-Y9 dc.w -1 dc.l 0 GOTHERS:dc.b 10,"others",0,$72,0 dc.l 0 GOR:dc.b 6,"or",0,$75,0 dc.l 0 GET79O1:dc.b 6,"of",0,$72,0 dc.l 0 dc.b 10,"ordf",0,1,0 dc.w YORDF-Y9 dc.l 0 dc.b 8,"on",0,13,0 dc.w YON-Y9 dc.l 0 dc.b 10,"open",0,13,0 dc.w YOPEN-Y9 dc.l 0 dc.b 8,"out",0,13 dc.w YOUT-Y9 dc.l 0 dc.b 10,"out?",0,11,0 dc.w YOUTQ-Y9 dc.l 0 GOFF:dc.b 6,"off",0,$71 dc.l 0 dc.b 10,"ob",$7F,"id",0,$B dc.w YOBID-Y9 dc.l 0 dc.b 16,"originx",0,$74,0,0 ORIGINX:dc.w 0 dc.w YFRMT-Y9 dc.l 0 dc.b 16,"originy",0,$74,0,0 ORIGINY:dc.w 0 dc.w YFRMT-Y9 dc.l 0 dc.b 12,"origin",0,13,0 dc.w YORIGIN-Y9 dc.l 0 dc.b 8,"odd",0,11 dc.w YODD-Y9 dc.l 0 dc.b 12,"oct$",0,$6B,0 dc.w YHEX-Y9,8 dc.l 0 GET79P:dc.b 10,"print",0,13 dc.w YPRINT-Y9 dc.l 0 dc.b 14,"precision",0,13 dc.w YPRC-Y9 dc.l 0 dc.b 14,"procedure",0,13 GPROCEDURE=*-1 dc.w YPROC-Y9 dc.l 0 dc.b 10,"peekb",0,11 dc.w YPKB-Y9 dc.l 0 dc.b 10,"pokeb",0,13 dc.w YPOB-Y9 dc.l 0 dc.b 12,"peekbs",0,11,0 dc.w YPKBS-Y9 dc.l 0 dc.b 12,"pokebs",0,13,0 dc.w YPOBS-Y9 dc.l 0 dc.b 10,"pokew",0,13 dc.w YPOW-Y9 dc.l 0 dc.b 12,"pokews",0,13,0 dc.w YPOWS-Y9 dc.l 0 dc.b 12,"prfact",0,11,0 dc.w YPRFC-Y9 dc.l 0 dc.b 12,"prfact$",0,$6B dc.w YPRFACTD-Y9 dc.l 0 dc.b 10,"prinv",0,11 dc.w YPRINV-Y9 dc.l 0 dc.b 10,"prime",0,11 dc.w YPREM-Y9 dc.l 0 dc.b 10,"polyp",0,11 dc.w YPOLYP-Y9 dc.l 0 dc.b 10,"prtst",0,11 dc.w YPRTST-Y9 dc.l 0 dc.b 10,"pokel",0,13 dc.w YPOL-Y9 dc.l 0 dc.b 12,"pokels",0,13,0 dc.w YPOLS-Y9 dc.l 0 dc.b 12,"pokecb",0,13,0 dc.w YPKCB-Y9 dc.l 0 dc.b 12,"pokecw",0,13,0 dc.w YPKCW-Y9 dc.l 0 dc.b 12,"polyln",0,3,0 dc.w YPYVN-Y9 dc.l 0 dc.b 12,"polymn",0,3,0 dc.w YPYMN-Y9 dc.l 0 dc.b 10,"polyl",0,3 dc.w YPYV-Y9 dc.l 0 dc.b 10,"polym",0,3 dc.w YPYM-Y9 dc.l 0 dc.b 10,"polyn",0,3 dc.w YPYNR-Y9 dc.l 0 dc.b 10,"peekw",0,11 dc.w YPKW-Y9 dc.l 0 dc.b 12,"peekws",0,11,0 dc.w YPKWS-Y9 dc.l 0 dc.b 10,"peekl",0,11 dc.w YPKL-Y9 dc.l 0 dc.b 12,"peekls",0,11,0 dc.w YPKLS-Y9 dc.l 0 dc.b 10,"peek$",0,$6B dc.w YPEKC-Y9 dc.l 0 dc.b 12,"peekz$",0,$6B,0 dc.w YPEKCZ-Y9 dc.l 0 dc.b 20,"precision2",0,$74,0,0,0 PRECIS2:dc.w 34 dc.w YPRC2-Y9 dc.l 0 dc.b 8,"pi",0,0,0 dc.w YAPI-Y9 dc.l 0 dc.b 10,"psing",0,2 dc.w YPSG-Y9 dc.l 0 GET79P1:dc.b 10,"page",0,15,0 dc.w YPAGE-Y9 dc.l 0 dc.b 10,"prod",0,11,0 dc.w YPROD-Y9 dc.l 0 dc.b 18,"ptsin",0,$79 GPTSIN=*-1 dc.w YFCNT-Y9,YCCNT-Y9 dc.l PTSIN dc.b 0,1 dc.l 0 dc.b 20,"ptsout",0,$79,0 GPTSOUT=*-2 dc.w YFCNT-Y9,YCCNT-Y9 dc.l PTSOUT dc.b 0,1 dc.l 0 dc.b 10,"ppwr",0,11,0 dc.w YPUIS-Y9 dc.l 0 dc.b 12,"permute",0,13 dc.w YPERMUTE-Y9 dc.l 0 dc.b 14,"pack",0,$74,0 LPACK:dc.l 100000 dc.w YPACK-Y9 dc.l 0 dc.b 8,"pop",0,0 dc.w YPOP-Y9 dc.l 0 dc.b 10,"pop$",0,$60,0 dc.w YPOPC-Y9 dc.l 0 dc.b 10,"push",0,13,0 dc.w YPUSH-Y9 dc.l 0 dc.b 10,"push$",0,13 dc.w YPUSHC-Y9 dc.l 0 dc.b 14,"print",$7F,"dev",0,13 dc.w YPRINTDEV-Y9 dc.l 0 dc.b 20,"page",$7F,"width",0,$76,0 dc.l IMPX dc.w YWIDTH-Y9 dc.l 0 dc.b 20,"page",$7F,"length",0,$76 dc.l IMPY dc.w YWIDTH-Y9 dc.l 0 dc.b 8,"pos",0,0 dc.w YPOS-Y9 dc.l 0 dc.b 8,"put",0,13 dc.w YPUT-Y9 dc.l 0 dc.b 10,"pause",0,13 dc.w YPAUSE-Y9 dc.l 0 dc.b 12,"pbox",0,13,0 dc.w YVR-Y9,-1 dc.l 0 dc.b 12,"prbox",0,13 dc.w YVR-Y9,-9 dc.l 0 dc.b 12,"pibox",0,13 dc.w YVR-Y9,114 dc.l 0 dc.b 12,"pcircle",0,13 dc.w YPCIRCLE-Y9 dc.l 0 dc.b 14,"pellipse",0,13,0 dc.w YPELLIPSE-Y9 dc.l 0 dc.b 10,"plot",0,13,0 dc.w YPSET-Y9 dc.l 0 dc.b 16,"polyfill",0,13,0 dc.w YPOLYFILL-Y9,9 dc.l 0 dc.b 16,"polyline",0,13,0 dc.w YPOLYFILL-Y9,6 dc.l 0 dc.b 16,"polymark",0,13,0 dc.w YPOLYFILL-Y9,7 dc.l 0 dc.b 8,"ptr",0,11 dc.w YADR-Y9 dc.l 0 dc.b 12,"ptrptr",0,11,0 dc.w YADRN-Y9 dc.l 0 dc.b 12,"phantom",0,$10 dc.w 0 dc.l 0 dc.b 12,"point",0,11 dc.w YPOINT-Y9,0 dc.l 0 dc.b 10,"quit",0,13,0 dc.w YQUIT-Y9 dc.l 0 GET79R:dc.b 10,"root",0,2,0 dc.w YRO-Y9 dc.l 0 GREPEAT:dc.b 12,"repeat",0,14,0 dc.w YREPEAT-Y9 dc.l 0 dc.b 12,"restore",0,15 dc.w YRESTR-Y9 dc.l 0 dc.b 12,"rscreen",0,13 dc.w YRSCR-Y9 dc.l 0 dc.b 12,"random",0,11,0 dc.w YRANDOM-Y9 dc.l 0 dc.b 8,"rnd",0,0 dc.w YRND-Y9 dc.l 0 dc.b 14,"randomize",0,13 dc.w YRANDOMIZE-Y9 dc.l 0 dc.b 8,"red",0,3 dc.w YCEFL-Y9 dc.l 0 dc.b 10,"redf",0,1,0 dc.w YREDF-Y9 dc.l 0 GET79Z:dc.b 12,"return",0,14,0 dc.w YRET-Y9 dc.l 0 dc.b 22,"register",0,$79,0 GREGISTER=*-2 dc.w YFCNT-Y9,YCCNT-Y9 dc.l REGIS dc.b 15,3 dc.l 0 dc.b 20,"resolution",0,$76,0 dc.l RESOL dc.w YRESOL-Y9 dc.l 0 dc.b 16,"resolution0",0,$70 dc.b $40 RESOLC:dc.b 2 dc.l 0 dc.b 12,"rinstr",0,10,0 dc.w YRIST-Y9 dc.l 0 dc.b 12,"rinstrk",0,10 dc.w YRISTK-Y9 dc.l 0 dc.b 10,"read",0,15,0 dc.w YREAD-Y9 dc.l 0 dc.b 8,"run",0,13 dc.w YRUN-Y9 dc.l 0 dc.b 12,"right$",0,$69,0 dc.w YRIG-Y9 dc.l 0 dc.b 8,"rem",0,15 dc.w YPAGE-Y9 dc.l 0 dc.b 10,"rmdir",0,13 dc.w YRMDIR-Y9 dc.l 0 dc.b 16,"r",$7F,"files",0,$74,0,0 RFILES:dc.w 8 dc.w YPILEC-Y9 dc.l 0 dc.b 10,"rseek",0,13 dc.w YRSEEK-Y9 dc.l 0 dc.b 12,"relseek",0,13 dc.w YRELSEEK-Y9 dc.l 0 dc.b 10,"rset",0,13,0 dc.w YRSET-Y9 dc.l 0 dc.b 14,"remember",0,13,0 dc.w YREMEMBER-Y9 dc.l 0 dc.b 12,"ratnump",0,11 dc.w YRATNUMP-Y9 dc.l 0 dc.b 12,"rbox",0,13,0 dc.w YVR-Y9,-8 dc.l 0 dc.b 10,"re",0,11,0 dc.w YREIM-Y9,0 dc.l 0 dc.b 16,"reg",$7F,"num",0,$70 dc.w 4 REGNUM:dc.l $10000 dc.l 0 GET79S:dc.b 10,"stop",0,15,0 dc.w YSTOP-Y9 dc.l 0 dc.b 10,"subs",0,2,0 dc.w YSUBS-Y9 dc.l 0 GSELECT:dc.b 12,"select",0,14,0;ancien case dc.w YSELECT-Y9 dc.l 0 dc.b 14,"subsr",0,1 dc.w YSUBSR-Y9 dc.l XRULE4 dc.l 0 dc.b 16,"subsrr",0,1,0 dc.w YSUBSR-Y9 dc.l XRULE5 dc.l 0 dc.b 10,"sroot",0,3 dc.w YSROOT-Y9 dc.l 0 dc.b 12,"screen$",0,$60 dc.w YCSCR-Y9 dc.l 0 dc.b 12,"sixteen",0,$70 dc.w $4010 dc.l 0 dc.b 8,"sin",0,5 dc.w YSIN-Y9 dc.l 0 dc.b 10,"sinh",0,5,0 dc.w YSINH1-Y9 dc.l 0 dc.b 8,"sgn",0,5 dc.w YSGN-Y9 dc.l 0 dc.b 10,"shyg",0,4,0 dc.w YSHYG-Y9 dc.l 0 dc.b 10,"sexp",0,4,0 dc.w YSEXP-Y9 dc.l 0 dc.b 10,"scos",0,4,0 dc.w YSCOS-Y9 dc.l 0 dc.b 10,"ssin",0,4,0 dc.w YSSIN-Y9 dc.l 0 dc.b 10,"slog1",0,4 dc.w YSLOG-Y9 dc.l 0 dc.b 10,"satn",0,4,0 dc.w YSATN-Y9 dc.l 0 dc.b 16,"systab",0,$70,0 dc.w 4 dc.l UAES0 dc.l 0 GET79Q:dc.b 8,"sqr",0,7 dc.w YSQR-Y9 dc.l 0 dc.b 8,"sum",0,11 dc.w YSUM-Y9 dc.l 0 dc.b 10,"save$",0,13 dc.w YSAVED-Y9 dc.l 0 dc.b 14,"showm",0,$76 dc.l MOUSE0 dc.w YSHOWM-Y9 dc.l 0 dc.b 14,"showc",0,$76 dc.l MOUSE0 dc.w YSHOWC-Y9 dc.l 0 dc.b 16,"showcm ",0,$76 dc.l MOUSE0 dc.w YSHOWCM-Y9 dc.l 0 dc.b 10,"sort",0,13,0 dc.w YSORT-Y9 dc.l 0 dc.b 12,"search",0,11,0 dc.w YSEARCH-Y9 dc.l 0 GSTEP:dc.b 8,"step ",0,$71 dc.l 0 dc.b 10,"str$",0,$6B,0 dc.w YSTR1-Y9 dc.l 0 dc.b 12,"settime",0,13 dc.w YSETTIME-Y9 dc.l 0 dc.b 10,"seek",0,13,0 dc.w YSEEK-Y9 dc.l 0 dc.b 8,"spc",0,$6B dc.w YSPC-Y9 dc.l 0 dc.b 12,"space$",0,$6B,0 dc.w YSPC-Y9 dc.l 0 dc.b 12,"string$",0,$6B dc.w YSTRINGD-Y9 dc.l 0 dc.b 14,"setmouse",0,13,0 dc.w YSETMOUSE-Y9 dc.l 0 dc.b 10,"sure?",0,9 dc.w YSUREQ-Y9 dc.l 0 dc.b 10,"save",0,13,0 dc.w YSAVE-Y9 dc.l 0 dc.b 12,"stack",0,$79 GSTACK=*-1 dc.w YSTACKF-Y9,YSTACK-Y9 dc.l 0 dc.b 14,"stack$",0,$78,0 GSTACKD=*-2 dc.w YSTACKDF-Y9,YSTACKD-Y9 dc.l 0 dc.b 14,"s",$7F,"xqt",0,$74 PILEEXEC:dc.l $1000 dc.w YTAMP-Y9 dc.l 0 dc.b 14,"s",$7F,"rem",0,$74,0,0 PILEREM:dc.w 10 dc.w YPILEC-Y9 dc.l 0 dc.b 14,"s",$7F,"pro",0,$74 PILEPROC:dc.l 4000 dc.w YTAMP-Y9 dc.l 0 dc.b 14,"s",$7F,"var",0,$74,0,0 PILEVAR:dc.w 500 dc.w YPILE-Y9 dc.l 0 dc.b 16,"s",$7F,"cond",0,$74,0,0,0 PILECOND:dc.w 10 dc.w YPILEC-Y9 dc.l 0 dc.b 14,"s",$7F,"src",0,$74 TAMPSRC:dc.l $500 dc.w YTAMP-Y9 dc.l 0 dc.b 16,"s",$7F,"name",0,$74,0 TAMPNOM:dc.l $500 dc.w YTAMP-Y9 dc.l 0 dc.b 16,"s",$7F,"menu",0,$74,0 TAMPMENU:dc.l $500 dc.w YTAMP-Y9 dc.l 0 dc.b 14,"screen",$7F,"x",0,$70,0 RESOLX:dc.w $4050 dc.l 0 dc.b 14,"screen",$7F,"y",0,$70,0 RESOLY:dc.w $401B dc.l 0 dc.b 14,"screen",$7F,"c",0,$70,0 RESOLI:dc.w $4002 dc.l 0 dc.b 14,"screen",$7F,"px",0,$70 RESOLPX:dc.w $4280 dc.l 0 dc.b 14,"screen",$7F,"py",0,$70 RESOLPY:dc.w $4190 dc.l 0 dc.b 14,"screen",$7F,"pc",0,$70 RESOLPC:dc.w $4001 dc.l 0 dc.b 14,"screen",$7F,"cx",0,$70 RESOLCX:dc.w $4008 dc.l 0 dc.b 14,"screen",$7F,"cy",0,$70 RESOLCY:dc.w $4008 dc.l 0 GET79T:dc.b 10,"type ",0,13 dc.w YTYP-Y9 dc.l 0 GTIMER:dc.b 10,"timer",0,0 dc.w YTIME-Y9 dc.l 0 dc.b 12,"taylor",0,2,0 dc.w YDL-Y9 dc.l 0 dc.b 12,"time$",0,$78 dc.w YTIMED-Y9 dc.w YSETTIME1-Y9 dc.l 0 dc.b 12,"time",$7F,"d",0,0,0 dc.w YTIMED1-Y9 dc.l 0 GTHEN:dc.b 8,"then ",0,$71 dc.l 0 GTO:dc.b 6,"to ",0,$71 dc.l 0 dc.b 8,"tan",0,5 dc.w YTAN-Y9 dc.l 0 dc.b 10,"tanh",0,5,0 dc.w YTANH1-Y9 dc.l 0 dc.b 16,"typchr",0,$70,0 dc.w 4 dc.l TYPCAR dc.l 0 dc.b 16,"time",$7F,"h",0,$77,0 GTIMEH:dc.w 0 dc.w YTIMEH-Y9,0 dc.l 0 dc.b 16,"time",$7F,"m",0,$77,0 GTIMEM:dc.w 0 dc.w YTIMEM-Y9,0 dc.l 0 dc.b 16,"time",$7F,"s",0,$77,0 GTIMES:dc.w 0 dc.w YTIMES-Y9,0 dc.l 0 dc.b 16,"time",$7F,"y",0,$77,0 GTIMEY:dc.w 0 dc.w YTIMEY-Y9,YFTIMEY-KN22 dc.l 0 dc.b 16,"time",$7F,"mo",0,$77 GTIMEMO:dc.w 0 dc.w YTIMEMO-Y9,YFTIMEMO-KN22 dc.l 0 dc.b 16,"time",$7F,"n",0,$77,0 GTIMEN:dc.w 0 dc.w YTIMEN-Y9,YFTIMEN-KN22 dc.l 0 GTAB:dc.b 6,"tab",0,$71 dc.l 0 dc.b 14,"tilde",0,$76 dc.l TILDE dc.w YPRIORD-Y9 dc.l 0 dc.b 20,"t",$7F,"height",0,$79,0 dc.w YATF2-Y9,YMSIZE-Y9,12,$226 dc.l 0 dc.b 18,"t",$7F,"color",0,$79 dc.w YATF-Y9,YATC-Y9,22,$226 dc.l 0 dc.b 18,"t",$7F,"type",0,$76,0 dc.l TEFFET dc.w YTTYPE-Y9,106 dc.l 0 dc.b 18,"t",$7F,"angle",0,$79 dc.w YATF-Y9,YATC-Y9,13,$426 dc.l 0 dc.b 18,"t",$7F,"font",0,$79,0 dc.w YATF-Y9,YATC-Y9,21,$26 dc.l 0 dc.b 12,"text",0,13,0 dc.w YVR-Y9,8 dc.l 0 dc.b 8,"two",0,$70 dc.w $4002 dc.l 0 dc.b 8,"ten",0,$70 dc.w $400A dc.l 0 GUNTIL:dc.b 10,"until",0,14 dc.w YUNTIL-Y9 dc.l 0 dc.b 14,"upper$",0,$69,0 dc.w YUPPER-Y9,$590 dc.l 0 dc.b 12,"upper1$",0,$69 dc.w YUPPER1-Y9 dc.l 0 GUSING:dc.b 8,"using",0,$71 dc.l 0 GET79V:dc.b 12,"var ",0,13,0 dc.w YCVAR-Y9,$30 dc.l 0 dc.b 12,"varn",0,$31,0 dc.w $7FFF,$8000 dc.l 0 dc.b 22,"videoinverse",0,$76,"p" dc.l INVERSE dc.w YVIDEOI-Y9 dc.l 0 dc.b 22,"videonormal ",0,$76,"q" dc.l INVERSE dc.w YVIDEOI-Y9 dc.l 0 dc.b 14,"vdive",0,13 dc.w YVOP-Y9 dc.l XHDIVE dc.l 0 dc.b 12,"varnum",0,11,0 dc.w YVARNUM-Y9 dc.l 0 dc.b 8,"val",0,9 dc.w YVAL-Y9 dc.l 0 GET79Y:dc.b 10,"value" GVALU:dc.w $73,0 dc.l 0 dc.b 12,"verify",0,0,0 dc.w YVERFY-Y9 dc.l 0 dc.b 8,"vdi",0,13 dc.w YVDI-Y9 dc.l 0 dc.b 10,"vdir",0,13,0 dc.w YVDIR-Y9 dc.l 0 dc.b 10,"vdif",0,11,0 dc.w YVDIF-Y9 dc.l 0 dc.b 10,"vdirf",0,11 dc.w YVDIRF-Y9 dc.l 0 dc.b 12,"v",$7F,"h",0,$74,0,0 UAES:dc.w 0 dc.w YFORMATM-Y9 dc.l 0 dc.b 10,"v",$7F,"h0",0,0,0 dc.w YVH0-Y9 dc.l 0 dc.b 14,"vmul",0,13,0 dc.w YVOP-Y9 dc.l XHMUL dc.l 0 dc.b 14,"vadd",0,13,0 dc.w YVOP-Y9 dc.l XHADD dc.l 0 dc.b 14,"vdiv",0,13,0 dc.w YVOP-Y9 dc.l XHDIV dc.l 0 dc.b 14,"vsub",0,13,0 dc.w YVOP-Y9 dc.l XHSUB dc.l 0 dc.b 10,"vset$",0,$6B dc.w YVSET-Y9 dc.l 0 dc.b 14,"vcolor",0,$79,0 GVCOLOR=*-2 dc.w YVCOLORF-Y9,YVCOLOR-Y9 dc.l 0 dc.b 14,"vpoint",0,11,0 dc.w YPOINT-Y9,2 dc.l 0 dc.b 16,"version",0,$74 VERSION:dc.l 120 dc.w YVERSION-Y9 dc.l 0 GWHILE:dc.b 10,"while",0,14 dc.w YWHILE-Y9 dc.l 0 GWEND:dc.b 10,"wend",0,14,0 dc.w YWEND-Y9 dc.l 0 dc.b 12,"words$",0,$60,0 dc.w YWORDSD-Y9 dc.l 0 dc.b 10,"write",0,13 dc.w YWRITE-Y9 dc.l 0 dc.b 20,"work",$7F,"out",0,0,0 dc.w YWORKOUT-Y9 dc.l WORKOUT dc.b 63,1 dc.l 0 GET79X:dc.b 10,"xbios",0,11 dc.w YXBIOS-Y9 dc.l 0 dc.b 14,"xvcolor",0,$79 GXVCOLOR=*-1 dc.w YXVCOLORF-Y9,YXVCOLOR-Y9 dc.l 0 dc.b 8,"xqt",0,14 dc.w YXQT-Y9 dc.l 0 GXOR:dc.b 6,"xor",0,$75 GETFIN:dc.l -1 MA22:dc.b "BODH",2,8,10,16 MA220:dc.b "ACEI" MA390:dc.b "STOP ",0 MA451:dc.b "INPUT >",0 MA456:dc.b "*DONNEE IGNOREE* ",0 PB960:dc.b "B_INIT",0 PB961:dc.b "B_DEBUG",0 PC16:dc.b "MODIFICATION DE STRUCTURE",0 TDRUN:dc.b "RUN",0 TDIMM:dc.b "CALCUL",0 GAS40:dc.b "charn($0000),",0 TYP80:dc.b "CUEAAAACEEEIIIAA" dc.b "E",0,0,"OOOUUYOU",$9B,$9C,$9D,$9E,$9F dc.b "AIOUNNAO",$A8,$A9,$AA,$AB,$AC,$AD,$AE,$AF dc.b "AOOO",1,1,"AAO" even XEM62A:dc.w $0C70,$0061,$0000 dc.w $0C6F,$0453,$007F dc.w $0C6E,$0253,$007F dc.w $0C6D,$0053,$007F dc.w $0C6C,$0843,$0000 dc.w $0C6B,$003F,$0000 dc.w $0C6A,$083C,$0000 dc.w $0C69,$0247,$0000 dc.w $0C67,$0047,$0000 dc.w $0C60,$001A,$005E dc.w $0C1C,$0052,$0000 dc.w $0C17,$0252,$0030 dc.w $0C16,$0261,$0000 ;ajout 1 de 1000d MANQUE1dansS5: dc.w $A82;1C972 0A82 dc.w $81B;1C974 081B dc.w $5D;1C976 005D dc.w $A7C;1C978 0A7C dc.w $81A;1C97A 081A dc.w $5B;1C97C 005B dc.w $A34;1C97E 0A34 dc.w $828;1C980 0828 dc.w $5C;1C982 005C dc.w $A32;1C984 0A32 dc.w $82B;1C986 082B dc.w $A8;1C988 00A8 dc.w $A31;1C98A 0A31 dc.w $A2B;1C98C 0A2B dc.w $7E;1C98E 007E dc.w $A26;1C990 0A26 dc.w $22B;1C992 022B dc.w $7C;1C994 007C dc.w $882;1C996 0882 dc.w $A1B;1C998 0A1B dc.w $7D;1C99A 007D dc.w $87C;1C99C 087C dc.w $A1A;1C99E 0A1A dc.w $7B;1C9A0 007B ;fin de l'ajout 1 dc.w $0616,$0661 T1C9A6:dc.w $0000,$0000; adresse ajout 1000d ; ajout 2 de 1000d MANQUE2dansS5 dc.b $A;1C9AA 0A dc.b "+",0;1C9AB 2B00 dc.b $7E,2;1C9AD 7E02 dc.b "+",0;1C9AF 2B00 dc.b "|";1C9B1 7C dc.b 8;1C9B2 08 dc.b "+",0;1C9B3 2B00 dc.b "@",$A;1C9B5 400A dc.b "+",0;1C9B7 2B00 dc.b $7E,2;1C9B9 7E02 dc.b "+",0;1C9BB 2B00 dc.b "|",0;1C9BD 7C00 dc.b "+",0;1C9BF 2B00 dc.b "#",0;1C9C1 2300 dc.b "+",0;1C9C3 2B00 dc.b "#";1C9C5 23 dc.b 8;1C9C6 08 dc.b "+",0;1C9C7 2B00 dc.b "@",0;1C9C9 4000 dc.b 0,0,0;1C9CB 000000 ;fin de l'ajout 2 YGEMT:dc.b 0,4,1,4,1,1,1,4,4,3,3,4,0,0,1,0 dc.b 4,4,4,4,15,0,0,0,0,4,3,0,0,0,0,0 dc.b 0,0,0,0,0,0,0,0,0,0,4,1,4,1,0,4 dc.b 4,13,0,0,0,0,13,0,0,3,3,3,13,13,1,31 dc.b 31,3,$35,$35,13,1,5,13,3,3,31,$7F,1,0,13,4 dc.b 0,0,0,0,0,0,31,$35 dc.l $1D5;PARTIE DE YBIOST YBIOST:dc.b 3,1,1,5,-4,7,4,1,1,1,4,1 dc.l $DD;PARTIE DE YXBIOST dc.l $F5 dc.l $555 dc.l $3D55D dc.l $3D55 YXBIOST:dc.b 31,0,4,4,4,$3D,3,5,-4,-4,-8,4,7,7,1,-12 dc.b $3F,4,-16,-4,4,5,3,4,4,7,1,1,5,1,1,$57 dc.b 3,1,4,5,3,4,3,4,0,5,-20,-20,1,0,$57,0 dc.l 0,0,0,0 dc.b 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 dc.b 1,4,1,5,$17,$17,1,1 MC17:dc.w $601 dc.w MC20-* dc.w MC21-* dc.w MC23-* dc.w MC25-* dc.w MC27-* dc.w MC29-* dc.w MC31-* dc.w 0 MC18:dc.w 1 dc.w MC32-* dc.w $11 dc.w GET79L+1-* dc.w $21 dc.w GET79I+1-* dc.w $31 dc.w GET79V+1-* dc.w $41 dc.w GET79C+1-* dc.w $450 dc.w MC33-* dc.w MC33-* dc.w MC330-* dc.w MC33-* dc.w MC331-* dc.w $970 dc.w MC34-* dc.w MC340-* dc.w MC340-* dc.w MC341-* dc.w MC341-* dc.w MC340-* dc.w MC341-* dc.w MC341-* dc.w MC355-* dc.w MC345-* dc.w 0 MC21:dc.b "(expr[, ])" MC20:dc.b 0 MC23:dc.b "(poly[, ])",0 MC25:dc.b "(r‚el[, ])",0 MC27:dc.b "(nombre complexe[, ])",0 MC29:dc.b "(char[, ])",0 MC31:dc.b "( [, ])",0 MC32:dc.b "commande",0 MC33:dc.b "label/proc",0 MC330:dc.b "label de V_fonction",0 MC331:dc.b "label de C_fonction",0 MC34:dc.b "constante",0 MC340:dc.b "d‚terminant",0 MC341:dc.b "variable d'‚tat",0 MC345:dc.b "variable d'‚tat, commande ou " MC35:dc.b "V_fonction",0 MC355:dc.b "variable d'‚tat, commande ou " MC36:dc.b "C_fonction",0 MC37:dc.b "inconnu",0 MC38:dc.b " est de type ",0 GED12:dc.b "(min)" GEE27:dc.b 1,0,0,0,1,1,2,2,0,1,0,1,0,1,2,2,1,1,1,0,0,0 even MC96:dc.w 3822,3608,3405,3214,3034,2863 dc.w 2703,2551,2408,2273,2145,2025 MUSV1:dc.b 1,36,10,8,$80,1,10,251,0,")" MUSV:dcb.b 10,$FF MUSD:dc.b 8,10,7,$FE MUSF:dc.w $800,$900,$A00 dc.l $7FFFF00 MUSA:dc.w $128 dc.w MD10-* dc.w MD10-* dc.w $D6D dc.w MD12-* dc.w MD14-* dc.w MD16-* dc.w MD18-* dc.w MD20-* dc.w MD24-* dc.w MD26-* dc.w MD28-* dc.w MD30-* dc.w MD32-* dc.w MD34-* dc.w MD36-* dc.w MD37-* dc.w MD38-* dc.w 0 HH70:dc.w $D dc.w HI24-*;CR dc.w $C40 dc.w GEA40-*;@ dc.w HI25-*;A dc.w HI26-*;B dc.w HI28-*;C dc.w HI23-*;D dc.w HI31-*;E dc.w HI32-*;F dc.w HI27-*;G dc.w HI33-*;H dc.w HI36-*;I dc.w HI36-*;J dc.w HI10-*;K dc.w HI40-*;L dc.w 0 GEX85:dc.b "”CR SSal" dc.b "”Arret" dc.b "”Break" dc.b "”C Brks" dc.b "”D Rts" dc.b "”E Scrn" dc.b "”Fois" dc.b "”H Cycl" dc.b "”I/J Run" dc.b "”K Nop" dc.b "”SP SSsr" dc.b "”Lg 2”Lg 3”Lg 4”Lg 5”Lg 6”Lg 7”Lg 8”Lg 9" dc.b "”Loop xit" dc.b "””Arg @§¦¯" dc.b "®DEBUG",0 GEX86:dc.b "”CR SSal" dc.b "”Arret" dc.b "”””D Rts" dc.b "”””H Cycl" dc.b "”I/J Run" dc.b "”K Dbug" dc.b "”SP SSsr" dc.b "”Lg 2”Lg 3”Lg 4”Lg 5”Lg 6”Lg 7”Lg 8”Lg 9" dc.b "”Loop xit" dc.b "§Clr¦¯" dc.b "®ECRAN DU PROGRAMME (DEBUG)",0 GEB41:dc.b "B_TRACE",0 GEB44:dc.b "B_END",0 GEA41:dc.b "PAS D'ARGUMENT",0 GEA42:dc.b "NUMERO DE L'ARGUMENT >",0 GEA43:dc.b " ARGUMENTS",0 HH82:dc.b "FOIS>",0 HH83:dc.b "DEBUG VA EXECUTER LA LIGNE ",0 HH85:dc.b "(XQT)",0 U3F85D:dc.b "BREAKPT>",0 GEB75:dc.b 0,"PRINT/A/" MA571:dc.b 0,"if " MA281:dc.b 12,0 even GED60:dc.w 8,0,0 TTAES:dc.b 1,$61,$61,$51,$61,$59,0,0,0,1 dc.b 1,$1D,$2D,$51,$11,$8F,$11,0,0,0 dc.b $59,$61,$61,$61,$A9,$59,0,0,0,0 dc.b $61,$59,$81,$71,$5B,$61,$72,$91,0,0 dc.b $59,$99,$59,9,$55,$6B,$62,0,0,0 dc.b 0,0,0,0,0,0,0,0,0,0 dc.b $23,$43,$31,$41,$41,$71,$69,5,$59,5 dc.b $51,$51,0,0,0,0,0,0,0,0 dc.b $A2,$F2,0,0,0,0,0,0,0,0 dc.b $29,$29,9,9,$15,$31,$11,9,$35,1 dc.b $51,1,$11,$61,$59,0,0,0,0,0 dc.b $A1,$B9,$59,$59,$51,$A1 TVDI:dc.b $22,$20,$20,$22,$22,$20,$30,$42,$42,$20 dc.b -1,$B,0,0,0,0,-2,-2,$10,-2 dc.b -5,-1,$10,1,4,1,$10,1,1,$10 dc.b 1,1,1,1,1,1,2,-1,$10,1 dc.b -3,$12,1,2,-1,0,0,0,0,2 dc.b $B,0,1,$11,1,$10,1,1,2,$41 dc.b 0,-6,-3,1,$20,1,0,1,0,1 dc.b 1,$43,1,0,0,0,0,0,0,$21,1,0 GA250:dc.b "AUOIR" GAM36:dc.b "!&\\#*.$+-",0 even TCONSTF0:dc.l $4000 GA29:dc.b "vid:ikb:mid:con:aux:lst:vbs:lbs:nul:mem:" dc.l GDATAA-7;| dc.l GACCESS-9;| dc.l GDATAC-7;| dc.l GET79C+1;| dc.l GDATAV-7;| dc.l GET79V+1;| GEB90:dc.l GDATAI-7;| dc.l GET79I+1;| T226:dc.b $1B,"b",255,$1B,"c",0,$1B,"H" UAPPL:dc.w 1 TYPCAR1:dc.b "#.?_",$7F,0,"‚Š‡",$83,$88,$8C,$93,0 UAES0:dc.w 2 VDIPB:dc.l CONTRL,INTIN,PTSIN,INTOUT,PTSOUT AESPB:dc.l CONTROL,GLOBAL,AINTIN,AINTOUT,ADDRIN,ADDROUT MF44:dc.b "^",3 dc.b 27,"S0",0,0,0,0,0 MF46:dc.b 22,2 dc.b 27,"T",0,0,0,0,0,0 MF48:dc.b "(",3 dc.b 27,"S1",0,0,0,0,0 MF50:dc.b ")",2 dc.b 27,"T",0,0,0,0,0,0 IMPY:dc.w 59 IMPX:dc.w 80 IMPC:dc.b $E3,$F5,$E5,$E1,$E1,$E1,$E1,$87,$88,$89,$E5,$E9,$8C,$8D,$8E,$8F dc.b $C1,$DA,$C5,$D2,$D4,$D9,$D5,$F5,$CF,$D0,$C9,$9B,$EC,$9D,$D1,$D3 dc.b $C4,$C6,$C7,$C8,$CA,$CB,$CC,$CD,$F5,$A9,$AA,$AB,$D7,$D8,$C3,$D6 dc.b $C2,$CE,$B2,$B3,$B4,$B5,$B6,$B7,$B8,$B9,$27,$BB,$BC,$BD,$BE,$BF dc.b $C0,$C1,$C2,$C3,$C4,$C5,$C6,$C7,$C8,$C9,$CA,$CB,$CC,$CD,$CE,$CF dc.b $D0,$D1,$D2,$D3,$D4,$D5,$D6,$D7,$D8,$D9,$DA,$DB,$DC,$DD,$DE,$DF dc.b $E0,$E1,$E2,$E3,$E4,$E5,$E6,$E7,$E8,$E9,$EA,$EB,$EC,$ED,$EE,$EF dc.b $F0,$F1,$F2,$F3,$F4,$F5,$F6,$F7,$F8,$F9,$FA,$FB,$FC,$FD,$FE,$FF TVARDC:dc.w 0 VARCMP:dc.w 1 dc.l 16 dc.l 1 TCMPX:dc.w 0,1,2,$4001,0,$4001 WRNLOG:dc.w $1040,$208 dc.l $B17217F7,$D1CF79AB,$C9E3B398,$3F2F6AF,$40F34326,$7298B62D dc.l $8A0D175B,$8BAAFA2B,$E7B87620,$6DEBAC98,$559552FB,$4AFA1B10 dc.l $ED2EAE35,$C1382144,$27573B29,$1169B825,$3E96CA16,$224AE8C5 dc.l $1ACBDA11,$317C387E,$B9EA9BC3,$B136603B,$256FA0EC,$7657F74B dc.l $72CE87B1,$9D6548CA,$F5DFA6BD,$38303248,$655FA187,$2F20E3A2 dc.l $DA2D97C5,$F3FD5C6,$7F4CA11,$FB5BFB90,$610D30F8,$8FE551A2 dc.l $EE569D6D,$FC1EFA15,$7D2E23DE,$1400B396,$17460775,$DB8990E5 dc.l $C943E732,$B479CD33,$CCCC4E65,$9393514C,$4C1A1E0B,$D1D6095D dc.l $25669B33,$3564A337,$6A9C7F8A,$5E148E82,$74DB601,$5CFE7AA3 dc.l $C480A54,$17350D2C,$955D5179,$B1E17B9D,$AE313CDB,$6C606CB1 dc.l $78F735D,$1B2DB31B,$5F50B518,$5064C18B,$4D162DB3,$B365853D dc.l $7598A195,$1AE273EE,$5570B6C6,$8F969834,$96D4E6D3,$30AF889B dc.l $44A02554,$731CDC8E,$A17293D1,$228A4EF9,$8D6F5177,$FBCF0755 dc.l $268A5C1F,$9538B982,$61AFFD44,$6B1CA3CF,$5E9222B8,$8C66D3C5 dc.l $422183ED,$C9942109,$BBB16FA,$F3D949F2,$36E02B20,$CEE886B9 dc.l $5C128D5,$3D0BD2F9,$62136319,$6AF50302,$60E499,$8391A0C dc.l $57339BA2,$BEBA7D05,$2AC5B61C,$C4E9207C,$EF2F0CE2,$D7373958 dc.l $D7622658,$901E646A,$95184460,$DC4E7487,$156E0C29,$2413D5E3 dc.l $61C1696D,$D24AAEBD,$473826FD,$A0C238B9,$AB111BB,$BD67C724 dc.l $972CD18B,$FBBD9D42,$6C472096,$E76115C0,$5F6F7CEB,$AC9F45AE dc.l $CECB72F1,$9C38339D,$8F682625,$DEA891E,$F07AFFF3,$A892374E dc.l $175EB4AF,$C8DAADD8,$85DB6AAF,$C0000000 WRNPI:dc.w $1040,$20A,3 dc.l $243F6A88,$85A308D3,$13198A2E,$3707344,$A4093822,$299F31D0 dc.l $82EFA98,$EC4E6C89,$452821E6,$38D01377,$BE5466CF,$34E90C6C dc.l $C0AC29B7,$C97C50DD,$3F84D5B5,$B5470917,$9216D5D9,$8979FB1B dc.l $D1310BA6,$98DFB5AC,$2FFD72DB,$D01ADFB7,$B8E1AFED,$6A267E96 dc.l $BA7C9045,$F12C7F99,$24A19947,$B3916CF7,$801F2E2,$858EFC16 dc.l $636920D8,$71574E69,$A458FEA3,$F4933D7E,$D95748F,$728EB658 dc.l $718BCD58,$82154AEE,$7B54A41D,$C25A59B5,$9C30D539,$2AF26013 dc.l $C5D1B023,$286085F0,$CA417918,$B8DB38EF,$8E79DCB0,$603A180E dc.l $6C9E0E8B,$B01E8A3E,$D71577C1,$BD314B27,$78AF2FDA,$55605C60 dc.l $E65525F3,$AA55AB94,$57489862,$63E81440,$55CA396A,$2AAB10B6 dc.l $B4CC5C34,$1141E8CE,$A15486AF,$7C72E993,$B3EE1411,$636FBC2A dc.l $2BA9C55D,$741831F6,$CE5C3E16,$9B87931E,$AFD6BA33,$6C24CF5C dc.l $7A325381,$28958677,$3B8F4898,$6B4BB9AF,$C4BFE81B,$66282193 dc.l $61D809CC,$FB21A991,$487CAC60,$5DEC8032,$EF845D5D,$E98575B1 dc.l $DC262302,$EB651B88,$23893E81,$D396ACC5,$F6D6FF3,$83F44239 dc.l $2E0B4482,$A4842004,$69C8F04A,$9E1F9B5E,$21C66842,$F6E96C9A dc.l $670C9C61,$ABD388F0,$6A51A0D2,$D8542F68,$960FA728,$AB5133A3 dc.l $6EEF0B6C,$137A3BE4,$BA3BF050,$7EFB2A98,$A1F1651D,$39AF0176 dc.l $66CA593E,$82430E88,$8CEE8619,$456F9FB4,$7D84A5C3,$3B8B5EBE dc.l $E06F75D8,$85C12073,$401A449F,$56C16AA6,$4ED3AA62,$363F7706 dc.l $1BFEDF72,$429B023D,$37D0D724,$D00A1248,$DB0FEAD3,$49F1C09B dc.l $75372C9,$80991B7B,$25D479D0,0 TPRECL:dc.w 0 TPREC3:dc.w 0 TPREC:dc.w 30 TPREC1:dc.w 36 TPREC2:dc.w 6 TDECA5:dc.l 0 TFRUN:dc.w 0 TVARB:dc.l 0 TVARF:dc.l 0 TZONE:dc.l 0 TVARI:dc.w 0 TMNDES:dc.l 0 TMPROCA:dc.l 0 TMPROC:dc.l 0 TMFOR:dc.l 0 TMEXC:dc.l 0 TMEXCP:dc.l 0 TMCOND:dc.l 0 TMCONDP:dc.l 0 TMMEM:dc.l 0 TMRAN:dc.l 0 TMENU:dc.l 0 TMREM:dc.l 0 TMREM1:dc.l 0 TMNOM:dc.l 0 TMVARP:dc.l 0 TMVAR:dc.l 0 TBASE:dc.w $400A TVARN0:dc.w 0 TVARND:dc.w 0 TVARN:dc.w 0 TVARU:dc.w 0 TVARLS:dc.w $7FFF TVARL:dc.w 0 TVARV:dc.w 0 TPPI:dc.l 0 TPPL:dc.l 0 TILDE:dc.w 0 TVALA6:dc.l 0 TPILE:dc.l 0 BASEPAGE:dc.l $000276F4;AS\BASEPAGE TINPT:dc.l 0 TINPTF:dc.w 0 TINPTP:dc.l 0 TDATAP:dc.l 0 TDATAF:dc.w 0 TFONR:dc.l 0,0 TFRDG:dc.w 0;1 OCTET TPRINT:dc.w 0 XPAGE:dc.w 0 RPAGE:dc.w 0 NPAGE:dc.w 0 TPAGE1:dc.b " DE " TPAGE:dcb.b 52,0 T1193:dc.w $0C23,0,1 GAM32:dc.w 6,1,0,0 WORKOUT:dcb.b 114,0;| TCURSBM:dc.w 24;| TCURSA:dc.w 4;| TCURSB:dc.w 24;| TCURSY:dc.w 0;| TCURSC:dc.w 79;| TCURSX:dc.w 0;| FIN:;VAR NON INITIALISEES TD000=FIN;|SUIT TCURSX SANS TROU JUSQU'A ADDROUT T1173=TD000+[NBLIGNE*NBCOL] CONTRL=T1173+NBLIGNE+4 INTIN=CONTRL+24 PTSIN=INTIN+256 INTOUT=PTSIN+512 PTSOUT=INTOUT+256 CONTROL=PTSOUT+512 GLOBAL=CONTROL+10 AINTIN=GLOBAL+30 AINTOUT=AINTIN+32 ADDRIN=AINTOUT+14 ADDROUT=ADDRIN+12 FSAUVG=ADDROUT+4-TCURSBM TBUF=ADDROUT+4 PILEUS=TBUF+TBUFLC+2 TBUFL=PILEUS YSPRG=TBUFL+2 REGIS=YSPRG+120 TVARI1=REGIS+60 TDEQ1=TVARI1+32 SKBP=TDEQ1+34 INVERSE=SKBP+68 XMFPLUF=INVERSE+2 FILETYP=XMFPLUF+1;| FILEBUF=FILETYP+1;| FILEST=FILEBUF+100 SGPM1=FILEST+8 INDT=SGPM1+2 INDTM=INDT+2 FLREEP=INDTM+2 FDIV=FLREEP+1 YRETL=FDIV+1 TPWHILE=YRETL+4 GEVNT=TPWHILE+8;| GEVNTR=GEVNT+32;| GBRAN=GEVNTR+32;| GARBRE=GBRAN+28;| GARBRN=GARBRE+4;| GMENHX=GARBRN+2 TMOORE=GMENHX+2 NIVEAU7=TMOORE+110 SAMF=NIVEAU7+1 SAPG=SAMF+1 SACOY=SAPG+[NBLIGNE*10+12];| SACOX=SACOY+2;| SACOZ=SACOX+2;| SACOT=SACOZ+2;| SACOM=SACOT+2;| SCVAR=SACOM+2;| SACPX=SCVAR+16;| SACVR=SACPX+2;| SARES=SACVR+4;| SAFER=SARES+2;| TSISORN=SAFER+1 CANAUX=TSISORN+1 CANAUX1=CANAUX+NBCANAUX+NBCANAUX-4 CANAUX2=CANAUX1+2 CANAUX3=CANAUX1+4 RFILES0=CANAUX3+2 GA97=RFILES0+2 TESCV=GA97+1 REGD7=TESCV+1 THLA=REGD7+4 THLPG=THLA+100;| THLNIV=THLPG+[NBLIGNE*4-16];| THLCOU=THLNIV+2;| THLPRG=THLCOU+4;| THLFIN=THLPRG+4;| THLMOD=THLFIN+4;| THLPAR=THLMOD+2;| THLCLE=THLPAR+2 THLNIV1=THLCLE+26;| THLCOU1=THLNIV1+2;| TFONS=THLCOU1+4 TFONS1=TFONS+4 PREPTP=TFONS1+4 TDEBA5=PREPTP+4 DECPF=TDEBA5+12 ;UN OCTET LIBRE EN DECPF+1 MAJMIN=DECPF+3 TYPCAR=MAJMIN+1 TMIND=TYPCAR+256 TCACHE=TMIND+[4*INDEXP] T3FDB6=TCACHE+4 TEXCEP=T3FDB6+100 DTA=TEXCEP+32 TDEL=DTA+44 YECR=TDEL+TBUFLC+2 TK=YECR+32557+FSAUVG PILE=TK+1001 ZEROZERO=0 ZFFFF8240=$FFFF8240 end