Sharp X68000 Disassemblies
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

human.s 260KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246
  1. ;=============================================
  2. ; Filename human.sys
  3. ; Time Stamp Wed Sep 15 00:00:00 1993
  4. ;
  5. ; Base address 006800
  6. ; Exec address 006800
  7. ; Text size 00a890 byte(s)
  8. ; Data size 0033ea byte(s)
  9. ; Bss size 000000 byte(s)
  10. ; 2683 Labels
  11. ;
  12. ; Commandline dis -b2 -h -m68030 --sp -q1 -B -M -o120 -ghuman.lab --overwrite human.sys human.s
  13. ; DIS version 3.16
  14. ;=============================================
  15. .include inc/doscall.mac
  16. .include inc/iocscall.mac
  17. .include inc/fefunc.mac
  18. .cpu 68030
  19. .text
  20. Start:
  21. bra.w Start2
  22. L006804:
  23. .dc.b $0f
  24. L006805:
  25. .dc.b $14
  26. L006806:
  27. .dc.w $0400
  28. L006808:
  29. .dc.b $19
  30. L006809:
  31. .dc.b $19
  32. L00680a:
  33. .dc.b $00
  34. L00680b:
  35. .dc.b $00
  36. L00680c:
  37. .dc.w $0000
  38. L00680e:
  39. .dc.w $0000
  40. L006810:
  41. .dc.l $00000000
  42. L006814:
  43. .dc.b $00
  44. L006815:
  45. .dc.b $00
  46. L006816:
  47. .dc.b $00
  48. L006817:
  49. .dc.b $00
  50. L006818:
  51. .dc.b $01
  52. HelloString:
  53. .dc.b $1b,'*',$1b,'[1mHuman68k for X680x0',$1b,'[m version 3.02',$0d,$0a
  54. .dc.b 'Copyright 1987,88,89,90,91,92,93 SHARP/Hudson',$0d,$0a,$00
  55. SetupTrap14:
  56. tst.b ($0cbc)
  57. bne.s L006890
  58. move.l #Trap14Handler,($00b8)
  59. move.l #$4b756d61,-(sp) ;'Kuma'
  60. trap #14
  61. addq.l #4,sp
  62. move.b d0,($0cbc)
  63. L006890:
  64. rts
  65. Trap14Handler:
  66. clr.l d0
  67. cmpi.l #$4b756d61,($0006,sp) ;'Kuma'
  68. beq.s L0068a0
  69. moveq.l #$03,d0
  70. L0068a0:
  71. rte
  72. Start2:
  73. movea.l #Start,sp
  74. bsr.s SetupTrap14
  75. bsr.w L0078fc
  76. bsr.w SetupCallHandlers
  77. bsr.w L008290
  78. bsr.w L007e70
  79. move.l a1,($1c1c)
  80. tst.b ($1c75)
  81. beq.s CTRLVCHandler
  82. move.b ($1c15),d0
  83. add.b d0,(L0083f2)
  84. bsr.w L007a7c
  85. bsr.w L0081e2
  86. bsr.w L006bdc
  87. bsr.w L008216
  88. bsr.w L006ac2
  89. bsr.w L006cb0
  90. bsr.w L006b3c
  91. bsr.w L006c6e
  92. bsr.w L0076aa
  93. bsr.w L0077fc
  94. bsr.w L0077c0
  95. bsr.w L006cc8
  96. bsr.w L006a96
  97. pea.l (Call_CTRLVC_ERRJVC_EXITVC)
  98. move.w #$fff1,-(sp)
  99. DOS _INTVCS
  100. addq.l #6,sp
  101. bsr.w L006cf8
  102. bsr.w L006d10
  103. bsr.w L006a88
  104. move.b (L014074),($1c12)
  105. bra.w L008472
  106. CTRLVCHandler:
  107. lea.l (Start),sp
  108. IOCS _OS_CURON
  109. lea.l (L007e32),a1
  110. IOCS _B_PRINT
  111. clr.l d0
  112. trap #15
  113. L006940:
  114. move.l #$58363800,d0 ;'X68'<<8
  115. trap #10
  116. bra.s L006940
  117. L00694a:
  118. clr.l d0
  119. L00694c:
  120. move.b d0,(a1)+
  121. dbra.w d1,L00694c
  122. rts
  123. L006954:
  124. tst.l d7
  125. bmi.s L006986
  126. bsr.w L006a1c
  127. L00695c:
  128. moveq.l #$09,d1
  129. bsr.w L006a2a
  130. bne.s L006986
  131. movea.l a0,a1
  132. movea.l a6,a5
  133. L006968:
  134. move.b (a1)+,d1
  135. beq.s L006978
  136. move.b (a5)+,d0
  137. or.b #$20,d0
  138. cmp.b d0,d1
  139. beq.s L006968
  140. bra.s L00695c
  141. L006978:
  142. move.b (a5)+,d0
  143. cmp.b #$20,d0 ;' '
  144. beq.s L006978
  145. cmp.b #$3d,d0 ;'='
  146. bne.s L00695c
  147. L006986:
  148. rts
  149. L006988:
  150. cmpi.b #$20,(a5) ;' '
  151. bne.s L006992
  152. addq.l #1,a5
  153. bra.s L006988
  154. L006992:
  155. movea.l a5,a0
  156. move.l a1,-(sp)
  157. movea.l a0,a1
  158. L006998:
  159. move.b (a0)+,d0
  160. beq.s L0069b4
  161. L00699c:
  162. move.b d0,(a1)+
  163. cmp.b #$20,d0 ;' '
  164. bne.s L006998
  165. clr.b (-$0001,a1)
  166. L0069a8:
  167. move.b (a0)+,d0
  168. beq.s L0069b4
  169. cmp.b #$20,d0 ;' '
  170. beq.s L0069a8
  171. bra.s L00699c
  172. L0069b4:
  173. clr.b (a1)+
  174. clr.b (a1)
  175. movea.l (sp)+,a1
  176. rts
  177. L0069bc:
  178. movem.l a0/a5,-(sp)
  179. L0069c0:
  180. move.b (a5)+,d0
  181. cmp.b #$20,d0 ;' '
  182. bcs.s L0069cc
  183. move.b d0,(a0)+
  184. bra.s L0069c0
  185. L0069cc:
  186. clr.b (a0)
  187. movem.l (sp)+,a0/a5
  188. rts
  189. L0069d4:
  190. clr.l d1
  191. bra.s L0069da
  192. L0069d8:
  193. moveq.l #$20,d1 ;' '
  194. L0069da:
  195. move.b (a5)+,d0
  196. beq.s L0069f2
  197. cmp.b #$20,d0 ;' '
  198. beq.s L0069da
  199. L0069e4:
  200. move.b d0,(a0)+
  201. move.b (a5)+,d0
  202. beq.s L0069f2
  203. cmp.b d1,d0
  204. bne.s L0069e4
  205. clr.b (a0)
  206. rts
  207. L0069f2:
  208. clr.b (a0)
  209. subq.l #1,a5
  210. rts
  211. L0069f8:
  212. clr.l d0
  213. clr.l d1
  214. L0069fc:
  215. move.b (a5)+,d0
  216. cmp.b #$20,d0 ;' '
  217. beq.s L0069fc
  218. L006a04:
  219. sub.b #$30,d0 ;'0'
  220. cmp.b #$0a,d0
  221. bcc.s L006a18
  222. mulu.w #$000a,d1
  223. add.l d0,d1
  224. move.b (a5)+,d0
  225. bra.s L006a04
  226. L006a18:
  227. move.l d1,d0
  228. rts
  229. L006a1c:
  230. clr.w -(sp)
  231. clr.l -(sp)
  232. move.w d7,-(sp)
  233. DOS _SEEK
  234. lea.l ($0008,sp),sp
  235. rts
  236. L006a2a:
  237. movea.l a6,a5
  238. L006a2c:
  239. bsr.s L006a66
  240. bne.s L006a52
  241. cmp.b #$1a,d0
  242. beq.s L006a52
  243. cmp.b d1,d0
  244. bne.s L006a3c
  245. moveq.l #$20,d0 ;' '
  246. L006a3c:
  247. move.b d0,(a5)+
  248. cmp.b #$0a,d0
  249. bne.s L006a2c
  250. clr.b (a5)
  251. clr.b -(a5)
  252. cmpi.b #$0d,-(a5)
  253. bne.s L006a50
  254. clr.b (a5)
  255. L006a50:
  256. rts
  257. L006a52:
  258. cmpa.l a6,a5
  259. beq.s L006a5e
  260. moveq.l #$1a,d0
  261. clr.b (a5)+
  262. clr.b (a5)
  263. rts
  264. L006a5e:
  265. clr.b (a5)+
  266. clr.b (a5)
  267. moveq.l #$ff,d0
  268. rts
  269. L006a66:
  270. clr.w -(sp)
  271. move.l sp,d0
  272. move.l #$00000001,-(sp)
  273. move.l d0,-(sp)
  274. move.w d7,-(sp)
  275. DOS _READ
  276. lea.l ($0006,sp),sp
  277. cmp.l (sp)+,d0
  278. bne.s L006a82
  279. move.b (sp),d0
  280. cmp.b d0,d0
  281. L006a82:
  282. lea.l ($0002,sp),sp
  283. rts
  284. L006a88:
  285. move.w #$0003,-(sp)
  286. move.w #$0002,-(sp)
  287. DOS _CONCTRL
  288. addq.l #4,sp
  289. rts
  290. L006a96:
  291. move.l ($1c24),d0
  292. add.l #$00001fff,d0
  293. and.l #$00ffe000,d0
  294. move.l d0,(L00837a)
  295. lsr.l #8,d0
  296. lsr.l #5,d0
  297. subq.w #1,d0
  298. cmp.w #$0100,d0
  299. bcs.s L006aba
  300. moveq.l #$ff,d0
  301. L006aba:
  302. move.b d0,($00e86001)
  303. rts
  304. L006ac2:
  305. tst.b (L006818)
  306. beq.s L006b3a
  307. move.w #$0004,-(sp)
  308. pea.l (L007a8c)
  309. pea.l ($00ea0044)
  310. DOS _MEMCPY
  311. movea.l (sp)+,a0
  312. addq.l #6,sp
  313. tst.l d0
  314. bne.s L006af2
  315. cmpi.l #$53435349,(a0)+ ;'SCSI'
  316. bne.s L006af2
  317. cmpi.w #$4558,(a0) ;'EX'
  318. beq.s L006b1a
  319. L006af2:
  320. move.w #$0004,-(sp)
  321. pea.l (L007a8c)
  322. pea.l ($00fc0024)
  323. DOS _MEMCPY
  324. movea.l (sp)+,a0
  325. addq.l #6,sp
  326. tst.l d0
  327. bne.s L006b3a
  328. cmpi.l #$53435349,(a0)+ ;'SCSI'
  329. bne.s L006b3a
  330. cmpi.w #$494e,(a0) ;'IN'
  331. bne.s L006b3a
  332. L006b1a:
  333. lea.l (-$0028,a0),a0
  334. move.l a0,d1
  335. IOCS _BOOTINF
  336. eor.l d1,d0
  337. and.l #$00ffff00,d0
  338. beq.s L006b3a
  339. movea.l ($1c1c),a2
  340. bsr.w L006fea
  341. move.l a2,($1c1c)
  342. L006b3a:
  343. rts
  344. L006b3c:
  345. tst.b (L007c02)
  346. beq.w L006bd0
  347. bsr.w L006a96
  348. move.l #$00000200,-(sp)
  349. DOS _MALLOC
  350. addq.l #4,sp
  351. tst.l d0
  352. bmi.s L006bd0
  353. movea.l d0,a0
  354. pea.l (a0)
  355. pea.l ($0080,a0)
  356. lea.l ($0200,a0),a1
  357. move.l a1,usp
  358. lea.l (L007ba6),a1
  359. moveq.l #$10,d1
  360. L006b6e:
  361. move.l (a1)+,(a0)+
  362. dbra.w d1,L006b6e
  363. pea.l (Call_CTRLVC_ERRJVC_EXITVC)
  364. move.w #$fff1,-(sp)
  365. DOS _INTVCS
  366. addq.l #6,sp
  367. bsr.w L006cf8
  368. pea.l (L007c02)
  369. move.w #$0002,-(sp)
  370. DOS _EXEC
  371. tst.l d0
  372. bmi.s L006bc8
  373. bsr.w L0078f6
  374. move.w #$0000,(sp)
  375. DOS _EXEC
  376. move.l d0,-(sp)
  377. bsr.w L0078fc
  378. move.l (sp)+,d0
  379. bmi.s L006bc8
  380. cmp.l #$00010000,d0
  381. bcc.s L006bd2
  382. tst.w d0
  383. bne.s L006bc8
  384. lea.l (SysStr),a0
  385. move.b #$54,(a0)+ ;'T'
  386. move.b #$4d,(a0)+ ;'M'
  387. move.b #$50,(a0) ;'P'
  388. L006bc8:
  389. lea.l ($000a,sp),sp
  390. DOS _MFREE
  391. addq.l #4,sp
  392. L006bd0:
  393. rts
  394. L006bd2:
  395. pea.l (L007def)
  396. DOS _PRINT
  397. L006bda:
  398. bra.s L006bda
  399. L006bdc:
  400. lea.l (-$00c8,sp),sp
  401. movea.l sp,a6
  402. move.w (L006806),($1c70)
  403. clr.l d0
  404. move.b d0,(L007c02)
  405. clr.l d2
  406. clr.l d3
  407. clr.l d4
  408. move.b (L006804),d2
  409. move.b (L006805),d3
  410. move.b (L006808),d4
  411. bsr.w L00769c
  412. move.l d0,d7
  413. bmi.s L006c36
  414. bsr.w L007662
  415. bsr.w L00758c
  416. bsr.w L0075e0
  417. movem.l d2-d4,-(sp)
  418. bsr.w L007614
  419. bsr.w L00763c
  420. bsr.w L006eb8
  421. bsr.w L006ee0
  422. movem.l (sp)+,d2-d4
  423. L006c36:
  424. addq.w #2,d2
  425. move.w d2,($1c6e)
  426. move.b d3,($1c72)
  427. move.b d4,($1c73)
  428. clr.l d0
  429. move.w ($1c70),d0
  430. add.w #$0010,d0
  431. mulu.w d3,d0
  432. add.l ($1c24),d0
  433. move.l d2,d1
  434. subq.l #5,d1
  435. mulu.w #$0062,d1
  436. add.l d1,d0
  437. add.l #$00010000,d0
  438. cmp.l ($1c00),d0
  439. bcc.w CTRLVCHandler
  440. bra.s L006ce4
  441. L006c6e:
  442. lea.l (-$00c8,sp),sp
  443. movea.l sp,a6
  444. bsr.w L00769c
  445. move.l d0,d7
  446. bsr.w L006e80
  447. bsr.w L006e8e
  448. bsr.w L006e9c
  449. bsr.w L007236
  450. bsr.w L0072e0
  451. bsr.w L00735c
  452. bsr.w L007284
  453. bsr.w L007204
  454. bsr.w L00725c
  455. bsr.w L00718e
  456. bsr.w L0073e6
  457. bsr.w L00748c
  458. bsr.w L0074ea
  459. bra.s L006ce4
  460. L006cb0:
  461. movea.l ($1c1c),a2
  462. clr.l d6
  463. L006cb6:
  464. lea.l (L007e6b),a5
  465. bsr.w L006f38
  466. beq.s L006cb6
  467. move.l a2,($1c1c)
  468. rts
  469. L006cc8:
  470. lea.l (-$00c8,sp),sp
  471. movea.l sp,a6
  472. bsr.w L00769c
  473. move.l d0,d7
  474. bmi.s L006cf2
  475. movea.l ($1c1c),a2
  476. L006cda:
  477. bsr.w L006f6c
  478. beq.s L006cda
  479. move.l a2,($1c1c)
  480. L006ce4:
  481. move.w d7,-(sp)
  482. bmi.s L006cea
  483. DOS _CLOSE
  484. L006cea:
  485. addq.l #2,sp
  486. lea.l ($00c8,sp),sp
  487. rts
  488. L006cf2:
  489. lea.l ($00c8,sp),sp
  490. rts
  491. L006cf8:
  492. movea.l #$000000a8,a0
  493. lea.l (L0083be),a1
  494. move.l (a0)+,(a1)+
  495. move.l (a0)+,(a1)+
  496. move.l (a0)+,(a1)+
  497. move.l (a0)+,(a1)+
  498. move.l (a0),(a1)
  499. rts
  500. L006d10:
  501. move.l #$000000f0,-(sp)
  502. DOS _MALLOC
  503. addq.l #4,sp
  504. move.l d0,(L011090)
  505. bmi.w CTRLVCHandler
  506. movea.l d0,a0
  507. lea.l ($00f0,a0),a0
  508. move.l a0,usp
  509. movea.l ($1c50),a6
  510. cmpa.l #$00000000,a6
  511. beq.s L006d3c
  512. move.l a0,($000c,a6)
  513. L006d3c:
  514. lea.l (-$00c8,sp),sp
  515. movea.l sp,a6
  516. bsr.w L00769c
  517. move.l d0,d7
  518. bmi.s L006cf2
  519. bsr.s L006d56
  520. bsr.w L006e0a
  521. bsr.w L006f20
  522. bra.s L006ce4
  523. L006d56:
  524. lea.l (EnvsetStr),a0
  525. bsr.w L006954
  526. bne.w L006e08
  527. bsr.w L0069f8
  528. cmp.l #$00000200,d0
  529. bcs.w L006dfe
  530. cmp.l #$00010000,d0
  531. bcc.w L006dfe
  532. move.l d0,d3
  533. move.l d3,-(sp)
  534. DOS _MALLOC
  535. addq.l #4,sp
  536. move.l d0,d4
  537. bmi.s L006dfe
  538. move.l d4,(L008382)
  539. movea.l d4,a0
  540. move.l d3,(a0)+
  541. clr.w (a0)
  542. move.b (-$0001,a5),d0
  543. beq.s L006e08
  544. bsr.w L007658
  545. subq.l #1,a5
  546. clr.w -(sp)
  547. move.l a5,-(sp)
  548. DOS _OPEN
  549. addq.l #6,sp
  550. tst.l d0
  551. bmi.s L006dfe
  552. movem.l d7,-(sp)
  553. move.l d0,d7
  554. L006db2:
  555. moveq.l #$20,d1 ;' '
  556. bsr.w L006a2a
  557. bne.s L006df2
  558. movea.l a6,a5
  559. L006dbc:
  560. move.b (a5)+,d0
  561. beq.s L006de0
  562. cmp.b #$3d,d0 ;'='
  563. bne.s L006dbc
  564. clr.b (-$0001,a5)
  565. move.l a5,-(sp)
  566. clr.l -(sp)
  567. move.l a6,-(sp)
  568. DOS _SETENV
  569. lea.l ($000c,sp),sp
  570. tst.l d0
  571. bpl.s L006db2
  572. move.b #$3d,(-$0001,a5) ;'='
  573. L006de0:
  574. movea.l a6,a0
  575. bsr.w L007134
  576. lea.l (CannotRegisterEnvVarStr),a0
  577. bsr.w L007134
  578. bra.s L006db2
  579. L006df2:
  580. move.w d7,-(sp)
  581. DOS _CLOSE
  582. addq.l #2,sp
  583. movem.l (sp)+,d7
  584. rts
  585. L006dfe:
  586. lea.l (EnvsetStr),a0
  587. bsr.w L00768c
  588. L006e08:
  589. rts
  590. L006e0a:
  591. bsr.w L006a1c
  592. L006e0e:
  593. lea.l (ProgramStr),a0
  594. bsr.w L00695c
  595. bne.s L006e7e
  596. lea.l (TitleSysStr),a0
  597. bsr.w L0069d4
  598. move.l (L008382),-(sp)
  599. move.l (L011090),-(sp)
  600. pea.l (TitleSysStr)
  601. move.w #$0002,-(sp)
  602. DOS _EXEC
  603. lea.l ($000e,sp),sp
  604. tst.l d0
  605. bmi.s L006e6c
  606. movem.l d7/a6,-(sp)
  607. move.l (L008382),-(sp)
  608. move.l (L011090),-(sp)
  609. pea.l (TitleSysStr)
  610. move.w #$0000,-(sp)
  611. DOS _EXEC
  612. lea.l ($000e,sp),sp
  613. movem.l (sp)+,d7/a6
  614. tst.l d0
  615. bpl.s L006e0e
  616. L006e6c:
  617. movea.l a6,a0
  618. bsr.w L007134
  619. lea.l (CannotStartStr),a0
  620. bsr.w L007134
  621. bra.s L006e0e
  622. L006e7e:
  623. rts
  624. L006e80:
  625. pea.l (TitleSysStr)
  626. lea.l (TitleStr),a0
  627. bra.s L006ea8
  628. L006e8e:
  629. pea.l (KeySysStr)
  630. lea.l (KeyStr),a0
  631. bra.s L006ea8
  632. L006e9c:
  633. pea.l (UskcgSysStr)
  634. lea.l (UskcgStr),a0
  635. L006ea8:
  636. bsr.w L006954
  637. movem.l (sp)+,a0
  638. bne.s L006eb6
  639. bsr.w L0069d8
  640. L006eb6:
  641. rts
  642. L006eb8:
  643. lea.l (CttyStr),a0
  644. bsr.w L006954
  645. bne.s L006ede
  646. lea.l (L013d1a),a0
  647. lea.l (L013d24),a1
  648. moveq.l #$02,d1
  649. move.w #$0303,d0
  650. L006ed6:
  651. move.w d0,(a0)+
  652. move.w d0,(a1)+
  653. dbra.w d1,L006ed6
  654. L006ede:
  655. rts
  656. L006ee0:
  657. movem.l d0-d7/a0-a6,-(sp)
  658. lea.l (RomdbStr),a0
  659. bsr.w L006954
  660. bne.s L006f1a
  661. IOCS _ROMVER
  662. cmp.l #$12920101,d0
  663. bcc.s L006f04
  664. jsr ($00fe0000)
  665. bra.s L006f1a
  666. L006f04:
  667. movea.l ($00ff0008),a0
  668. cmpa.l #$01000000,a0
  669. bcc.s L006f1a
  670. movea.l #$00001000,a6
  671. jsr (a0)
  672. L006f1a:
  673. movem.l (sp)+,d0-d7/a0-a6
  674. rts
  675. L006f20:
  676. lea.l (ShellStr),a0
  677. bsr.w L006954
  678. bne.s L006f36
  679. lea.l (L011096),a0
  680. bsr.w L0069d4
  681. L006f36:
  682. rts
  683. L006f38:
  684. add.w #$0100,d6
  685. lea.l (-$005a,sp),sp
  686. movea.l sp,a0
  687. move.l #$48756d61,(a0) ;'Huma'
  688. move.l #$6e2e7379,($0004,a0) ;'n.sy'
  689. move.l #$73000000,($0008,a0)
  690. movea.l ($1c24),a1
  691. move.l d6,d0
  692. bsr.w L007170
  693. bpl.s L006fa6
  694. tst.l d0
  695. lea.l ($005a,sp),sp
  696. rts
  697. L006f6c:
  698. lea.l (DeviceStr),a0
  699. bsr.w L00695c
  700. bne.w L00713e
  701. bsr.w L006988
  702. lea.l (-$005a,sp),sp
  703. movea.l sp,a0
  704. bsr.w L0069bc
  705. move.l (a0),d0
  706. or.l #$00202020,d0
  707. cmp.l #$5b726f6d,d0 ;'[rom'
  708. beq.s L006fce
  709. movea.l ($1c24),a1
  710. clr.l d0
  711. bsr.w L007170
  712. bmi.w L007128
  713. L006fa6:
  714. tst.l d0
  715. beq.s L006fc6
  716. move.l a5,d0
  717. lea.l (-$001a,sp),sp
  718. movea.l sp,a5
  719. bsr.w L007140
  720. tst.b ($0003,a5)
  721. bne.w L007122
  722. bsr.w L0070ba
  723. lea.l ($001a,sp),sp
  724. L006fc6:
  725. lea.l ($005a,sp),sp
  726. clr.l d0
  727. rts
  728. L006fce:
  729. addq.l #4,a0
  730. bsr.s L00702e
  731. tst.l d1
  732. bmi.s L006fe0
  733. cmp.b #$5d,d0 ;']'
  734. bne.s L006fe0
  735. bsr.s L006fea
  736. beq.s L006fe4
  737. L006fe0:
  738. bra.w L007126
  739. L006fe4:
  740. lea.l ($005a,sp),sp
  741. rts
  742. L006fea:
  743. movem.l d1/a0-a1/a5-a6,-(sp)
  744. movea.l d1,a0
  745. lea.l (L007a8c),a1
  746. moveq.l #$04,d1
  747. bsr.w L00e28a
  748. movem.l (sp)+,d1/a0-a1/a5-a6
  749. tst.l d0
  750. bne.s L007028
  751. lea.l (-$001a,sp),sp
  752. movea.l sp,a5
  753. movea.l a2,a1
  754. move.l d1,d0
  755. move.b ($1c15),d2
  756. bsr.w L007f0c
  757. move.b d2,($1c15)
  758. lea.l ($001a,sp),sp
  759. cmpa.l a1,a2
  760. beq.s L007028
  761. movea.l a1,a2
  762. clr.l d0
  763. rts
  764. L007028:
  765. moveq.l #$ff,d0
  766. tst.l d0
  767. rts
  768. L00702e:
  769. clr.l d1
  770. move.b (a0)+,d1
  771. cmp.b #$24,d1 ;'$'
  772. beq.s L00707e
  773. sub.b #$30,d1 ;'0'
  774. cmp.b #$0a,d1
  775. bcc.s L007052
  776. move.b (a0),d0
  777. lsl.l #2,d1
  778. lea.l (L007056),a0
  779. move.l (a0,d1.w),d1
  780. rts
  781. L007052:
  782. moveq.l #$ff,d1
  783. rts
  784. L007056:
  785. .dc.l $00bffffc,$00fe4ffc
  786. .dc.l $00ee0000,$00ee4000
  787. .dc.l $00ee8000,$00eec000
  788. .dc.l $00ef0000,$00ef4000
  789. .dc.l $00ef8000,$00efc000
  790. L00707e:
  791. clr.l d1
  792. L007080:
  793. move.b (a0),d0
  794. cmp.b #$30,d0 ;'0'
  795. bcs.s L0070b8
  796. cmp.b #$3a,d0 ;':'
  797. bcs.s L0070ac
  798. cmp.b #$41,d0 ;'A'
  799. bcs.s L0070b8
  800. cmp.b #$47,d0 ;'G'
  801. bcs.s L0070aa
  802. cmp.b #$61,d0 ;'a'
  803. bcs.s L0070b8
  804. cmp.b #$67,d0 ;'g'
  805. bcc.s L0070b8
  806. sub.b #$20,d0 ;' '
  807. L0070aa:
  808. subq.b #7,d0
  809. L0070ac:
  810. addq.l #1,a0
  811. sub.b #$30,d0 ;'0'
  812. lsl.l #4,d1
  813. or.b d0,d1
  814. bra.s L007080
  815. L0070b8:
  816. rts
  817. L0070ba:
  818. move.l ($000e,a5),d0
  819. add.l #$00010000,d0
  820. cmp.l ($1c00),d0
  821. bcc.w CTRLVCHandler
  822. sub.l #$00010022,d0
  823. cmp.l a1,d0
  824. bcs.w CTRLVCHandler
  825. move.l ($000e,a5),($1c24)
  826. move.l a1,(a2)
  827. L0070e0:
  828. move.l a2,-(sp)
  829. btst.b #$07,($0004,a1)
  830. bne.s L007110
  831. movea.l a5,a0
  832. bsr.w L0082d0
  833. bmi.s L007104
  834. bsr.w L008248
  835. bpl.s L007114
  836. L0070f8:
  837. lea.l (L007dbd),a0
  838. bsr.s L007134
  839. bra.w CTRLVCHandler
  840. L007104:
  841. lea.l (L007d94),a0
  842. bsr.s L007134
  843. bra.w CTRLVCHandler
  844. L007110:
  845. bsr.w L00ac0a
  846. L007114:
  847. movea.l (sp)+,a2
  848. move.l (a1),d1
  849. bmi.s L00711e
  850. movea.l d1,a1
  851. bra.s L0070e0
  852. L00711e:
  853. movea.l a1,a2
  854. rts
  855. L007122:
  856. lea.l ($001a,sp),sp
  857. L007126:
  858. movea.l sp,a0
  859. L007128:
  860. bsr.s L007134
  861. lea.l ($005a,sp),sp
  862. lea.l (L007d7b),a0
  863. L007134:
  864. move.l a0,-(sp)
  865. DOS _PRINT
  866. movea.l (sp)+,a0
  867. clr.l d0
  868. rts
  869. L00713e:
  870. rts
  871. L007140:
  872. move.b #$16,($0000.w,a5)
  873. move.b #$00,($0002,a5)
  874. btst.b #$05,($0004,a1)
  875. beq.s L00715a
  876. move.b #$40,($0002,a5) ;'@'
  877. L00715a:
  878. move.l d0,($0012,a5)
  879. move.b ($1c75),d0
  880. addq.b #1,d0
  881. move.b d0,($0016,a5)
  882. move.l a1,d1
  883. movea.l d1,a1
  884. bra.w L00defa
  885. L007170:
  886. or.b #$03,d0
  887. adda.l #$03000000,a0
  888. move.l ($1c00),-(sp)
  889. move.l a1,-(sp)
  890. move.l a0,-(sp)
  891. move.w d0,-(sp)
  892. DOS _EXEC
  893. lea.l ($000e,sp),sp
  894. tst.l d0
  895. rts
  896. L00718e:
  897. lea.l (BellStr),a0
  898. bsr.w L006954
  899. bne.s L0071f8
  900. bsr.w L006988
  901. clr.w -(sp)
  902. move.l a5,-(sp)
  903. DOS _OPEN
  904. addq.l #6,sp
  905. tst.l d0
  906. bmi.s L0071fa
  907. move.w d0,d2
  908. movea.l ($1c24),a0
  909. move.l #$0000ffff,-(sp)
  910. move.l a0,-(sp)
  911. move.w d2,-(sp)
  912. DOS _READ
  913. lea.l ($000a,sp),sp
  914. move.l d0,-(sp)
  915. move.w d2,-(sp)
  916. DOS _CLOSE
  917. addq.l #2,sp
  918. move.l (sp)+,d0
  919. bmi.s L0071fa
  920. movem.l d0-d2,-(sp)
  921. move.w d0,d2
  922. move.l a0,d1
  923. moveq.l #$39,d0 ;'9'
  924. trap #15
  925. movem.l (sp)+,d0-d2
  926. addq.l #1,d0
  927. bclr.l #$00,d0
  928. adda.l d0,a0
  929. move.l a0,($1c24)
  930. move.l a0,d0
  931. add.l #$00010000,d0
  932. cmp.l ($1c00),d0
  933. bcc.w CTRLVCHandler
  934. L0071f8:
  935. rts
  936. L0071fa:
  937. lea.l (BellStr),a0
  938. bra.w L00768c
  939. L007204:
  940. lea.l (NewfatStr),a0
  941. bsr.w L006954
  942. bne.s L00722a
  943. bsr.w L0069f8
  944. tst.l d0
  945. beq.s L007220
  946. cmp.l #$00000002,d0
  947. bne.s L00722c
  948. L007220:
  949. move.b d0,($1c0b)
  950. move.b d0,(L00cc2a)
  951. L00722a:
  952. rts
  953. L00722c:
  954. lea.l (NewfatStr),a0
  955. bra.w L00768c
  956. L007236:
  957. lea.l (FflushStr),a0
  958. bsr.w L006954
  959. bne.s L007250
  960. bsr.w L006988
  961. bsr.s L0072aa
  962. tst.w d0
  963. bmi.s L007252
  964. move.b d0,($1cba)
  965. L007250:
  966. rts
  967. L007252:
  968. lea.l (FflushStr),a0
  969. bra.w L00768c
  970. L00725c:
  971. lea.l (DirschStr),a0
  972. bsr.w L006954
  973. bne.s L007278
  974. bsr.w L006988
  975. bsr.s L0072aa
  976. tst.w d0
  977. bmi.s L00727a
  978. move.b d0,(L01120a)
  979. L007278:
  980. rts
  981. L00727a:
  982. lea.l (DirschStr),a0
  983. bra.w L00768c
  984. L007284:
  985. lea.l (VerifyStr),a0
  986. bsr.w L006954
  987. bne.s L00729e
  988. bsr.w L006988
  989. bsr.s L0072aa
  990. tst.w d0
  991. bmi.s L0072a0
  992. move.w d0,($1c10)
  993. L00729e:
  994. rts
  995. L0072a0:
  996. lea.l (VerifyStr),a0
  997. bra.w L00768c
  998. L0072aa:
  999. move.b (a5)+,d0
  1000. or.b #$20,d0
  1001. cmp.b #$6f,d0 ;'o'
  1002. bne.s L0072d8
  1003. move.b (a5)+,d0
  1004. or.b #$20,d0
  1005. cmp.b #$6e,d0 ;'n'
  1006. beq.s L0072dc
  1007. cmp.b #$66,d0 ;'f'
  1008. bne.s L0072d8
  1009. move.b (a5)+,d0
  1010. or.b #$20,d0
  1011. cmp.b #$66,d0 ;'f'
  1012. bne.s L0072d8
  1013. clr.l d0
  1014. rts
  1015. L0072d8:
  1016. moveq.l #$ff,d0
  1017. rts
  1018. L0072dc:
  1019. moveq.l #$01,d0
  1020. rts
  1021. L0072e0:
  1022. lea.l (OffStr),a0
  1023. bsr.w L006954
  1024. bne.s L00735a
  1025. bsr.w L006988
  1026. L0072f0:
  1027. move.b (a5)+,d0
  1028. beq.s L00735a
  1029. cmp.w #$0009,d0
  1030. beq.s L0072f0
  1031. cmp.w #$0020,d0 ;' '
  1032. beq.s L0072f0
  1033. cmp.w #$002c,d0 ;','
  1034. beq.s L0072f0
  1035. or.b #$20,d0
  1036. cmp.b #$63,d0 ;'c'
  1037. beq.s L007332
  1038. cmp.b #$6e,d0 ;'n'
  1039. beq.s L00733a
  1040. cmp.b #$70,d0 ;'p'
  1041. beq.s L007342
  1042. cmp.b #$71,d0 ;'q'
  1043. beq.s L00734a
  1044. cmp.b #$73,d0 ;'s'
  1045. beq.s L007352
  1046. lea.l (OffStr),a0
  1047. bra.w L00768c
  1048. L007332:
  1049. move.w #$0103,($1cbc)
  1050. bra.s L0072f0
  1051. L00733a:
  1052. move.w #$010e,($1cbe)
  1053. bra.s L0072f0
  1054. L007342:
  1055. move.w #$0110,($1cc0)
  1056. bra.s L0072f0
  1057. L00734a:
  1058. move.w #$0111,($1cc2)
  1059. bra.s L0072f0
  1060. L007352:
  1061. move.w #$0113,($1cc4)
  1062. bra.s L0072f0
  1063. L00735a:
  1064. rts
  1065. L00735c:
  1066. lea.l (BreakStr),a0
  1067. bsr.w L006954
  1068. bne.s L0073a6
  1069. bsr.w L006988
  1070. move.b (a5)+,d0
  1071. or.b #$20,d0
  1072. cmp.b #$6b,d0 ;'k'
  1073. beq.s L0073b8
  1074. cmp.b #$6f,d0 ;'o'
  1075. bne.s L0073a6
  1076. move.b (a5)+,d0
  1077. or.b #$20,d0
  1078. cmp.b #$6e,d0 ;'n'
  1079. beq.s L0073ae
  1080. cmp.b #$66,d0 ;'f'
  1081. bne.s L00739c
  1082. move.b (a5)+,d0
  1083. or.b #$20,d0
  1084. cmp.b #$66,d0 ;'f'
  1085. beq.s L0073a6
  1086. L00739c:
  1087. lea.l (BreakStr),a0
  1088. bsr.w L00768c
  1089. L0073a6:
  1090. clr.b (L014074)
  1091. rts
  1092. L0073ae:
  1093. move.b #$01,(L014074)
  1094. rts
  1095. L0073b8:
  1096. move.b (a5)+,d0
  1097. or.b #$20,d0
  1098. cmp.b #$69,d0 ;'i'
  1099. bne.s L00739c
  1100. move.b (a5)+,d0
  1101. or.b #$20,d0
  1102. cmp.b #$6c,d0 ;'l'
  1103. bne.s L00739c
  1104. move.b (a5)+,d0
  1105. or.b #$20,d0
  1106. cmp.b #$6c,d0 ;'l'
  1107. bne.s L00739c
  1108. move.b #$02,(L014074)
  1109. rts
  1110. L0073e6:
  1111. clr.l d3
  1112. clr.l d4
  1113. move.w (L00680c),d3
  1114. move.w (L00680e),d4
  1115. lea.l (ShareStr),a0
  1116. bsr.w L006954
  1117. bne.s L00742c
  1118. bsr.w L0069f8
  1119. cmp.l #$0000005e,d0
  1120. bcc.s L007470
  1121. move.l d0,d3
  1122. move.b (-$0001,a5),d0
  1123. cmp.b #$20,d0 ;' '
  1124. bne.s L007470
  1125. bsr.w L0069f8
  1126. tst.l d0
  1127. beq.s L007470
  1128. cmp.l #$0000010b,d0
  1129. bcc.s L007470
  1130. move.l d0,d4
  1131. L00742c:
  1132. move.w d3,($1c76)
  1133. beq.s L00746e
  1134. move.w d4,($1c78)
  1135. beq.s L00746e
  1136. movea.l ($1c24),a0
  1137. move.l a0,($1c40)
  1138. mulu.w #$000c,d4
  1139. add.l #$0000005c,d4
  1140. move.l d4,($1c7a)
  1141. subq.w #1,d3
  1142. bmi.s L00745a
  1143. L007452:
  1144. clr.l (a0)
  1145. adda.l d4,a0
  1146. dbra.w d3,L007452
  1147. L00745a:
  1148. move.l a0,($1c24)
  1149. move.l a0,d0
  1150. add.l #$00010000,d0
  1151. cmp.l ($1c00),d0
  1152. bcc.w CTRLVCHandler
  1153. L00746e:
  1154. rts
  1155. L007470:
  1156. clr.l d3
  1157. clr.l d4
  1158. move.w (L00680c),d3
  1159. move.w (L00680e),d4
  1160. bsr.s L00742c
  1161. lea.l (ShareStr),a0
  1162. bra.w L00768c
  1163. L00748c:
  1164. move.l (L006810),d3
  1165. lea.l (CommonStr),a0
  1166. bsr.w L006954
  1167. bne.s L0074b0
  1168. bsr.w L0069f8
  1169. cmp.l #$00000401,d0
  1170. bcc.s L0074de
  1171. move.l d0,d3
  1172. moveq.l #$0a,d0
  1173. lsl.l d0,d3
  1174. L0074b0:
  1175. tst.l d3
  1176. beq.s L0074dc
  1177. movea.l ($1c24),a0
  1178. move.l a0,($1c44)
  1179. move.l a0,($1c48)
  1180. clr.l (a0)
  1181. adda.l d3,a0
  1182. move.l a0,($1c4c)
  1183. move.l a0,($1c24)
  1184. move.l a0,d0
  1185. add.l #$00010000,d0
  1186. cmp.l ($1c00),d0
  1187. bcc.w CTRLVCHandler
  1188. L0074dc:
  1189. rts
  1190. L0074de:
  1191. bsr.s L0074b0
  1192. lea.l (CommonStr),a0
  1193. bra.w L00768c
  1194. L0074ea:
  1195. clr.l d3
  1196. clr.l d6
  1197. clr.l d5
  1198. move.b (L006814),d3
  1199. move.b (L006815),d6
  1200. move.b (L006816),d5
  1201. lea.l (ProcessStr),a0
  1202. bsr.w L006954
  1203. bne.s L00755a
  1204. bsr.w L0069f8
  1205. cmp.l #$00000021,d0
  1206. bcc.s L007568
  1207. move.l d0,d3
  1208. move.b (-$0001,a5),d0
  1209. cmp.b #$20,d0 ;' '
  1210. bne.s L007568
  1211. bsr.w L0069f8
  1212. cmp.l #$00000002,d0
  1213. bcc.s L007534
  1214. moveq.l #$02,d0
  1215. L007534:
  1216. cmp.l #$00000100,d0
  1217. bcc.s L007568
  1218. move.l d0,d6
  1219. move.b (-$0001,a5),d0
  1220. cmp.b #$20,d0 ;' '
  1221. bne.s L007568
  1222. bsr.w L0069f8
  1223. tst.l d0
  1224. beq.s L007568
  1225. cmp.l #$00000065,d0
  1226. bcc.s L007568
  1227. move.l d0,d5
  1228. L00755a:
  1229. move.l d3,d1
  1230. move.b d5,d2
  1231. move.l d6,d3
  1232. subq.l #1,d3
  1233. bsr.w L00e68c
  1234. rts
  1235. L007568:
  1236. clr.l d3
  1237. clr.l d6
  1238. clr.l d5
  1239. move.b (L006814),d3
  1240. move.b (L006815),d6
  1241. move.b (L006816),d5
  1242. bsr.s L00755a
  1243. lea.l (ProcessStr),a0
  1244. bra.w L00768c
  1245. L00758c:
  1246. lea.l (BuffersStr),a0
  1247. bsr.w L006954
  1248. bne.s L0075d2
  1249. bsr.w L0069f8
  1250. cmp.l #$00000002,d0
  1251. bcs.s L0075d4
  1252. cmp.l #$000000fa,d0
  1253. bcc.s L0075d4
  1254. move.l d0,d3
  1255. move.b (-$0001,a5),d0
  1256. beq.s L0075d2
  1257. cmp.b #$20,d0 ;' '
  1258. bne.s L0075d4
  1259. bsr.w L0069f8
  1260. cmp.l #$00000400,d0
  1261. bcs.s L0075d4
  1262. cmp.l #$00008001,d0
  1263. bcc.s L0075d4
  1264. move.w d0,($1c70)
  1265. L0075d2:
  1266. rts
  1267. L0075d4:
  1268. lea.l (BuffersStr),a0
  1269. bsr.w L00768c
  1270. rts
  1271. L0075e0:
  1272. lea.l (LastdriveStr),a0
  1273. bsr.w L006954
  1274. bne.s L007604
  1275. bsr.s L007658
  1276. or.b #$20,d0
  1277. sub.b #$61,d0 ;'a'
  1278. cmp.b #$1a,d0
  1279. bcc.s L007606
  1280. cmp.b ($1c75),d0
  1281. bcs.s L007606
  1282. move.b d0,d4
  1283. L007604:
  1284. rts
  1285. L007606:
  1286. lea.l (LastdriveStr),a0
  1287. bsr.s L00768c
  1288. move.b ($1c75),d4
  1289. rts
  1290. L007614:
  1291. lea.l (ScsidevStr),a0
  1292. bsr.w L006954
  1293. bne.s L007632
  1294. bsr.w L006988
  1295. bsr.w L0072aa
  1296. tst.w d0
  1297. bmi.s L007634
  1298. move.b d0,(L006818)
  1299. L007632:
  1300. rts
  1301. L007634:
  1302. lea.l (ScsidevStr),a0
  1303. bra.s L00768c
  1304. L00763c:
  1305. pea.l (L007c02)
  1306. lea.l (ExconfigStr),a0
  1307. bsr.w L006954
  1308. movem.l (sp)+,a0
  1309. bne.s L007656
  1310. bsr.w L0069d4
  1311. L007656:
  1312. rts
  1313. L007658:
  1314. move.b (a5)+,d0
  1315. cmp.b #$20,d0 ;' '
  1316. beq.s L007658
  1317. rts
  1318. L007662:
  1319. lea.l (FilesStr),a0
  1320. bsr.w L006954
  1321. bne.s L007684
  1322. bsr.w L0069f8
  1323. cmp.l #$00000005,d0
  1324. bcs.s L007686
  1325. cmp.l #$0000005e,d0
  1326. bcc.s L007686
  1327. move.l d0,d2
  1328. L007684:
  1329. rts
  1330. L007686:
  1331. lea.l (FilesStr),a0
  1332. L00768c:
  1333. bsr.w L007134
  1334. lea.l (L007d48),a0
  1335. bsr.w L007134
  1336. rts
  1337. L00769c:
  1338. clr.w -(sp)
  1339. pea.l (ConfigDotStr)
  1340. DOS _OPEN
  1341. addq.l #6,sp
  1342. rts
  1343. L0076aa:
  1344. tst.b (UskcgSysStr)
  1345. beq.w L0077be
  1346. movea.l ($1c24),a1
  1347. move.l a1,d1
  1348. clr.l d2
  1349. moveq.l #$38,d0 ;'8'
  1350. trap #15
  1351. move.w #$177f,d1
  1352. bsr.w L00694a
  1353. move.l a1,d1
  1354. moveq.l #$01,d2
  1355. moveq.l #$38,d0 ;'8'
  1356. trap #15
  1357. move.w #$177f,d1
  1358. bsr.w L00694a
  1359. move.l a1,d1
  1360. moveq.l #$02,d2
  1361. moveq.l #$38,d0 ;'8'
  1362. trap #15
  1363. move.w #$1fff,d1
  1364. bsr.w L00694a
  1365. move.l a1,d1
  1366. moveq.l #$03,d2
  1367. moveq.l #$38,d0 ;'8'
  1368. trap #15
  1369. move.w #$34df,d1
  1370. bsr.w L00694a
  1371. move.l a1,d1
  1372. moveq.l #$04,d2
  1373. moveq.l #$38,d0 ;'8'
  1374. trap #15
  1375. move.w #$34df,d1
  1376. bsr.w L00694a
  1377. move.l a1,d1
  1378. moveq.l #$05,d2
  1379. moveq.l #$38,d0 ;'8'
  1380. trap #15
  1381. move.w #$5fff,d1
  1382. bsr.w L00694a
  1383. move.l a1,($1c24)
  1384. move.l a1,d0
  1385. add.l #$00010000,d0
  1386. cmp.l ($1c00),d0
  1387. bcc.w CTRLVCHandler
  1388. clr.w -(sp)
  1389. pea.l (UskcgSysStr)
  1390. DOS _OPEN
  1391. addq.l #6,sp
  1392. tst.l d0
  1393. bmi.w L0077be
  1394. move.w d0,d2
  1395. movea.l ($1c24),a2
  1396. move.l #$000126a2,-(sp)
  1397. move.l a2,-(sp)
  1398. move.w d2,-(sp)
  1399. DOS _READ
  1400. lea.l ($000a,sp),sp
  1401. tst.l d0
  1402. bmi.s L0077b8
  1403. move.l d0,d3
  1404. lea.l ($0022,a2),a2
  1405. L00775e:
  1406. subq.l #2,d3
  1407. bmi.s L0077b8
  1408. moveq.l #$08,d1
  1409. swap.w d1
  1410. move.w (a2)+,d1
  1411. cmp.w #$ffff,d1
  1412. beq.s L00778e
  1413. cmp.w #$8000,d1
  1414. bcc.s L007776
  1415. ror.w #8,d1
  1416. L007776:
  1417. movea.l a2,a1
  1418. moveq.l #$10,d0
  1419. cmp.w #$f000,d1
  1420. bcc.s L007782
  1421. moveq.l #$20,d0 ;' '
  1422. L007782:
  1423. adda.l d0,a2
  1424. sub.l d0,d3
  1425. bmi.s L0077b8
  1426. IOCS _DEFCHR
  1427. bra.s L00775e
  1428. L00778e:
  1429. subq.l #2,d3
  1430. bmi.s L0077b8
  1431. moveq.l #$0c,d1
  1432. swap.w d1
  1433. move.w (a2)+,d1
  1434. cmp.w #$8000,d1
  1435. bcc.s L0077a0
  1436. ror.w #8,d1
  1437. L0077a0:
  1438. movea.l a2,a1
  1439. moveq.l #$30,d0 ;'0'
  1440. cmp.w #$f000,d1
  1441. bcc.s L0077ac
  1442. moveq.l #$48,d0 ;'H'
  1443. L0077ac:
  1444. adda.l d0,a2
  1445. sub.l d0,d3
  1446. bmi.s L0077b8
  1447. IOCS _DEFCHR
  1448. bra.s L00778e
  1449. L0077b8:
  1450. move.w d2,-(sp)
  1451. DOS _CLOSE
  1452. addq.l #2,sp
  1453. L0077be:
  1454. rts
  1455. L0077c0:
  1456. clr.w -(sp)
  1457. pea.l (KeySysStr)
  1458. DOS _OPEN
  1459. addq.l #6,sp
  1460. tst.l d0
  1461. bmi.s L0077fa
  1462. move.w d0,d2
  1463. move.l #$000002c8,-(sp)
  1464. pea.l (L013a42)
  1465. move.w d2,-(sp)
  1466. DOS _READ
  1467. lea.l ($000a,sp),sp
  1468. move.w d2,-(sp)
  1469. DOS _CLOSE
  1470. addq.l #2,sp
  1471. tst.b (L007a90)
  1472. beq.s L0077fa
  1473. jsr (L00fe1c)
  1474. L0077fa:
  1475. rts
  1476. L0077fc:
  1477. clr.w -(sp)
  1478. pea.l (TitleSysStr)
  1479. DOS _OPEN
  1480. addq.l #6,sp
  1481. tst.l d0
  1482. bmi.w L0078e6
  1483. movea.l ($1c24),a0
  1484. move.w d0,d2
  1485. move.l #$00010044,-(sp)
  1486. move.l a0,-(sp)
  1487. move.w d2,-(sp)
  1488. DOS _READ
  1489. lea.l ($000a,sp),sp
  1490. movea.l d0,a1
  1491. move.w d2,-(sp)
  1492. DOS _CLOSE
  1493. addq.l #2,sp
  1494. move.b #$03,(L007a90)
  1495. tst.b (a0)
  1496. bne.w L0078de
  1497. move.w (a0)+,d0
  1498. move.b d0,(L007a90)
  1499. move.w d0,-(sp)
  1500. move.w #$0002,-(sp)
  1501. tst.b d0
  1502. bne.s L007858
  1503. move.w #$0003,-(sp)
  1504. move.w #$000e,-(sp)
  1505. DOS _CONCTRL
  1506. addq.l #4,sp
  1507. L007858:
  1508. DOS _CONCTRL
  1509. addq.l #4,sp
  1510. move.w (a0)+,d7
  1511. move.w (a0)+,d2
  1512. move.w #$0004,d1
  1513. IOCS _TPALET
  1514. move.w (a0)+,d2
  1515. move.w #$0008,d1
  1516. IOCS _TPALET
  1517. IOCS _B_CUROFF
  1518. clr.w d1
  1519. move.b d7,d1
  1520. IOCS _TCOLOR
  1521. movea.l a0,a5
  1522. adda.l #$00000034,a0
  1523. move.l a0,-(sp)
  1524. lea.l (L011096),a0
  1525. bsr.w L0069d4
  1526. movea.l (sp),a0
  1527. move.w (a0)+,d1
  1528. move.w (a0)+,d2
  1529. movea.l a0,a1
  1530. IOCS _TEXTPUT
  1531. addq.l #4,a0
  1532. moveq.l #$ff,d0
  1533. move.w #$3fff,d1
  1534. L0078a6:
  1535. move.l d0,(a0)+
  1536. dbra.w d1,L0078a6
  1537. movea.l (sp)+,a0
  1538. move.w d7,d1
  1539. lsr.w #8,d1
  1540. tst.b d1
  1541. beq.s L0078c4
  1542. IOCS _TCOLOR
  1543. move.w (a0)+,d1
  1544. move.w (a0)+,d2
  1545. movea.l a0,a1
  1546. IOCS _TEXTPUT
  1547. L0078c4:
  1548. move.w #$0003,d1
  1549. IOCS _TCOLOR
  1550. IOCS _B_CURON
  1551. tst.b (L007a90)
  1552. beq.s L0078dc
  1553. IOCS _OS_CURON
  1554. L0078dc:
  1555. bra.s L0078fa
  1556. L0078de:
  1557. adda.l a0,a1
  1558. clr.b (a1)
  1559. clr.b -(a1)
  1560. bra.s L0078ec
  1561. L0078e6:
  1562. lea.l (HelloString),a0
  1563. L0078ec:
  1564. bsr.w L007134
  1565. jsr (L00fe1c)
  1566. L0078f6:
  1567. IOCS _OS_CURON
  1568. L0078fa:
  1569. rts
  1570. L0078fc:
  1571. IOCS _OS_CUROF
  1572. rts
  1573. SetupCallHandlers:
  1574. lea.l (DosCallTable),a0
  1575. lea.l ($1800),a1
  1576. move.w #$00ff,d1
  1577. L007910:
  1578. move.l (a0)+,(a1)+
  1579. dbra.w d1,L007910
  1580. lea.l ($1c00),a0
  1581. move.w #$00ff,d1
  1582. L00791e:
  1583. clr.l (a0)+
  1584. dbra.w d1,L00791e
  1585. move.l #LineFExceptionHandler,($002c)
  1586. tst.b ($0cbc)
  1587. beq.s L00793a
  1588. move.l #LineFExceptionHandler,($0020)
  1589. L00793a:
  1590. move.l #Trap14Handler,($00b8)
  1591. move.l #L0086f2,($07fc)
  1592. move.l #$ffffffff,(L014076)
  1593. lea.l ($00ac),a0
  1594. move.l (a0),($1c66)
  1595. move.l #Trap11Handler,(a0)
  1596. lea.l ($00a8),a0
  1597. move.l (a0),($1c6a)
  1598. move.l #Trap10Handler,(a0)
  1599. lea.l ($00100000),a0
  1600. bsr.w L007a3c
  1601. move.l a0,($1c00)
  1602. move.l #DosCallTable,($1c24)
  1603. lea.l (L008372),a0
  1604. move.l a0,($1c04)
  1605. bsr.w L00a0ec
  1606. pea.l (CTRLVCHandler)
  1607. move.w #$fff1,-(sp)
  1608. DOS _INTVCS
  1609. addq.l #6,sp
  1610. move.w #$0003,($1cbc)
  1611. move.w #$000e,($1cbe)
  1612. move.w #$0010,($1cc0)
  1613. move.w #$0011,($1cc2)
  1614. move.w #$0013,($1cc4)
  1615. move.w (L006806),($1c70)
  1616. move.b (L00680a),(L014074)
  1617. clr.w d0
  1618. move.b (L00680b),d0
  1619. move.w d0,($1c10)
  1620. move.b #$02,($1c12)
  1621. move.b #$01,($1cba)
  1622. lea.l (CurProgBlock),a0
  1623. move.l a0,($1c28)
  1624. move.w #$0003,($1c0c)
  1625. move.w #$0064,($1c0e) ;'d'
  1626. move.l #L008372,($1c20)
  1627. move.b (L006809),($1c74)
  1628. move.b (L006817),($1c0b)
  1629. move.b (L006817),(L00cc2a)
  1630. move.b #$01,(L01120a)
  1631. bsr.w L00a6ea
  1632. tst.b ($0160)
  1633. beq.s L007a3a
  1634. move.w #$00ff,($0160)
  1635. L007a3a:
  1636. rts
  1637. L007a3c:
  1638. movea.l ($00ed0008),a3
  1639. L007a42:
  1640. cmpa.l a3,a0
  1641. bcc.s L007a7a
  1642. movea.l sp,a6
  1643. lea.l (L007a74),a1
  1644. movea.l ($0008),a2
  1645. move.l a1,($0008)
  1646. move.l (a0),d0
  1647. move.l #$5836386b,(a0) ;'X68k'
  1648. cmpi.l #$5836386b,(a0) ;'X68k'
  1649. bne.s L007a74
  1650. move.l d0,(a0)
  1651. move.l a2,($0008)
  1652. adda.l #$00100000,a0
  1653. bra.s L007a42
  1654. L007a74:
  1655. movea.l a6,sp
  1656. move.l a2,($0008)
  1657. L007a7a:
  1658. rts
  1659. L007a7c:
  1660. lea.l (ClockStr),a0
  1661. bsr.w L00e7b6
  1662. move.l d0,($1cb6)
  1663. rts
  1664. L007a8c:
  1665. .dc.b $00,$00,$00,$00
  1666. L007a90:
  1667. .dc.b $03
  1668. ClockStr:
  1669. .dc.b 'CLOCK '
  1670. ConfigDotStr:
  1671. .dc.b 'CONFIG.'
  1672. SysStr:
  1673. .dc.b 'SYS',$00
  1674. FilesStr:
  1675. .dc.b 'files',$00
  1676. BuffersStr:
  1677. .dc.b 'buffers',$00
  1678. LastdriveStr:
  1679. .dc.b 'lastdrive',$00
  1680. TitleStr:
  1681. .dc.b 'title',$00
  1682. KeyStr:
  1683. .dc.b 'key',$00
  1684. UskcgStr:
  1685. .dc.b 'uskcg',$00
  1686. BellStr:
  1687. .dc.b 'bell',$00
  1688. DeviceStr:
  1689. .dc.b 'device',$00
  1690. ProcessStr:
  1691. .dc.b 'process',$00
  1692. ShareStr:
  1693. .dc.b 'share',$00
  1694. CommonStr:
  1695. .dc.b 'common',$00
  1696. EnvsetStr:
  1697. .dc.b 'envset',$00
  1698. ProgramStr:
  1699. .dc.b 'program',$00
  1700. ShellStr:
  1701. .dc.b 'shell',$00
  1702. BreakStr:
  1703. .dc.b 'break',$00
  1704. VerifyStr:
  1705. .dc.b 'verify',$00
  1706. NewfatStr:
  1707. .dc.b 'newfat',$00
  1708. ScsidevStr:
  1709. .dc.b 'scsidev',$00
  1710. ExconfigStr:
  1711. .dc.b 'exconfig',$00
  1712. FflushStr:
  1713. .dc.b 'fflush',$00
  1714. DirschStr:
  1715. .dc.b 'dirsch',$00
  1716. CttyStr:
  1717. .dc.b 'ctty',$00
  1718. RomdbStr:
  1719. .dc.b 'romdb',$00
  1720. OffStr:
  1721. .dc.b 'off',$00
  1722. TitleSysStr:
  1723. .dc.b 'TITLE.SYS',$00,$00,$00
  1724. HumanAuthorStr:
  1725. .dc.b '+--------------+|<Human68K担当>||本迫芳夫(kuma)|+--------------+',$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  1726. KeySysStr:
  1727. .dc.b 'KEY.SYS',$00
  1728. L007ba6:
  1729. .dc.l $00000040
  1730. DefaultPathStr:
  1731. .dc.b 'path=\;\sys;\bin;\basic2;\etc;\shell',$00,$00
  1732. DoNotDistributeStr:
  1733. .dc.b '解析がんばってね勝手に配るなよ!',$00,$00,$00,$00,$00,$00,$00,$00
  1734. UskcgSysStr:
  1735. .dc.b 'USKCG.SYS',$00
  1736. L007c02:
  1737. .dc.w $0000,$0000,$0000
  1738. L007c08:
  1739. .dc.l $00000000,$00000000
  1740. VersionUpStr:
  1741. .dc.b 'Version up 履歴 '
  1742. ForX68000Str:
  1743. .dc.b '-- For X68000 --'
  1744. StartVer:
  1745. .dc.b '1986-04 Start :M'
  1746. Ver100:
  1747. .dc.b '1987-03 1.00 :M'
  1748. Ver101:
  1749. .dc.b '1987-10 1.01 :M'
  1750. Ver200:
  1751. .dc.b '1989-03 2.00 :M'
  1752. Ver201:
  1753. .dc.b '1989-04 2.01 :T'
  1754. Ver202:
  1755. .dc.b '1990-04 2.02 :T'
  1756. Ver203:
  1757. .dc.b '1992-01 2.03 :T'
  1758. ForX680x0Str:
  1759. .dc.b '-- For X680x0 --'
  1760. Ver215:
  1761. .dc.b '1992-11 2.15 :M'
  1762. Ver300:
  1763. .dc.b '1993-02 3.00 :M'
  1764. StaffListStr:
  1765. .dc.b 'vv 担当者一覧 vv'
  1766. YoshioMotosako1Str:
  1767. .dc.b 'Yoshio Motosako'
  1768. YuujiTanakaStr:
  1769. .dc.b 'Yuuji Tanaka ',$00,$00
  1770. CannotRegisterEnvVarStr:
  1771. .dc.b ' は環境変数として登録できませんでした。',$0d,$0a,$00
  1772. CannotStartStr:
  1773. .dc.b ' は起動できませんでした。',$0d,$0a,$00
  1774. L007d48:
  1775. .dc.b 'のパラメーターが異常です。デフォルトを使用します',$0d,$0a,$00
  1776. L007d7b:
  1777. .dc.b 'が登録できませんでした',$0d,$0a,$00
  1778. L007d94:
  1779. .dc.b '1セクタあたりのバイト数が大きすぎます',$0d,$0a,$00
  1780. L007dbd:
  1781. .dc.b 'lastdriveの指定以上のドライバー登録はできません',$0d,$0a,$00
  1782. L007def:
  1783. .dc.b $0d,$0a
  1784. .dc.b $1b,'[mexconfig指定のプログラムは常駐できません。リセットしてください'
  1785. L007e32:
  1786. .dc.b $0d,$0a
  1787. .dc.b $1b,'[mシステムを起動できませんでした。リセットしてください'
  1788. L007e6b:
  1789. .dc.b $00,$00,$00,$00,$00
  1790. L007e70:
  1791. suba.l #$0000001a,sp
  1792. movea.l sp,a5
  1793. move.b #$17,($0000.w,a5)
  1794. move.b #$00,($0002,a5)
  1795. move.l #L00fa50,d1
  1796. L007e8a:
  1797. bsr.w L007f78
  1798. bpl.s L007e8a
  1799. bsr.s L007e9a
  1800. adda.l #$0000001a,sp
  1801. rts
  1802. L007e9a:
  1803. IOCS _BOOTINF
  1804. and.l #$00ffffff,d0
  1805. cmp.l #$00000100,d0
  1806. bcc.s L007ef6
  1807. and.b #$f0,d0
  1808. cmp.b #$80,d0
  1809. beq.s L007ed4
  1810. move.l #L01097e,d1
  1811. move.l d1,(a1)
  1812. bsr.w L007f78
  1813. move.b ($0016,a5),d0
  1814. subq.b #1,d0
  1815. move.b d0,($1c15)
  1816. move.l #L010da2,d1
  1817. bra.s L007ef0
  1818. L007ed4:
  1819. move.l #L010da2,d1
  1820. move.l d1,(a1)
  1821. bsr.w L007f78
  1822. move.b ($0016,a5),d0
  1823. subq.b #1,d0
  1824. move.b d0,($1c15)
  1825. move.l #L01097e,d1
  1826. L007ef0:
  1827. move.l d1,(a1)
  1828. bra.w L007f78
  1829. L007ef6:
  1830. bsr.s L007f0c
  1831. move.l #L01097e,d1
  1832. move.l d1,(a1)
  1833. bsr.s L007f78
  1834. move.l #L010da2,d1
  1835. move.l d1,(a1)
  1836. bra.s L007f78
  1837. L007f0c:
  1838. movem.l d2-d3/a2-a4,-(sp)
  1839. movea.l a1,a2
  1840. movea.l d0,a1
  1841. movea.l (a1),a1
  1842. cmp.l a1,d0
  1843. bcc.s L007f6e
  1844. move.l -(a1),d0
  1845. cmp.l #$6e36386b,d0 ;'n68k'
  1846. bne.s L007f6e
  1847. move.l -(a1),d0
  1848. cmp.l #$48756d61,d0 ;'Huma'
  1849. bne.s L007f6e
  1850. move.l -(a1),d0
  1851. movea.l -(a1),a3
  1852. clr.l d2
  1853. L007f34:
  1854. movea.l ($1c24),a4
  1855. movea.l a4,a1
  1856. jsr (a3)
  1857. cmp.l #$ffffffff,d2
  1858. beq.s L007f6e
  1859. movea.l a4,a1
  1860. move.l #L007f76,d0
  1861. bsr.w L007140
  1862. tst.b ($0003,a5)
  1863. bne.s L007f34
  1864. move.b ($0016,a5),d0
  1865. subq.b #1,d0
  1866. move.b d0,($1c15)
  1867. movem.l d2/a3,-(sp)
  1868. bsr.w L0070ba
  1869. movem.l (sp)+,d2/a3
  1870. bra.s L007f34
  1871. L007f6e:
  1872. movea.l a2,a1
  1873. movem.l (sp)+,d2-d3/a2-a4
  1874. rts
  1875. L007f76:
  1876. .dc.b $00,$00
  1877. L007f78:
  1878. movea.l d1,a1
  1879. move.b ($1c75),d0
  1880. addq.b #1,d0
  1881. move.b d0,($0016,a5)
  1882. bsr.w L00defa
  1883. btst.b #$07,($0004,a1)
  1884. bne.s L007fa8
  1885. tst.b ($000d,a5)
  1886. beq.s L007fa8
  1887. movea.l a5,a0
  1888. bsr.w L0082d0
  1889. bmi.w L007104
  1890. bsr.w L008248
  1891. bmi.w L0070f8
  1892. L007fa8:
  1893. move.l (a1),d1
  1894. rts
  1895. L007fac:
  1896. movem.l d1-d4,-(sp)
  1897. clr.l d3
  1898. move.w #$90ff,d1
  1899. L007fb6:
  1900. IOCS _B_RECALI
  1901. and.l #$10000000,d0
  1902. bne.s L007fce
  1903. addq.w #1,d3
  1904. add.w #$0100,d1
  1905. cmp.w #$94ff,d1
  1906. bne.s L007fb6
  1907. L007fce:
  1908. move.b d3,($000d,a5)
  1909. jsr (L010a40)
  1910. IOCS _BOOTINF
  1911. and.b #$0f,d0
  1912. add.b d0,($0016,a5)
  1913. move.l #L010a52,($0012,a5)
  1914. movem.l (sp)+,d1-d4
  1915. clr.l d0
  1916. bra.w L00fadc
  1917. L007ff6:
  1918. bsr.s L008008
  1919. move.b d0,($000d,a5)
  1920. move.l #L010e0c,($0012,a5)
  1921. bra.w L00fadc
  1922. L008008:
  1923. movem.l d1-d7/a0-a6,-(sp)
  1924. clr.l d4
  1925. lea.l (L010e4c),a2
  1926. lea.l (-$0100,sp),sp
  1927. movea.l sp,a1
  1928. clr.l d1
  1929. move.w #$8000,d1
  1930. moveq.l #$04,d2
  1931. move.l #$00000100,d3
  1932. L008028:
  1933. movem.l d1-d4/a1-a2,-(sp)
  1934. IOCS _B_RECALI
  1935. movem.l (sp)+,d1-d4/a1-a2
  1936. tst.b d0
  1937. bne.w L008142
  1938. clr.l (a1)
  1939. movem.l d1-d4/a1-a2,-(sp)
  1940. IOCS _B_READ
  1941. movem.l (sp)+,d1-d4/a1-a2
  1942. tst.b d0
  1943. bne.w L008142
  1944. cmpi.l #$5836384b,(a1) ;'X68K'
  1945. bne.w L008142
  1946. moveq.l #$0e,d6
  1947. movea.l a1,a0
  1948. L00805c:
  1949. lea.l ($0010,a0),a0
  1950. cmpi.l #$48756d61,(a0) ;'Huma'
  1951. bne.s L0080b4
  1952. cmpi.l #$6e36386b,($0004,a0) ;'n68k'
  1953. beq.s L0080bc
  1954. cmpi.w #$6e2f,($0004,a0) ;'n/'
  1955. bne.s L0080b4
  1956. clr.l d0
  1957. move.b ($0006,a0),d0
  1958. sub.b #$30,d0 ;'0'
  1959. cmp.b #$0a,d0
  1960. bcc.s L0080b4
  1961. mulu.w #$000a,d0
  1962. move.w d0,-(sp)
  1963. move.b ($0007,a0),d0
  1964. sub.b #$30,d0 ;'0'
  1965. cmp.b #$0a,d0
  1966. bcc.s L0080b2
  1967. add.w (sp),d0
  1968. beq.s L0080b2
  1969. move.w d0,(sp)
  1970. subq.w #1,d0
  1971. and.w (sp),d0
  1972. bne.s L0080b2
  1973. move.w (sp)+,d0
  1974. move.b d0,($0002,a2)
  1975. bra.s L0080bc
  1976. L0080b2:
  1977. addq.l #2,sp
  1978. L0080b4:
  1979. dbra.w d6,L00805c
  1980. bra.w L008142
  1981. L0080bc:
  1982. move.l ($0008,a0),d0
  1983. btst.l #$18,d0
  1984. bne.s L0080b4
  1985. tst.b ($0008,a0)
  1986. bne.s L0080e0
  1987. move.l d0,-(sp)
  1988. IOCS _BOOTINF
  1989. lsl.w #8,d0
  1990. cmp.w d1,d0
  1991. movem.l (sp)+,d0
  1992. bne.s L0080e0
  1993. add.b d4,($0016,a5)
  1994. L0080e0:
  1995. cmp.b #$10,d4
  1996. bcc.s L00813e
  1997. and.l #$00ffffff,d0
  1998. swap.w d1
  1999. or.l d1,d0
  2000. swap.w d1
  2001. move.l d0,($000c,a2)
  2002. move.l ($000c,a0),d0
  2003. lsr.l #2,d0
  2004. cmp.l #$0000fff7,d0
  2005. bcc.s L00813e
  2006. move.w d0,($0008,a2)
  2007. clr.l d5
  2008. move.b ($0002,a2),d5
  2009. divu.w d5,d0
  2010. addq.w #2,d0
  2011. move.w d0,d5
  2012. move.l d5,d0
  2013. add.l d5,d5
  2014. cmp.w #$0ff7,d0
  2015. bcs.s L008120
  2016. move.l d5,d0
  2017. L008120:
  2018. add.l d5,d0
  2019. add.l #$000007ff,d0
  2020. lsr.l #8,d0
  2021. lsr.l #3,d0
  2022. cmp.l #$00000100,d0
  2023. bcc.s L00813e
  2024. move.b d0,($000b,a2)
  2025. lea.l ($0010,a2),a2
  2026. addq.l #1,d4
  2027. L00813e:
  2028. bra.w L0080b4
  2029. L008142:
  2030. movem.l a1/a4,-(sp)
  2031. IOCS _B_EJECT
  2032. movem.l (sp)+,a1/a4
  2033. add.w #$0100,d1
  2034. cmp.w #$9000,d1
  2035. bne.w L008028
  2036. bra.s L008160
  2037. IOCS _B_EJECT
  2038. L008160:
  2039. move.w #$8100,d1
  2040. IOCS _B_RECALI
  2041. IOCS _B_EJECT
  2042. move.w #$8000,d1
  2043. IOCS _B_RECALI
  2044. IOCS _B_EJECT
  2045. move.l d4,d0
  2046. lea.l ($0100,sp),sp
  2047. movem.l (sp)+,d1-d7/a0-a6
  2048. rts
  2049. L008184:
  2050. movem.l d1-d2,-(sp)
  2051. clr.l d1
  2052. move.b ($00ed001d),d1
  2053. IOCS _CRTMOD
  2054. moveq.l #$ff,d1
  2055. moveq.l #$ff,d2
  2056. IOCS _B_CONSOL
  2057. cmp.w #$001e,d2
  2058. bcs.s L0081a6
  2059. move.w #$001e,d2
  2060. L0081a6:
  2061. IOCS _B_CONSOL
  2062. move.l #L00fb7c,d1
  2063. moveq.l #$37,d0 ;'7'
  2064. trap #15
  2065. IOCS _B_SFTSNS
  2066. move.w d0,(L01242c)
  2067. movem.l (sp)+,d1-d2
  2068. bra.w L00fadc
  2069. L0081c6:
  2070. moveq.l #$ff,d1
  2071. IOCS _INIT_PRN
  2072. bra.w L00fadc
  2073. L0081d0:
  2074. move.w d1,-(sp)
  2075. move.w ($00ed001a),d1
  2076. IOCS _SET232C
  2077. move.w (sp)+,d1
  2078. bra.w L00fadc
  2079. L0081e2:
  2080. move.b #$03,($1c72)
  2081. move.b ($1c75),($1c73)
  2082. move.w #$0005,($1c6e)
  2083. clr.l d0
  2084. move.l d0,($1c2c)
  2085. move.l d0,($1c30)
  2086. movea.l ($1c24),a0
  2087. L008202:
  2088. move.l a0,($1c34)
  2089. clr.l d2
  2090. move.b ($1c72),d2
  2091. clr.l d3
  2092. move.w ($1c70),d3
  2093. bra.w L00b6f2
  2094. L008216:
  2095. movea.l ($1c24),a0
  2096. bsr.s L008202
  2097. move.w ($1c6e),d1
  2098. subq.w #6,d1
  2099. bcs.s L008242
  2100. move.l a0,($1c2c)
  2101. move.w d1,d0
  2102. L00822a:
  2103. move.w #$ffff,(a0)+
  2104. dbra.w d1,L00822a
  2105. move.l a0,($1c30)
  2106. L008236:
  2107. moveq.l #$5f,d1 ;'_'
  2108. L008238:
  2109. clr.b (a0)+
  2110. dbra.w d1,L008238
  2111. dbra.w d0,L008236
  2112. L008242:
  2113. move.l a0,($1c24)
  2114. rts
  2115. L008248:
  2116. movem.l d0-d1/a0-a1,-(sp)
  2117. move.b ($1c74),d0
  2118. sub.b ($1c75),d0
  2119. bmi.s L00828a
  2120. move.b ($1c75),d0
  2121. cmp.b ($1c73),d0
  2122. bcs.s L008264
  2123. move.b d0,($1c73)
  2124. L008264:
  2125. movea.l ($1c3c),a1
  2126. movea.l ($1c38),a0
  2127. clr.l d1
  2128. move.b ($1c75),d1
  2129. L008272:
  2130. move.l a1,($0046,a0)
  2131. move.b #$40,($0045,a0) ;'@'
  2132. lea.l ($004e,a0),a0
  2133. movea.l ($0006,a1),a1
  2134. dbra.w d1,L008272
  2135. clr.l d0
  2136. L00828a:
  2137. movem.l (sp)+,d0-d1/a0-a1
  2138. rts
  2139. L008290:
  2140. movea.l ($1c24),a0
  2141. move.l a0,($1c38)
  2142. move.l #$413a0900,d0
  2143. clr.w d2
  2144. move.b ($1c74),d2
  2145. L0082a4:
  2146. clr.l d3
  2147. bsr.s L0082b2
  2148. dbra.w d2,L0082a4
  2149. move.l a0,($1c24)
  2150. rts
  2151. L0082b2:
  2152. move.l d0,(a0)+
  2153. add.l #$01000000,d0
  2154. moveq.l #$40,d1 ;'@'
  2155. L0082bc:
  2156. clr.b (a0)+
  2157. dbra.w d1,L0082bc
  2158. move.b d3,(a0)+
  2159. move.l a1,(a0)+
  2160. move.w #$ffff,(a0)+
  2161. move.w #$0002,(a0)+
  2162. rts
  2163. L0082d0:
  2164. movem.l d0-d7/a0-a6,-(sp)
  2165. move.l ($1c3c),d1
  2166. bne.s L0082e6
  2167. movea.l ($1c24),a2
  2168. move.l a2,($1c3c)
  2169. clr.l d6
  2170. bra.s L0082fc
  2171. L0082e6:
  2172. movea.l d1,a3
  2173. move.l ($0006,a3),d1
  2174. bpl.s L0082e6
  2175. movea.l ($1c24),a2
  2176. move.l a2,($0006,a3)
  2177. move.b ($0000.w,a3),d6
  2178. addq.b #1,d6
  2179. L0082fc:
  2180. clr.w d7
  2181. move.b ($000d,a0),d7
  2182. move.l #$00010000,d5
  2183. swap.w d7
  2184. clr.w d7
  2185. movea.l ($0012,a0),a3
  2186. L008310:
  2187. move.b d6,($0000.w,a2)
  2188. move.b d7,($0001,a2)
  2189. move.l a1,($0002,a2)
  2190. move.l a3,-(sp)
  2191. btst.b #$05,($0004,a1)
  2192. bne.s L008338
  2193. movea.l (a3),a3
  2194. bsr.w L00d322
  2195. movea.l a2,a3
  2196. lea.l ($0038,a3),a2
  2197. tst.l d0
  2198. bmi.s L008358
  2199. bra.s L008344
  2200. L008338:
  2201. clr.w ($000a,a2)
  2202. movea.l a2,a3
  2203. lea.l ($000c,a3),a2
  2204. clr.l d0
  2205. L008344:
  2206. sub.l d5,d7
  2207. cmp.l d5,d7
  2208. bcs.s L008358
  2209. move.l a2,($0006,a3)
  2210. movea.l (sp)+,a3
  2211. addq.l #4,a3
  2212. addq.w #1,d7
  2213. addq.w #1,d6
  2214. bra.s L008310
  2215. L008358:
  2216. move.l #$ffffffff,($0006,a3)
  2217. movea.l (sp)+,a3
  2218. move.b d6,($1c75)
  2219. move.l a2,($1c24)
  2220. tst.l d0
  2221. movem.l (sp)+,d0-d7/a0-a6
  2222. L008370:
  2223. rts
  2224. L008372:
  2225. .dc.l $00000000,$00000000
  2226. L00837a:
  2227. .dc.l DosCallTable
  2228. .dc.l $00000000
  2229. L008382:
  2230. .dc.l $ffffffff,$00000000
  2231. .dc.l $00000000,$00000000
  2232. .dc.l $00000000,$00000000
  2233. .dc.l $00000000,$00000000
  2234. .dc.l $00000000,$00000000
  2235. .dc.l $00000000,$00000000
  2236. .dc.l $00000000,$00002000
  2237. .dc.l $00006800
  2238. L0083be:
  2239. .dc.l $00000000,$00000000
  2240. .dc.l $00000000,$00000000
  2241. .dc.l $00000000,$00000000
  2242. .dc.l $00000000,$00000000
  2243. .dc.l $00000000,$00000000
  2244. .dc.l $00000000,$00000000
  2245. .dc.l $00000000
  2246. L0083f2:
  2247. .dc.b 'A:\',$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  2248. .dc.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  2249. .dc.b $00,$00,$00,$00,$00
  2250. .dc.b 'HUMAN.SYS',$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  2251. .dc.b $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00
  2252. L008472:
  2253. lea.l (Start),a0
  2254. lea.l (L008370+$000001),a1
  2255. suba.l a0,a1
  2256. move.l a1,d1
  2257. moveq.l #$ff,d0
  2258. L008484:
  2259. move.b d0,(a0)+
  2260. dbra.w d1,L008484
  2261. L00848a:
  2262. lea.l (L008372),sp
  2263. move.l (L008382),-(sp)
  2264. move.l (L011090),-(sp)
  2265. pea.l (L011096)
  2266. move.w #$0002,-(sp)
  2267. DOS _EXEC
  2268. lea.l ($000e,sp),sp
  2269. tst.l d0
  2270. bmi.s L0084f4
  2271. move.l (L008382),-(sp)
  2272. move.l (L011090),-(sp)
  2273. pea.l (L011096)
  2274. move.w #$0001,-(sp)
  2275. DOS _EXEC
  2276. lea.l ($000e,sp),sp
  2277. tst.l d0
  2278. bmi.s L0084f4
  2279. move.l #$ffffffff,($0060,a0)
  2280. move.l (L008382),-(sp)
  2281. move.l (L011090),-(sp)
  2282. move.l d0,-(sp)
  2283. move.w #$0004,-(sp)
  2284. DOS _EXEC
  2285. lea.l ($000e,sp),sp
  2286. tst.l d0
  2287. bpl.s L008518
  2288. L0084f4:
  2289. move.w #$0003,-(sp)
  2290. move.w #$0002,-(sp)
  2291. DOS _CONCTRL
  2292. addq.l #4,sp
  2293. bsr.s L00855a
  2294. pea.l (L011096)
  2295. DOS _PRINT
  2296. addq.l #4,sp
  2297. pea.l (L011193)
  2298. DOS _PRINT
  2299. addq.l #4,sp
  2300. bra.s L008524
  2301. L008518:
  2302. bsr.s L00855a
  2303. pea.l (L0111ae)
  2304. DOS _PRINT
  2305. addq.l #4,sp
  2306. L008524:
  2307. pea.l (L0111bd)
  2308. bra.s L008532
  2309. L00852c:
  2310. pea.l (L0111db)
  2311. L008532:
  2312. DOS _PRINT
  2313. addq.l #4,sp
  2314. clr.b (L011095)
  2315. clr.b (L011096)
  2316. pea.l (L011094)
  2317. DOS _GETSS
  2318. addq.l #4,sp
  2319. bsr.s L00855a
  2320. tst.b (L011095)
  2321. beq.s L00852c
  2322. bra.w L00848a
  2323. L00855a:
  2324. pea.l (L0111ee)
  2325. DOS _PRINT
  2326. addq.l #4,sp
  2327. rts
  2328. Call_CTRLVC_ERRJVC_EXITVC:
  2329. DOS _GETPDB
  2330. cmp.l #L008382,d0
  2331. bne.s L008596
  2332. lea.l (L008372),sp
  2333. clr.l -(sp)
  2334. DOS _SUPER
  2335. addq.l #4,sp
  2336. movea.l (L011090),a0
  2337. lea.l ($00f0,a0),a0
  2338. move.l a0,usp
  2339. bsr.s L00855a
  2340. pea.l (L0111dd)
  2341. DOS _PRINT
  2342. addq.l #4,sp
  2343. bra.s L008524
  2344. L008596:
  2345. DOS _EXIT
  2346. LineFExceptionHandler:
  2347. movem.l d0/a5-a6,-(sp)
  2348. lea.l ($000e,sp),a6
  2349. movea.l (a6),a5
  2350. move.w (a5)+,d0
  2351. cmpi.w #$ff00,d0
  2352. bcs.s L008624
  2353. move.l a5,(a6)+
  2354. tst.b ($0cbc)
  2355. beq.s L0085b4
  2356. addq.l #2,a6
  2357. L0085b4:
  2358. cmpi.w #$fff5,d0
  2359. bcc.w L00e31c
  2360. addq.l #4,sp
  2361. movem.l d1-d7/a0-a4,-(sp)
  2362. btst.b #$05,($0038,sp)
  2363. bne.s L0085cc
  2364. move.l usp,a6
  2365. L0085cc:
  2366. clr.l d1
  2367. move.b d0,d1
  2368. move.l d1,d0
  2369. lea.l ($1800),a0
  2370. add.w d1,d1
  2371. add.w d1,d1
  2372. adda.l d1,a0
  2373. movea.l (a0),a0
  2374. tst.w ($1c08)
  2375. bne.s L0085ec
  2376. move.l sp,($1c5c)
  2377. move.b d0,($1c0a)
  2378. L0085ec:
  2379. addq.w #1,($1c08)
  2380. clr.l ($1c98)
  2381. jsr (a0)
  2382. clr.l ($1c98)
  2383. subq.w #1,($1c08)
  2384. bne.s L008604
  2385. clr.b ($1c0a)
  2386. L008604:
  2387. move.l d0,-(sp)
  2388. bsr.w L008740
  2389. movem.l (sp)+,d0-d7/a0-a6
  2390. tst.b ($1c14)
  2391. bne.w L00e050
  2392. L008616:
  2393. btst.b #$07,(sp)
  2394. bne.s L00861e
  2395. rte
  2396. L00861e:
  2397. ori.w #$8000,sr
  2398. rte
  2399. L008624:
  2400. movea.l d0,a6
  2401. and.w #$ffc0,d0
  2402. cmp.w #$40c0,d0
  2403. beq.s L008652
  2404. move.l a6,d0
  2405. and.w #$ff00,d0
  2406. cmp.w #$fe00,d0
  2407. beq.s L008646
  2408. movem.l (sp)+,d0/a5-a6
  2409. move.l ($0010),-(sp)
  2410. rts
  2411. L008646:
  2412. move.l a6,d7
  2413. lea.l ($000c,sp),a6
  2414. trap #14
  2415. bra.w L008826
  2416. L008652:
  2417. move.l a6,d0
  2418. or.w #$0200,d0
  2419. move.w d0,-(a5)
  2420. movec.l cacr,d0
  2421. or.w #$0008,d0
  2422. movec.l d0,cacr
  2423. movem.l (sp)+,d0/a5-a6
  2424. rte
  2425. Call_Reserved:
  2426. moveq.l #$ff,d0
  2427. rts
  2428. Trap11Handler:
  2429. tst.b ($1c16)
  2430. bne.s L00868c
  2431. or.b #$80,d0
  2432. move.b d0,($1c16)
  2433. tst.w ($1c08)
  2434. bne.s L00868c
  2435. bsr.w L008760
  2436. clr.b ($1c16)
  2437. L00868c:
  2438. rte
  2439. Trap10Handler:
  2440. move.l d0,($1c18)
  2441. move.b #$01,($1c17)
  2442. tst.w ($1c08)
  2443. bne.s L0086a2
  2444. bsr.w L008798
  2445. L0086a2:
  2446. rte
  2447. L0086a4:
  2448. tst.b ($1ca0)
  2449. beq.s L0086b0
  2450. bsr.w L0087d4
  2451. bmi.s L0086d8
  2452. L0086b0:
  2453. movea.l ($1c5c),sp
  2454. bsr.w L009020
  2455. lea.l (L0111ec),a1
  2456. bsr.w L008818
  2457. move.l ($1bc4),d0
  2458. move.l d0,($003a,sp)
  2459. cmp.l (L00837a),d0
  2460. bcc.s L0086d8
  2461. ori.w #$2000,($0038,sp)
  2462. L0086d8:
  2463. movea.l ($1c5c),sp
  2464. clr.w ($1c08)
  2465. clr.b ($1c0a)
  2466. move.l #$00002000,d0
  2467. movem.l (sp)+,d1-d7/a0-a6
  2468. bra.w L008616
  2469. L0086f2:
  2470. move.l ($1c98),d0
  2471. beq.s L00870a
  2472. movea.l d0,a0
  2473. move.l ($1c9c),d0
  2474. bsr.w L00aba4
  2475. bsr.w L00dd02
  2476. clr.l ($1c98)
  2477. L00870a:
  2478. tst.b ($1ca0)
  2479. beq.s L008716
  2480. bsr.w L0087d4
  2481. bmi.s L0086d8
  2482. L008716:
  2483. movea.l ($1c62),sp
  2484. bsr.w L00882e
  2485. clr.w ($1c08)
  2486. clr.b ($1c0a)
  2487. tst.b ($0cbc)
  2488. beq.s L008730
  2489. move.w #$0000,-(sp)
  2490. L008730:
  2491. move.l ($1bc8),-(sp)
  2492. move.w ($1c60),-(sp)
  2493. move.l #$00004000,d0
  2494. rte
  2495. L008740:
  2496. bsr.s L008752
  2497. tst.b ($1c17)
  2498. beq.s L008750
  2499. tst.w ($1c08)
  2500. bne.s L008750
  2501. bsr.s L008798
  2502. L008750:
  2503. rts
  2504. L008752:
  2505. tst.b ($1c16)
  2506. beq.s L00875e
  2507. bsr.s L008760
  2508. clr.b ($1c16)
  2509. L00875e:
  2510. rts
  2511. L008760:
  2512. move.b ($1c16),d0
  2513. and.l #$0000007f,d0
  2514. move.l d0,-(sp)
  2515. btst.l #$00,d0
  2516. bne.s L008778
  2517. bsr.w L00b6ba
  2518. bra.s L008780
  2519. L008778:
  2520. bsr.w L009020
  2521. bsr.w L009030
  2522. L008780:
  2523. move.l (sp)+,d0
  2524. tst.b ($0cbc)
  2525. beq.s L008790
  2526. movea.l (sp)+,a0
  2527. move.w #$0000,-(sp)
  2528. move.l a0,-(sp)
  2529. L008790:
  2530. move.w sr,-(sp)
  2531. movea.l ($1c66),a0
  2532. jmp (a0)
  2533. L008798:
  2534. bsr.w L008834
  2535. clr.b ($1c17)
  2536. bsr.s L0087c0
  2537. bsr.w L00b6ba
  2538. tst.b ($0cbc)
  2539. beq.s L0087b4
  2540. movea.l (sp)+,a0
  2541. move.w #$0000,-(sp)
  2542. move.l a0,-(sp)
  2543. L0087b4:
  2544. move.w sr,-(sp)
  2545. move.l ($1c18),d0
  2546. movea.l ($1c6a),a0
  2547. jmp (a0)
  2548. L0087c0:
  2549. move.w ($1c6e),d2
  2550. L0087c4:
  2551. move.w d2,-(sp)
  2552. move.w d2,d0
  2553. bsr.w L00c236
  2554. move.w (sp)+,d2
  2555. subq.w #1,d2
  2556. bpl.s L0087c4
  2557. rts
  2558. L0087d4:
  2559. move.l (L014076),d0
  2560. bmi.s L0087ec
  2561. move.w d0,-(sp)
  2562. DOS _CLOSE
  2563. addq.l #2,sp
  2564. move.l #$ffffffff,(L014076)
  2565. L0087ec:
  2566. move.b ($1ca0),d0
  2567. clr.b ($1ca0)
  2568. cmp.b #-$03,d0
  2569. beq.s L008814
  2570. cmp.b #-$02,d0
  2571. beq.s L00880c
  2572. moveq.l #$01,d0
  2573. bsr.w L0099d8
  2574. bmi.s L008816
  2575. move.l a0,($1caa)
  2576. L00880c:
  2577. movea.l ($1caa),a0
  2578. bsr.w L009384
  2579. L008814:
  2580. clr.l d0
  2581. L008816:
  2582. rts
  2583. L008818:
  2584. clr.w d1
  2585. L00881a:
  2586. move.b (a1)+,d1
  2587. beq.s L008824
  2588. bsr.w L008f48
  2589. bra.s L00881a
  2590. L008824:
  2591. rts
  2592. L008826:
  2593. IOCS _ABORTJOB
  2594. trap #14
  2595. rts
  2596. L00882e:
  2597. IOCS _ABORTRST
  2598. rts
  2599. L008834:
  2600. movem.l d1-d2,-(sp)
  2601. moveq.l #$ff,d1
  2602. IOCS _CONTRAST
  2603. move.l d0,d2
  2604. and.b #$0f,d2
  2605. asl.l #1,d2
  2606. clr.l d1
  2607. IOCS _CONTRAST
  2608. L00884c:
  2609. swap.w d2
  2610. L00884e:
  2611. dbra.w d2,L00884e
  2612. swap.w d2
  2613. dbra.w d2,L00884c
  2614. movem.l (sp)+,d1-d2
  2615. rts
  2616. Call_GETCHAR:
  2617. bsr.w Call_INKEY
  2618. move.l d0,d1
  2619. cmp.w ($1cc0),d0
  2620. beq.s L00887c
  2621. cmp.w ($1cbe),d0
  2622. beq.s L008882
  2623. bsr.w L0088a6
  2624. bsr.w L008f48
  2625. move.l d1,d0
  2626. rts
  2627. L00887c:
  2628. not.b ($1c13)
  2629. bra.s Call_GETCHAR
  2630. L008882:
  2631. clr.b ($1c13)
  2632. bra.s Call_GETCHAR
  2633. Call_PUTCHAR:
  2634. move.w (a6),d1
  2635. L00888a:
  2636. bsr.w L008f48
  2637. L00888e:
  2638. bsr.w L009014
  2639. cmp.w ($1cc4),d1
  2640. beq.s L0088c0
  2641. L008898:
  2642. clr.l d0
  2643. cmp.w ($1cc0),d1
  2644. beq.s L0088cc
  2645. cmp.w ($1cbe),d1
  2646. beq.s L0088d8
  2647. L0088a6:
  2648. tst.b ($1c17)
  2649. bne.w L008798
  2650. cmpi.b #$02,($1c12)
  2651. beq.s L0088be
  2652. cmp.w ($1cbc),d1
  2653. beq.w L0086a4
  2654. L0088be:
  2655. rts
  2656. L0088c0:
  2657. bsr.w L008f62
  2658. bsr.w Call_INKEY
  2659. move.l d0,d1
  2660. bra.s L008898
  2661. L0088cc:
  2662. bsr.w L008f62
  2663. not.b ($1c13)
  2664. clr.l d0
  2665. rts
  2666. L0088d8:
  2667. bsr.w L008f62
  2668. clr.b ($1c13)
  2669. clr.l d0
  2670. rts
  2671. Call_COMINP:
  2672. bsr.w Call_CINSNS
  2673. tst.l d0
  2674. bne.s L0088f6
  2675. bsr.w L009014
  2676. bsr.w L0088a6
  2677. bra.s Call_COMINP
  2678. L0088f6:
  2679. bsr.w L008f70
  2680. rts
  2681. Call_COMOUT:
  2682. move.w (a6),-(sp)
  2683. L0088fe:
  2684. bsr.w Call_COUTSNS
  2685. tst.l d0
  2686. bne.s L008910
  2687. bsr.w L009014
  2688. bsr.w L0088a6
  2689. bra.s L0088fe
  2690. L008910:
  2691. move.w (sp)+,d1
  2692. bsr.w L008f74
  2693. rts
  2694. Call_PRNOUT:
  2695. move.w (a6),-(sp)
  2696. L00891a:
  2697. bsr.w Call_PRNSNS
  2698. tst.l d0
  2699. bne.s L00892c
  2700. bsr.w L009014
  2701. bsr.w L0088a6
  2702. bra.s L00891a
  2703. L00892c:
  2704. move.w (sp)+,d1
  2705. bsr.w L008f78
  2706. rts
  2707. Call_INPOUT:
  2708. move.w (a6),d1
  2709. cmp.b #$ff,d1
  2710. beq.s L00894a
  2711. cmp.b #$fe,d1
  2712. beq.s L008952
  2713. bsr.w L008f48
  2714. clr.l d0
  2715. rts
  2716. L00894a:
  2717. bsr.w L008f62
  2718. move.l d1,d0
  2719. rts
  2720. L008952:
  2721. bsr.w L009014
  2722. move.l d1,d0
  2723. rts
  2724. L00895a:
  2725. DOS _CHANGE_PR
  2726. Call_INKEY:
  2727. tst.b ($1c17)
  2728. bne.w L008798
  2729. bsr.w L008f62
  2730. tst.l d1
  2731. beq.s L00895a
  2732. move.l d1,d0
  2733. rts
  2734. L008970:
  2735. cmpi.b #$02,($1c12)
  2736. bne.w L0086a4
  2737. Call_GETC:
  2738. bsr.w Call_INKEY
  2739. cmp.w ($1cbc),d0
  2740. beq.s L008970
  2741. cmp.w ($1cc0),d0
  2742. beq.s L008992
  2743. cmp.w ($1cbe),d0
  2744. beq.s L008998
  2745. rts
  2746. L008992:
  2747. not.b ($1c13)
  2748. bra.s Call_GETC
  2749. L008998:
  2750. clr.b ($1c13)
  2751. bra.s Call_GETC
  2752. Call_PRINT:
  2753. movea.l (a6),a1
  2754. L0089a0:
  2755. clr.w d1
  2756. move.b (a1)+,d1
  2757. beq.s L0089ac
  2758. bsr.w L00888a
  2759. bra.s L0089a0
  2760. L0089ac:
  2761. rts
  2762. L0089ae:
  2763. clr.w -(sp)
  2764. move.w d3,d0
  2765. movem.l a0-a1,-(sp)
  2766. bsr.w L00a9d8
  2767. move.l a0,d0
  2768. movem.l (sp)+,a0-a1
  2769. move.l d0,-(sp)
  2770. move.w d3,-(sp)
  2771. bra.s L0089d4
  2772. Call_GETSS:
  2773. move.w #$8000,-(sp)
  2774. bra.s L0089ce
  2775. Call_GETS:
  2776. clr.w -(sp)
  2777. L0089ce:
  2778. clr.l -(sp)
  2779. clr.w -(sp)
  2780. movea.l (a6),a1
  2781. L0089d4:
  2782. movea.l sp,a3
  2783. L0089d6:
  2784. bsr.w L008da0
  2785. lea.l (-$0100,sp),sp
  2786. move.b (a1)+,d2
  2787. movea.l a1,a2
  2788. addq.l #1,a1
  2789. movea.l a1,a5
  2790. movea.l sp,a6
  2791. L0089e8:
  2792. move.w #$00ff,d0
  2793. L0089ec:
  2794. move.b (a5)+,(a6)+
  2795. dbra.w d0,L0089ec
  2796. L0089f2:
  2797. movea.l sp,a6
  2798. clr.w d4
  2799. bra.s L008a02
  2800. L0089f8:
  2801. moveq.l #$07,d1
  2802. bsr.w L008ea4
  2803. bsr.w L008e2c
  2804. L008a02:
  2805. bsr.w L008e72
  2806. clr.l d1
  2807. move.b d0,d1
  2808. cmp.w #$000a,d1
  2809. beq.s L008a02
  2810. cmp.w #$000d,d1
  2811. beq.s L008a56
  2812. cmp.w #$0008,d1
  2813. beq.s L008a78
  2814. cmp.w #$001b,d1
  2815. beq.s L008a8e
  2816. L008a22:
  2817. cmp.b d2,d4
  2818. bcc.s L0089f8
  2819. move.w d1,d0
  2820. bsr.w L008bb6
  2821. add.l d4,d0
  2822. cmp.b d2,d0
  2823. bcc.s L0089f8
  2824. clr.w d0
  2825. tst.b ($1ca2)
  2826. bne.s L008a44
  2827. move.b (a1),d0
  2828. beq.s L008a44
  2829. bsr.w L008bb6
  2830. addq.l #1,a1
  2831. L008a44:
  2832. addq.b #1,d4
  2833. move.b d1,(a6)+
  2834. tst.w d0
  2835. beq.s L008a50
  2836. move.b #$20,(a1) ;' '
  2837. L008a50:
  2838. bsr.w L008afc
  2839. bra.s L008a02
  2840. L008a56:
  2841. moveq.l #$0d,d1
  2842. bsr.w L008ea4
  2843. clr.b (a6)
  2844. move.b d4,(a2)+
  2845. clr.w d0
  2846. move.b d4,d0
  2847. movea.l a2,a1
  2848. movea.l sp,a0
  2849. L008a68:
  2850. move.b (a0)+,(a1)+
  2851. dbra.w d0,L008a68
  2852. clr.l d0
  2853. move.b d4,d0
  2854. lea.l ($0108,sp),sp
  2855. rts
  2856. L008a78:
  2857. bsr.w L008da0
  2858. bsr.w L008b1a
  2859. cmpa.l a1,a2
  2860. bcs.w L008a02
  2861. lea.l ($0001,a2),a1
  2862. bra.w L008a02
  2863. L008a8e:
  2864. bsr.w L008e60
  2865. move.l d0,d1
  2866. cmp.w #$0020,d1 ;' '
  2867. bcs.s L008a22
  2868. and.w #$00df,d1
  2869. lea.l (L008ed6),a5
  2870. lea.l (L008ad8),a4
  2871. move.w #$0008,d0
  2872. L008aae:
  2873. cmp.b (a5)+,d1
  2874. beq.s L008ad0
  2875. addq.l #4,a4
  2876. dbra.w d0,L008aae
  2877. cmp.b #$40,d1 ;'@'
  2878. bcs.w L008a02
  2879. cmp.b #$60,d1 ;'`'
  2880. bcc.w L008a02
  2881. and.w #$001f,d1
  2882. bra.w L008a22
  2883. L008ad0:
  2884. movea.l (a4),a4
  2885. jsr (a4)
  2886. bra.w L008a02
  2887. L008ad8:
  2888. .dc.l L008c52
  2889. .dc.l L008c7c
  2890. .dc.l L008c90
  2891. .dc.l L008cac
  2892. .dc.l L008cc6
  2893. .dc.l L008cdc
  2894. .dc.l L008cec
  2895. .dc.l L008d94
  2896. .dc.l L008d14
  2897. L008afc:
  2898. cmp.b #$20,d1 ;' '
  2899. bcs.s L008b06
  2900. bra.w L008ea4
  2901. L008b06:
  2902. move.w d1,-(sp)
  2903. move.b #$5e,d1 ;'^'
  2904. bsr.w L008ea4
  2905. move.w (sp)+,d1
  2906. add.w #$0040,d1
  2907. bra.w L008ea4
  2908. L008b1a:
  2909. clr.l d0
  2910. tst.b d4
  2911. beq.s L008b44
  2912. bsr.s L008b46
  2913. L008b22:
  2914. move.l d0,-(sp)
  2915. moveq.l #$08,d1
  2916. bsr.w L008ea4
  2917. moveq.l #$20,d1 ;' '
  2918. bsr.w L008ea4
  2919. moveq.l #$08,d1
  2920. bsr.w L008ea4
  2921. move.l (sp)+,d0
  2922. subq.w #1,d0
  2923. bne.s L008b22
  2924. swap.w d0
  2925. suba.l d0,a1
  2926. suba.l d0,a6
  2927. sub.b d0,d4
  2928. L008b44:
  2929. rts
  2930. L008b46:
  2931. movem.l d1/a6,-(sp)
  2932. clr.l d0
  2933. move.b d4,d0
  2934. suba.l d0,a6
  2935. L008b50:
  2936. move.b (a6)+,d1
  2937. cmp.b #$80,d1
  2938. bcs.s L008b68
  2939. cmp.b #$a0,d1
  2940. bcs.s L008b64
  2941. cmp.b #$e0,d1
  2942. bcs.s L008b68
  2943. L008b64:
  2944. addq.l #1,a6
  2945. subq.w #1,d0
  2946. L008b68:
  2947. subq.w #1,d0
  2948. bne.s L008b50
  2949. move.b d1,d0
  2950. bsr.s L008b76
  2951. movem.l (sp)+,d1/a6
  2952. rts
  2953. L008b76:
  2954. cmp.b #$20,d0 ;' '
  2955. bcs.s L008bae
  2956. cmp.b #$80,d0
  2957. bcs.s L008b9e
  2958. beq.s L008b96
  2959. cmp.b #$a0,d0
  2960. bcs.s L008ba6
  2961. cmp.b #$e0,d0
  2962. bcs.s L008b9e
  2963. cmp.b #$f0,d0
  2964. bcs.s L008ba6
  2965. L008b96:
  2966. move.l #$00020001,d0
  2967. rts
  2968. L008b9e:
  2969. move.l #$00010001,d0
  2970. rts
  2971. L008ba6:
  2972. move.l #$00020002,d0
  2973. rts
  2974. L008bae:
  2975. move.l #$00010002,d0
  2976. rts
  2977. L008bb6:
  2978. cmp.b #$80,d0
  2979. bcs.s L008bcc
  2980. cmp.b #$a0,d0
  2981. bcs.s L008bc8
  2982. cmp.b #$e0,d0
  2983. bcs.s L008bcc
  2984. L008bc8:
  2985. moveq.l #$01,d0
  2986. rts
  2987. L008bcc:
  2988. clr.l d0
  2989. rts
  2990. L008bd0:
  2991. bsr.w L008e72
  2992. clr.w d1
  2993. move.b d0,d1
  2994. bsr.s L008bb6
  2995. beq.s L008be8
  2996. asl.w #8,d1
  2997. move.w d1,-(sp)
  2998. bsr.w L008e72
  2999. move.w (sp)+,d1
  3000. move.b d0,d1
  3001. L008be8:
  3002. rts
  3003. L008bea:
  3004. clr.w d5
  3005. movea.l a1,a5
  3006. move.b (a5)+,d0
  3007. beq.s L008c30
  3008. addq.w #1,d5
  3009. cmp.b #$80,d0
  3010. bcs.s L008c0c
  3011. cmp.b #$a0,d0
  3012. bcs.s L008c06
  3013. cmp.b #$e0,d0
  3014. bcs.s L008c0c
  3015. L008c06:
  3016. move.b (a5)+,d0
  3017. beq.s L008c30
  3018. addq.w #1,d5
  3019. L008c0c:
  3020. cmp.w #$0100,d1
  3021. bcc.s L008c34
  3022. L008c12:
  3023. move.b (a5)+,d0
  3024. beq.s L008c30
  3025. move.w d0,d6
  3026. bsr.s L008bb6
  3027. beq.s L008c24
  3028. move.b (a5)+,d0
  3029. beq.s L008c30
  3030. addq.w #2,d5
  3031. bra.s L008c12
  3032. L008c24:
  3033. cmp.b d1,d6
  3034. beq.s L008c2c
  3035. addq.w #1,d5
  3036. bra.s L008c12
  3037. L008c2c:
  3038. move.w d5,d0
  3039. rts
  3040. L008c30:
  3041. clr.w d0
  3042. rts
  3043. L008c34:
  3044. move.b (a5)+,d0
  3045. beq.s L008c30
  3046. move.w d0,d6
  3047. bsr.w L008bb6
  3048. beq.s L008c4e
  3049. asl.w #8,d6
  3050. move.b (a5)+,d6
  3051. beq.s L008c30
  3052. cmp.w d6,d1
  3053. beq.s L008c2c
  3054. addq.w #2,d5
  3055. bra.s L008c34
  3056. L008c4e:
  3057. addq.w #1,d5
  3058. bra.s L008c34
  3059. L008c52:
  3060. bsr.w L008da0
  3061. move.b (a1),d0
  3062. beq.s L008c7a
  3063. bsr.w L008b76
  3064. swap.w d0
  3065. subq.w #1,d0
  3066. move.w d0,d5
  3067. add.b d4,d0
  3068. cmp.b d2,d0
  3069. bcc.s L008c7a
  3070. L008c6a:
  3071. clr.w d1
  3072. move.b (a1)+,d1
  3073. move.b d1,(a6)+
  3074. addq.b #1,d4
  3075. bsr.w L008afc
  3076. dbra.w d5,L008c6a
  3077. L008c7a:
  3078. rts
  3079. L008c7c:
  3080. bsr.w L008da0
  3081. bsr.w L008bd0
  3082. bsr.w L008bea
  3083. beq.s L008c7a
  3084. move.w d0,d5
  3085. subq.w #1,d5
  3086. bra.s L008c6a
  3087. L008c90:
  3088. bsr.w L008da0
  3089. L008c94:
  3090. cmp.b d2,d4
  3091. bcc.s L008c7a
  3092. clr.w d1
  3093. move.b (a1)+,d1
  3094. beq.s L008ca8
  3095. move.b d1,(a6)+
  3096. addq.b #1,d4
  3097. bsr.w L008afc
  3098. bra.s L008c94
  3099. L008ca8:
  3100. subq.l #1,a1
  3101. rts
  3102. L008cac:
  3103. bsr.w L008da0
  3104. move.b (a1)+,d0
  3105. beq.s L008ca8
  3106. bsr.w L008b76
  3107. swap.w d0
  3108. cmp.b #$02,d0
  3109. bne.s L008cc4
  3110. move.b (a1)+,d0
  3111. beq.s L008ca8
  3112. L008cc4:
  3113. rts
  3114. L008cc6:
  3115. bsr.w L008da0
  3116. bsr.w L008bd0
  3117. bsr.w L008bea
  3118. beq.s L008c7a
  3119. clr.l d5
  3120. move.w d0,d5
  3121. adda.l d5,a1
  3122. rts
  3123. L008cdc:
  3124. bsr.w L008da0
  3125. bsr.s L008d0c
  3126. addq.l #4,sp
  3127. lea.l ($0001,a2),a1
  3128. bra.w L0089f2
  3129. L008cec:
  3130. bsr.w L008da0
  3131. tst.w ($0006,a3)
  3132. bne.s L008d4e
  3133. clr.b (a6)
  3134. move.b #$40,d1 ;'@'
  3135. bsr.s L008d60
  3136. lea.l ($0001,a2),a1
  3137. addq.l #4,sp
  3138. movea.l sp,a5
  3139. movea.l a1,a6
  3140. bra.w L0089e8
  3141. L008d0c:
  3142. bsr.w L008b1a
  3143. bne.s L008d0c
  3144. rts
  3145. L008d14:
  3146. bsr.w L008da0
  3147. clr.b (a6)
  3148. bsr.w L008bd0
  3149. move.l d1,-(sp)
  3150. bsr.s L008d0c
  3151. lea.l ($0001,a2),a1
  3152. lea.l ($0008,sp),a5
  3153. movea.l a1,a6
  3154. move.w #$00ff,d0
  3155. L008d30:
  3156. move.b (a5)+,(a6)+
  3157. dbra.w d0,L008d30
  3158. lea.l ($0008,sp),a6
  3159. clr.w d4
  3160. move.l (sp)+,d1
  3161. bsr.w L008bea
  3162. beq.w L008c7a
  3163. move.w d0,d5
  3164. subq.w #1,d5
  3165. bra.w L008c6a
  3166. L008d4e:
  3167. clr.b (a6)
  3168. bsr.s L008d0c
  3169. lea.l ($0001,a2),a1
  3170. addq.l #4,sp
  3171. movea.l sp,a5
  3172. movea.l a1,a6
  3173. bra.w L0089e8
  3174. L008d60:
  3175. bsr.w L008ea4
  3176. moveq.l #$08,d1
  3177. bsr.w L008ea4
  3178. tst.b d4
  3179. beq.s L008d8a
  3180. L008d6e:
  3181. bsr.w L008b46
  3182. L008d72:
  3183. move.l d0,-(sp)
  3184. moveq.l #$08,d1
  3185. bsr.w L008ea4
  3186. move.l (sp)+,d0
  3187. subq.w #1,d0
  3188. bne.s L008d72
  3189. swap.w d0
  3190. suba.l d0,a1
  3191. suba.l d0,a6
  3192. sub.b d0,d4
  3193. bne.s L008d6e
  3194. L008d8a:
  3195. moveq.l #$0a,d1
  3196. bsr.w L008ea4
  3197. clr.w d4
  3198. rts
  3199. L008d94:
  3200. not.b ($1ca2)
  3201. clr.w d0
  3202. move.b ($1ca2),d0
  3203. bra.s L008da6
  3204. L008da0:
  3205. clr.w d0
  3206. move.b d0,($1ca2)
  3207. L008da6:
  3208. move.w d0,-(sp)
  3209. move.w #$0004,-(sp)
  3210. DOS _KEYCTRL
  3211. addq.l #4,sp
  3212. rts
  3213. L008db2:
  3214. move.w ($1ca8),d0
  3215. bne.s L008e0a
  3216. lea.l (L013f70),a1
  3217. clr.w d0
  3218. move.b ($0001,a1),d0
  3219. addq.w #2,d0
  3220. clr.b (a1,d0.w)
  3221. movem.l d3/a0-a3,-(sp)
  3222. move.w d3,-(sp)
  3223. bsr.w L0089ae
  3224. move.w (sp)+,d3
  3225. clr.w -(sp)
  3226. move.w d3,d0
  3227. bsr.w L00a9d8
  3228. move.l a0,-(sp)
  3229. move.w d3,-(sp)
  3230. movea.l sp,a3
  3231. moveq.l #$0a,d1
  3232. bsr.w L008ea4
  3233. addq.l #8,sp
  3234. movem.l (sp)+,d3/a0-a3
  3235. lea.l (L013f71),a1
  3236. clr.l d0
  3237. move.b (a1)+,d0
  3238. move.l a1,($1ca4)
  3239. adda.l d0,a1
  3240. move.b #$0d,(a1)+
  3241. move.b #$0a,(a1)
  3242. addq.w #2,d0
  3243. L008e0a:
  3244. subq.l #1,d0
  3245. move.w d0,($1ca8)
  3246. asl.w #8,d0
  3247. movea.l ($1ca4),a1
  3248. move.b (a1)+,d0
  3249. move.l a1,($1ca4)
  3250. cmp.b #$1a,d0
  3251. bne.s L008e2a
  3252. and.w #$00ff,d0
  3253. L008e26:
  3254. clr.w ($1ca8)
  3255. L008e2a:
  3256. rts
  3257. L008e2c:
  3258. moveq.l #$07,d0
  3259. L008e2e:
  3260. movem.l d1/a1/a4-a5,-(sp)
  3261. move.w ($0000.w,a3),d1
  3262. L008e36:
  3263. bsr.w L009058
  3264. movem.l (sp)+,d1/a1/a4-a5
  3265. rts
  3266. L008e40:
  3267. bsr.s L008e52
  3268. tst.l d1
  3269. beq.s L008e50
  3270. move.w ($0000.w,a3),d0
  3271. bsr.w L008f9a
  3272. move.l d0,d1
  3273. L008e50:
  3274. rts
  3275. L008e52:
  3276. bsr.w L008752
  3277. moveq.l #$05,d0
  3278. bsr.s L008e2e
  3279. move.l d0,d1
  3280. rts
  3281. L008e5e:
  3282. DOS _CHANGE_PR
  3283. L008e60:
  3284. tst.b ($1c17)
  3285. bne.w L008798
  3286. bsr.s L008e40
  3287. tst.l d1
  3288. beq.s L008e5e
  3289. move.l d1,d0
  3290. rts
  3291. L008e72:
  3292. bsr.s L008e60
  3293. or.w ($0006,a3),d0
  3294. cmp.w ($1cbc),d0
  3295. beq.s L008e8c
  3296. cmp.w ($1cc0),d0
  3297. beq.s L008e98
  3298. cmp.w ($1cbe),d0
  3299. beq.s L008e9e
  3300. rts
  3301. L008e8c:
  3302. cmpi.b #$02,($1c12)
  3303. bne.w L0086a4
  3304. rts
  3305. L008e98:
  3306. not.b ($1c13)
  3307. bra.s L008e72
  3308. L008e9e:
  3309. clr.b ($1c13)
  3310. bra.s L008e72
  3311. L008ea4:
  3312. move.l ($0002,a3),d0
  3313. bne.s L008ebc
  3314. moveq.l #$01,d0
  3315. bsr.w L008f7e
  3316. L008eb0:
  3317. tst.b ($1c13)
  3318. beq.s L008eba
  3319. bsr.w L008f78
  3320. L008eba:
  3321. rts
  3322. L008ebc:
  3323. movem.l d2/a0/a2,-(sp)
  3324. movea.l d0,a0
  3325. moveq.l #$01,d2
  3326. move.w d1,-(sp)
  3327. lea.l ($0001,sp),a2
  3328. bsr.w L00caa8
  3329. addq.l #2,sp
  3330. movem.l (sp)+,d2/a0/a2
  3331. bra.s L008eb0
  3332. L008ed6:
  3333. .dc.b $53,$54,$55,$56,$57,$45,$4a,$50
  3334. .dc.b $46,$00
  3335. Call_KEYSNS:
  3336. bsr.w L009014
  3337. clr.l d0
  3338. tst.l d1
  3339. beq.s L008efc
  3340. cmp.w ($1cc0),d1
  3341. beq.s L008efe
  3342. cmp.w ($1cbe),d1
  3343. beq.s L008f0a
  3344. bsr.w L0088a6
  3345. subq.l #1,d0
  3346. L008efc:
  3347. rts
  3348. L008efe:
  3349. bsr.w L008f62
  3350. not.b ($1c13)
  3351. clr.l d0
  3352. rts
  3353. L008f0a:
  3354. bsr.w L008f62
  3355. clr.b ($1c13)
  3356. clr.l d0
  3357. rts
  3358. Call_KFLUSH:
  3359. move.w (a6)+,d1
  3360. bsr.w L009020
  3361. cmp.w #$0001,d1
  3362. beq.w Call_GETCHAR
  3363. cmp.w #$0006,d1
  3364. beq.w Call_INPOUT
  3365. cmp.w #$0007,d1
  3366. beq.w Call_INKEY
  3367. cmp.w #$0008,d1
  3368. beq.w Call_GETC
  3369. cmp.w #$000a,d1
  3370. beq.w Call_GETS
  3371. clr.l d0
  3372. rts
  3373. L008f48:
  3374. bsr.s L008f7c
  3375. tst.b ($1c13)
  3376. beq.s L008f52
  3377. bsr.s L008f78
  3378. L008f52:
  3379. rts
  3380. L008f54:
  3381. bsr.s L008f7e
  3382. tst.b ($1c13)
  3383. beq.s L008f5e
  3384. bsr.s L008f78
  3385. L008f5e:
  3386. bra.w L00888e
  3387. L008f62:
  3388. bsr.w L009014
  3389. tst.l d1
  3390. beq.s L008f6e
  3391. bsr.s L008f98
  3392. move.l d0,d1
  3393. L008f6e:
  3394. rts
  3395. L008f70:
  3396. moveq.l #$03,d0
  3397. bra.s L008f9a
  3398. L008f74:
  3399. moveq.l #$03,d0
  3400. bra.s L008f7e
  3401. L008f78:
  3402. moveq.l #$04,d0
  3403. bra.s L008f7e
  3404. L008f7c:
  3405. moveq.l #$01,d0
  3406. L008f7e:
  3407. movem.l d1-d7/a0-a6,-(sp)
  3408. move.w d1,-(sp)
  3409. lea.l ($0001,sp),a2
  3410. moveq.l #$01,d2
  3411. move.w d0,d1
  3412. bsr.w L00c438
  3413. addq.l #2,sp
  3414. movem.l (sp)+,d1-d7/a0-a6
  3415. rts
  3416. L008f98:
  3417. clr.l d0
  3418. L008f9a:
  3419. movem.l d1-d7/a0-a6,-(sp)
  3420. clr.w -(sp)
  3421. lea.l ($0001,sp),a2
  3422. moveq.l #$01,d2
  3423. move.w d0,d1
  3424. bsr.w L00c302
  3425. move.w (sp)+,d1
  3426. tst.l d0
  3427. bmi.s L008fb6
  3428. clr.l d0
  3429. move.w d1,d0
  3430. L008fb6:
  3431. movem.l (sp)+,d1-d7/a0-a6
  3432. rts
  3433. L008fbc:
  3434. clr.l d2
  3435. moveq.l #$04,d0
  3436. bra.s L008fd2
  3437. L008fc2:
  3438. clr.l d2
  3439. moveq.l #$08,d0
  3440. bra.s L008fd2
  3441. L008fc8:
  3442. moveq.l #$01,d2
  3443. moveq.l #$04,d0
  3444. bra.s L008fd2
  3445. L008fce:
  3446. moveq.l #$01,d2
  3447. moveq.l #$08,d0
  3448. L008fd2:
  3449. move.l d1,-(sp)
  3450. movea.l sp,a2
  3451. lea.l (-$001a,sp),sp
  3452. movea.l sp,a5
  3453. move.b #$1a,($0000.w,a5)
  3454. move.b d0,($0002,a5)
  3455. move.l a2,($000e,a5)
  3456. move.l #$00000004,($0012,a5)
  3457. move.l d2,($0016,a5)
  3458. move.l ($1cb6),d0
  3459. bmi.s L00900c
  3460. movea.l d0,a1
  3461. bsr.w L00defa
  3462. clr.l d0
  3463. move.b ($0003,a5),d0
  3464. beq.s L00900c
  3465. moveq.l #$ff,d0
  3466. L00900c:
  3467. lea.l ($001a,sp),sp
  3468. move.l (sp)+,d1
  3469. rts
  3470. L009014:
  3471. bsr.w L008752
  3472. moveq.l #$05,d0
  3473. bsr.s L009022
  3474. move.l d0,d1
  3475. rts
  3476. L009020:
  3477. moveq.l #$07,d0
  3478. L009022:
  3479. movem.l d1/a1/a4-a5,-(sp)
  3480. clr.l d1
  3481. bsr.s L009058
  3482. movem.l (sp)+,d1/a1/a4-a5
  3483. rts
  3484. L009030:
  3485. moveq.l #$07,d0
  3486. movem.l d1/a1/a4-a5,-(sp)
  3487. moveq.l #$03,d1
  3488. bsr.s L009058
  3489. movem.l (sp)+,d1/a1/a4-a5
  3490. rts
  3491. Call_CONSNS:
  3492. moveq.l #$0a,d0
  3493. moveq.l #$01,d1
  3494. bra.s L009092
  3495. Call_PRNSNS:
  3496. moveq.l #$0a,d0
  3497. moveq.l #$04,d1
  3498. bra.s L009092
  3499. Call_CINSNS:
  3500. moveq.l #$05,d0
  3501. moveq.l #$03,d1
  3502. bra.s L009092
  3503. Call_COUTSNS:
  3504. moveq.l #$0a,d0
  3505. moveq.l #$03,d1
  3506. bra.s L009092
  3507. L009058:
  3508. lea.l (-$001a,sp),sp
  3509. movea.l sp,a5
  3510. move.w d0,-(sp)
  3511. move.w d1,d0
  3512. bsr.w L00a9d8
  3513. moveq.l #$20,d1 ;' '
  3514. move.w (sp)+,d0
  3515. btst.b #$07,($0001,a0)
  3516. beq.s L009088
  3517. move.b #$1a,($0000.w,a5)
  3518. move.b d0,($0002,a5)
  3519. movea.l ($0002,a0),a1
  3520. bsr.w L00cba6
  3521. move.b ($000d,a5),d1
  3522. L009088:
  3523. clr.l d0
  3524. move.b d1,d0
  3525. lea.l ($001a,sp),sp
  3526. rts
  3527. L009092:
  3528. lea.l (-$001a,sp),sp
  3529. movea.l sp,a5
  3530. move.w d0,-(sp)
  3531. L00909a:
  3532. move.w d1,d0
  3533. bsr.w L00a9d8
  3534. moveq.l #$ff,d1
  3535. move.w (sp)+,d0
  3536. btst.b #$07,($0001,a0)
  3537. beq.s L0090c8
  3538. move.b #$1a,($0000.w,a5)
  3539. move.b d0,($0002,a5)
  3540. movea.l ($0002,a0),a1
  3541. bsr.w L00defa
  3542. clr.l d1
  3543. move.b ($0003,a5),d0
  3544. bne.s L0090c8
  3545. moveq.l #$ff,d1
  3546. L0090c8:
  3547. clr.l d0
  3548. move.b d1,d0
  3549. lea.l ($001a,sp),sp
  3550. rts
  3551. Call_MALLOC2:
  3552. move.w (a6)+,d4
  3553. cmp.b #$03,d4
  3554. bcs.s L0090e0
  3555. moveq.l #$f2,d0
  3556. rts
  3557. Call_MALLOC:
  3558. clr.w d4
  3559. L0090e0:
  3560. move.l ($1c04),d3
  3561. move.l ($1c00),d5
  3562. L0090e8:
  3563. move.l (a6)+,d0
  3564. cmp.l #$01000000,d0
  3565. bcs.s L0090f4
  3566. moveq.l #$ff,d0
  3567. L0090f4:
  3568. and.l #$00ffffff,d0
  3569. add.l #$00000010,d0
  3570. movea.l (CurProgBlock),a0
  3571. tst.w d4
  3572. bpl.s L00910c
  3573. movea.l (a6),a0
  3574. L00910c:
  3575. clr.l d7
  3576. moveq.l #$ff,d6
  3577. suba.l a6,a6
  3578. suba.l a5,a5
  3579. L009114:
  3580. movea.l d3,a1
  3581. move.l ($0008,a1),d1
  3582. move.l ($000c,a1),d2
  3583. beq.s L00917c
  3584. add.l #$0000000f,d1
  3585. and.l #$fffffff0,d1
  3586. move.l d2,d3
  3587. sub.l d1,d2
  3588. cmp.l d0,d2
  3589. bcs.s L009174
  3590. tst.b d4
  3591. beq.s L00914c
  3592. cmp.b #$01,d4
  3593. beq.s L009142
  3594. movea.l a1,a5
  3595. bra.s L009114
  3596. L009142:
  3597. cmp.l d6,d2
  3598. bcc.s L009114
  3599. move.l d2,d6
  3600. movea.l a1,a6
  3601. bra.s L009114
  3602. L00914c:
  3603. movea.l d1,a2
  3604. movea.l d3,a3
  3605. add.l d0,d1
  3606. move.l a1,($0000.w,a2)
  3607. move.l a0,($0004,a2)
  3608. move.l d1,($0008,a2)
  3609. move.l a3,($000c,a2)
  3610. move.l a2,($000c,a1)
  3611. move.l a2,($0000.w,a3)
  3612. move.l a2,d0
  3613. add.l #$00000010,d0
  3614. rts
  3615. L009174:
  3616. cmp.l d2,d7
  3617. bcc.s L009114
  3618. move.l d2,d7
  3619. bra.s L009114
  3620. L00917c:
  3621. move.l d5,d2
  3622. add.l #$0000000f,d1
  3623. and.l #$fffffff0,d1
  3624. move.l d2,d3
  3625. sub.l d1,d2
  3626. cmp.l d0,d2
  3627. bcs.s L0091cc
  3628. tst.b d4
  3629. beq.s L0091aa
  3630. cmp.b #$01,d4
  3631. beq.s L0091a0
  3632. movea.l a1,a5
  3633. bra.s L0091cc
  3634. L0091a0:
  3635. cmp.l d6,d2
  3636. bcc.s L0091cc
  3637. move.l d2,d6
  3638. movea.l a1,a6
  3639. bra.s L0091cc
  3640. L0091aa:
  3641. movea.l d1,a2
  3642. add.l d0,d1
  3643. move.l a1,($0000.w,a2)
  3644. move.l a0,($0004,a2)
  3645. move.l d1,($0008,a2)
  3646. clr.l ($000c,a2)
  3647. move.l a2,($000c,a1)
  3648. move.l a2,d0
  3649. add.l #$00000010,d0
  3650. rts
  3651. L0091cc:
  3652. tst.b d4
  3653. beq.s L009242
  3654. cmp.b #$01,d4
  3655. beq.s L00921e
  3656. move.l a5,d1
  3657. beq.s L009242
  3658. movea.l a5,a1
  3659. move.l ($0008,a1),d1
  3660. move.l ($000c,a1),d2
  3661. bne.s L0091e8
  3662. move.l d5,d2
  3663. L0091e8:
  3664. sub.l d0,d2
  3665. and.l #$fffffff0,d2
  3666. add.l d2,d0
  3667. movea.l d2,a2
  3668. L0091f4:
  3669. movea.l ($000c,a1),a3
  3670. move.l a3,d1
  3671. beq.s L009200
  3672. move.l a2,($0000.w,a3)
  3673. L009200:
  3674. move.l a1,($0000.w,a2)
  3675. move.l a0,($0004,a2)
  3676. move.l d0,($0008,a2)
  3677. move.l a3,($000c,a2)
  3678. move.l a2,($000c,a1)
  3679. move.l a2,d0
  3680. add.l #$00000010,d0
  3681. rts
  3682. L00921e:
  3683. move.l a6,d1
  3684. beq.s L009242
  3685. movea.l a6,a1
  3686. move.l ($0008,a1),d1
  3687. move.l ($000c,a1),d2
  3688. bne.s L009230
  3689. move.l d5,d2
  3690. L009230:
  3691. add.l #$0000000f,d1
  3692. and.l #$fffffff0,d1
  3693. add.l d1,d0
  3694. movea.l d1,a2
  3695. bra.s L0091f4
  3696. L009242:
  3697. cmp.l d2,d7
  3698. bcc.s L009248
  3699. L009246:
  3700. move.l d2,d7
  3701. L009248:
  3702. move.l d7,d0
  3703. sub.l #$00000010,d0
  3704. bmi.s L00925a
  3705. add.l #$81000000,d0
  3706. rts
  3707. L00925a:
  3708. add.l #$00000010,d0
  3709. add.l #$82000000,d0
  3710. rts
  3711. L009268:
  3712. move.l #$82000000.l,d0
  3713. rts
  3714. Call_MFREE:
  3715. move.l ($1c04),d1
  3716. L009274:
  3717. move.l (a6),d0
  3718. beq.s L0092ac
  3719. sub.l #$00000010,d0
  3720. L00927e:
  3721. movea.l d1,a0
  3722. cmp.l d0,d1
  3723. beq.s L00928e
  3724. move.l ($000c,a0),d1
  3725. bne.s L00927e
  3726. L00928a:
  3727. moveq.l #$f7,d0
  3728. rts
  3729. L00928e:
  3730. movea.l ($0000.w,a0),a1
  3731. move.l a1,d0
  3732. beq.s L00928a
  3733. move.l ($000c,a0),d0
  3734. move.l d0,($000c,a1)
  3735. tst.l d0
  3736. beq.s L0092a8
  3737. movea.l d0,a2
  3738. move.l a1,($0000.w,a2)
  3739. L0092a8:
  3740. clr.l d0
  3741. rts
  3742. L0092ac:
  3743. move.l (CurProgBlock),d0
  3744. bsr.s L0092e6
  3745. clr.l d0
  3746. rts
  3747. L0092b8:
  3748. movem.l d0-d1/a0-a2,-(sp)
  3749. movea.l ($0000.w,a0),a1
  3750. L0092c0:
  3751. move.l a1,d0
  3752. beq.s L0092e0
  3753. move.l ($000c,a0),d0
  3754. move.l d0,($000c,a1)
  3755. beq.s L0092d4
  3756. movea.l d0,a2
  3757. move.l a1,($0000.w,a2)
  3758. L0092d4:
  3759. move.l ($0004,a0),(CurProgBlock)
  3760. move.l a0,d0
  3761. bsr.s L0092e6
  3762. L0092e0:
  3763. movem.l (sp)+,d0-d1/a0-a2
  3764. rts
  3765. L0092e6:
  3766. move.l ($1c04),d1
  3767. L0092ea:
  3768. movea.l d1,a0
  3769. move.l ($000c,a0),d1
  3770. beq.s L009310
  3771. cmp.l ($0004,a0),d0
  3772. bne.s L0092ea
  3773. tst.l ($0000.w,a0)
  3774. beq.s L00932a
  3775. movea.l ($0000.w,a0),a1
  3776. move.l d1,($000c,a1)
  3777. movea.l d1,a2
  3778. move.l a1,($0000.w,a2)
  3779. bsr.s L00931e
  3780. bra.s L0092e6
  3781. L009310:
  3782. cmp.l ($0004,a0),d0
  3783. bne.s L00932a
  3784. movea.l ($0000.w,a0),a1
  3785. move.l d1,($000c,a1)
  3786. L00931e:
  3787. movem.l d0-d1,-(sp)
  3788. move.l a0,d0
  3789. bsr.s L0092e6
  3790. movem.l (sp)+,d0-d1
  3791. L00932a:
  3792. rts
  3793. Call_SETBLOCK:
  3794. move.l (a6)+,d1
  3795. move.l (a6),d0
  3796. cmp.l #$01000000,d0
  3797. bcs.s L00933a
  3798. moveq.l #$ff,d0
  3799. L00933a:
  3800. and.l #$00ffffff,d0
  3801. add.l #$00000010,d0
  3802. sub.l #$00000010,d1
  3803. move.l ($1c04),d2
  3804. L009350:
  3805. movea.l d2,a0
  3806. cmp.l d1,d2
  3807. beq.s L009360
  3808. move.l ($000c,a0),d2
  3809. bne.s L009350
  3810. moveq.l #$f7,d0
  3811. rts
  3812. L009360:
  3813. move.l ($000c,a0),d2
  3814. bne.s L00936a
  3815. move.l ($1c00),d2
  3816. L00936a:
  3817. sub.l a0,d2
  3818. cmp.l d0,d2
  3819. bcs.w L009246
  3820. add.l a0,d0
  3821. move.l d0,($0008,a0)
  3822. clr.l d0
  3823. rts
  3824. Call_PSPSET:
  3825. movea.l (a6),a0
  3826. L00937e:
  3827. suba.l #$00000010,a0
  3828. L009384:
  3829. clr.l d3
  3830. clr.l d6
  3831. suba.l a3,a3
  3832. suba.l a2,a2
  3833. L00938c:
  3834. add.l a0,d3
  3835. add.l #$00000100,d3
  3836. movea.l (CurProgBlock),a5
  3837. move.l a0,($0068,a5)
  3838. move.l d3,($0030,a0)
  3839. move.l d3,($0034,a0)
  3840. add.l d6,d3
  3841. move.l d3,($0038,a0)
  3842. cmpa.l #$00000000,a3
  3843. bne.s L0093be
  3844. movea.l (CurProgBlock),a5
  3845. movea.l ($0010,a5),a3
  3846. L0093be:
  3847. move.l a3,($0010,a0)
  3848. move.l a2,($0020,a0)
  3849. lea.l ($0024,a0),a6
  3850. clr.l (a6)+
  3851. clr.l (a6)+
  3852. clr.l (a6)
  3853. movea.l ($1c5c),a5
  3854. move.l ($003a,a5),($1bc0)
  3855. lea.l ($003e,a5),a6
  3856. tst.b ($0cbc)
  3857. beq.s L0093e6
  3858. addq.l #2,a6
  3859. L0093e6:
  3860. move.l a6,($0040,a0)
  3861. move.l usp,a6
  3862. move.l a6,($003c,a0)
  3863. move.w ($0038,a5),($0044,a0)
  3864. clr.l ($0060,a0)
  3865. clr.l ($0068,a0)
  3866. bsr.w L00a0ec
  3867. move.l a0,(CurProgBlock)
  3868. clr.l d0
  3869. rts
  3870. Call_EXEC:
  3871. cmpi.b #$01,($0cbc)
  3872. bls.s L00941a
  3873. moveq.l #$ac,d0
  3874. moveq.l #$03,d1
  3875. trap #15
  3876. L00941a:
  3877. move.b (a6)+,d0
  3878. move.b d0,($1ca1)
  3879. clr.w d1
  3880. move.b (a6)+,d1
  3881. movea.l (a6)+,a1
  3882. cmp.w #$0004,d1
  3883. beq.w L00976e
  3884. movea.l (a6)+,a2
  3885. cmp.w #$0005,d1
  3886. beq.s L00945a
  3887. movea.l (a6),a3
  3888. tst.w d1
  3889. beq.w L00960c
  3890. cmp.w #$0001,d1
  3891. beq.w L00960c
  3892. cmp.w #$0002,d1
  3893. beq.w L009bc4
  3894. cmp.w #$0003,d1
  3895. beq.w L009510
  3896. moveq.l #$f2,d0
  3897. rts
  3898. L00945a:
  3899. bsr.w L009a80
  3900. bmi.w L00950e
  3901. lea.l (-$0040,sp),sp
  3902. movea.l sp,a5
  3903. move.l #$00000040,-(sp)
  3904. move.l a5,-(sp)
  3905. move.w d2,-(sp)
  3906. DOS _READ
  3907. addq.l #6,sp
  3908. cmp.l (sp)+,d0
  3909. bne.w L009500
  3910. cmpi.w #$4855,(a5) ;'HU'
  3911. bne.s L009500
  3912. moveq.l #$fe,d6
  3913. move.l ($003c,a5),d0
  3914. beq.s L0094fc
  3915. clr.w -(sp)
  3916. move.l d0,-(sp)
  3917. move.w d2,-(sp)
  3918. DOS _SEEK
  3919. addq.l #8,sp
  3920. tst.l d0
  3921. bmi.s L009502
  3922. lea.l (-$0058,sp),sp
  3923. movea.l a2,a1
  3924. movea.l sp,a2
  3925. movem.l d1-d2/a0-a4,-(sp)
  3926. bsr.w L00ae1e
  3927. movem.l (sp)+,d1-d2/a0-a4
  3928. move.b #$58,($004b,a2) ;'X'
  3929. lea.l ($0043,a2),a4
  3930. moveq.l #$ff,d5
  3931. L0094b8:
  3932. addq.b #1,d5
  3933. move.l #$00000020,-(sp)
  3934. move.l a5,-(sp)
  3935. move.w d2,-(sp)
  3936. DOS _READ
  3937. addq.l #6,sp
  3938. cmp.l (sp)+,d0
  3939. bne.s L0094f8
  3940. movea.l a5,a1
  3941. movea.l a4,a2
  3942. move.b (a1),d0
  3943. cmp.b #$05,d0
  3944. bne.s L0094dc
  3945. move.b #$e5,d0
  3946. L0094dc:
  3947. bsr.w L00f1ca
  3948. bne.s L0094b8
  3949. move.l ($001c,a5),d6
  3950. not.l d6
  3951. cmp.l #$00000100,d6
  3952. bcs.s L0094f4
  3953. clr.l d6
  3954. move.b d5,d6
  3955. L0094f4:
  3956. lsl.l #8,d6
  3957. bra.s L0094b8
  3958. L0094f8:
  3959. lea.l ($0058,sp),sp
  3960. L0094fc:
  3961. move.l d6,d0
  3962. bra.s L009502
  3963. L009500:
  3964. moveq.l #$f5,d0
  3965. L009502:
  3966. lea.l ($0040,sp),sp
  3967. move.l d0,-(sp)
  3968. bsr.w L009ab4
  3969. move.l (sp)+,d0
  3970. L00950e:
  3971. rts
  3972. L009510:
  3973. bsr.w L00997c
  3974. cmp.b #$78,d0 ;'x'
  3975. beq.s L00958c
  3976. cmp.b #$72,d0 ;'r'
  3977. beq.s L009560
  3978. cmp.b #$7a,d0 ;'z'
  3979. beq.s L009536
  3980. move.l a1,d0
  3981. rol.l #8,d0
  3982. tst.b d0
  3983. beq.s L00955c
  3984. subq.b #1,d0
  3985. beq.s L009560
  3986. subq.b #1,d0
  3987. bne.s L00958c
  3988. L009536:
  3989. bsr.w L009a0e
  3990. tst.l d0
  3991. bmi.s L00955a
  3992. cmpa.l a2,a4
  3993. bne.s L009554
  3994. move.l a2,d0
  3995. add.l d3,d0
  3996. add.l d6,d0
  3997. cmpa.l d0,a3
  3998. bcs.s L009554
  3999. bsr.w L009a62
  4000. bra.w L0095fe
  4001. L009554:
  4002. bsr.w L009a5a
  4003. moveq.l #$f8,d0
  4004. L00955a:
  4005. rts
  4006. L00955c:
  4007. moveq.l #$f3,d0
  4008. rts
  4009. L009560:
  4010. bsr.w L009a80
  4011. bmi.s L00955a
  4012. bsr.w L009a94
  4013. bmi.w L009a5a
  4014. move.l d0,d3
  4015. add.l a2,d0
  4016. cmpa.l d0,a3
  4017. bcs.s L009554
  4018. move.l d3,-(sp)
  4019. move.l a2,-(sp)
  4020. move.w d2,-(sp)
  4021. DOS _READ
  4022. lea.l ($000a,sp),sp
  4023. tst.l d0
  4024. beq.w L009a58
  4025. bra.w L009a5a
  4026. L00958c:
  4027. bsr.w L009a80
  4028. bmi.s L00955a
  4029. lea.l (-$0040,sp),sp
  4030. movea.l sp,a5
  4031. move.l #$00000040,-(sp)
  4032. move.l a5,-(sp)
  4033. move.w d2,-(sp)
  4034. DOS _READ
  4035. addq.l #6,sp
  4036. cmp.l (sp)+,d0
  4037. bne.w L00995c
  4038. cmpi.w #$4855,(a5) ;'HU'
  4039. bne.w L00995a
  4040. bsr.w L009ac6
  4041. bcs.w L00995a
  4042. move.l ($000c,a5),d3
  4043. beq.w L00995c
  4044. add.l ($0010,a5),d3
  4045. move.l ($0014,a5),d6
  4046. move.l d3,d0
  4047. add.l a2,d0
  4048. add.l d6,d0
  4049. cmpa.l d0,a3
  4050. bcs.w L009956
  4051. move.l d3,-(sp)
  4052. move.l a2,-(sp)
  4053. move.w d2,-(sp)
  4054. DOS _READ
  4055. addq.l #6,sp
  4056. cmp.l (sp)+,d0
  4057. bne.w L00995c
  4058. movea.l a2,a4
  4059. bsr.w L0098c0
  4060. bmi.w L00995c
  4061. bsr.w L009ab4
  4062. move.l d3,d0
  4063. add.l d6,d0
  4064. lea.l ($0040,sp),sp
  4065. L0095fe:
  4066. move.l d0,-(sp)
  4067. lea.l (-$0100,a2),a0
  4068. bsr.w L0098a0
  4069. move.l (sp)+,d0
  4070. rts
  4071. L00960c:
  4072. move.b #-$01,($1ca0)
  4073. bsr.s L00961a
  4074. clr.b ($1ca0)
  4075. rts
  4076. L00961a:
  4077. move.l a1,($1cb2)
  4078. bsr.w L00997c
  4079. cmp.b #$78,d0 ;'x'
  4080. beq.w L009812
  4081. cmp.b #$72,d0 ;'r'
  4082. beq.w L0097ca
  4083. cmp.b #$7a,d0 ;'z'
  4084. beq.s L00964e
  4085. move.l a1,d0
  4086. rol.l #8,d0
  4087. tst.b d0
  4088. beq.w L00955c
  4089. subq.b #1,d0
  4090. beq.w L0097ca
  4091. subq.b #1,d0
  4092. bne.w L009812
  4093. L00964e:
  4094. bsr.w L009a0e
  4095. tst.l d0
  4096. bmi.w L00955a
  4097. movea.l a4,a0
  4098. suba.l #$00000100,a0
  4099. bsr.w L009b40
  4100. tst.l d0
  4101. bne.w L009a5a
  4102. move.b #-$02,($1ca0)
  4103. move.l a0,($1caa)
  4104. bsr.w L009a62
  4105. tst.l d0
  4106. bmi.w L0097b6
  4107. L00967e:
  4108. bsr.w L0098a0
  4109. move.b #-$03,($1ca0)
  4110. bsr.w L00938c
  4111. clr.b ($1ca0)
  4112. movem.l d1/a0-a5,-(sp)
  4113. move.b ($1ca1),($0064,a0)
  4114. movea.l ($1cb2),a1
  4115. lea.l (-$005a,sp),sp
  4116. movea.l sp,a2
  4117. bsr.w L00ad68
  4118. lea.l ($0080,a0),a1
  4119. move.b ($0001,a2),d0
  4120. bsr.w L00a728
  4121. add.b #$41,d0 ;'A'
  4122. move.b d0,(a1)+
  4123. move.b #$3a,(a1)+ ;':'
  4124. lea.l ($0002,a2),a3
  4125. L0096c2:
  4126. move.b (a3)+,(a1)+
  4127. bne.s L0096c2
  4128. lea.l ($00c4,a0),a1
  4129. moveq.l #$07,d1
  4130. lea.l ($0043,a2),a3
  4131. L0096d0:
  4132. move.b (a3)+,d0
  4133. cmp.b #$20,d0 ;' '
  4134. beq.s L0096f4
  4135. move.b d0,(a1)+
  4136. dbra.w d1,L0096d0
  4137. moveq.l #$09,d1
  4138. lea.l ($004e,a2),a3
  4139. L0096e4:
  4140. move.b (a3)+,d0
  4141. beq.s L0096f4
  4142. cmp.b #$20,d0 ;' '
  4143. beq.s L0096f4
  4144. move.b d0,(a1)+
  4145. dbra.w d1,L0096e4
  4146. L0096f4:
  4147. move.b #$2e,(a1)+ ;'.'
  4148. moveq.l #$02,d1
  4149. lea.l ($004b,a2),a3
  4150. L0096fe:
  4151. move.b (a3)+,d0
  4152. cmp.b #$20,d0 ;' '
  4153. beq.s L00970c
  4154. move.b d0,(a1)+
  4155. dbra.w d1,L0096fe
  4156. L00970c:
  4157. clr.b (a1)
  4158. lea.l ($0080,a0),a1
  4159. bsr.w L00a7d6
  4160. lea.l ($005a,sp),sp
  4161. movem.l (sp)+,d1/a0-a5
  4162. L00971e:
  4163. move.l a0,($001c,a5)
  4164. move.l a1,($0020,a5)
  4165. move.l a2,($0024,a5)
  4166. move.l a3,($0028,a5)
  4167. move.l a4,($002c,a5)
  4168. move.l a4,d0
  4169. tst.w d1
  4170. bne.w L00955a
  4171. bsr.w L010134
  4172. ori.w #$0700,sr
  4173. move.l a4,($003a,a5)
  4174. move.l a4,d0
  4175. and.l #$00ffffff,d0
  4176. cmp.l (L00837a),d0
  4177. bcc.s L00975e
  4178. L009756:
  4179. ori.w #$2000,($0038,a5)
  4180. rts
  4181. L00975e:
  4182. cmp.l #$00c00000,d0
  4183. bcc.s L009756
  4184. andi.w #$dfff,($0038,a5)
  4185. rts
  4186. L00976e:
  4187. movea.l a1,a4
  4188. L009770:
  4189. movea.l (CurProgBlock),a0
  4190. movea.l ($0038,a0),a1
  4191. movea.l ($0020,a0),a2
  4192. movea.l ($0010,a0),a3
  4193. movea.l ($1c5c),a5
  4194. move.l ($003a,a5),($1bc0)
  4195. lea.l ($003e,a5),a6
  4196. tst.b ($0cbc)
  4197. beq.s L009798
  4198. addq.l #2,a6
  4199. L009798:
  4200. move.l a6,($0040,a0)
  4201. move.l usp,a6
  4202. move.l a6,($003c,a0)
  4203. move.w ($0038,a5),($0044,a0)
  4204. bsr.w L00a0ec
  4205. clr.l d1
  4206. bra.w L00971e
  4207. L0097b2:
  4208. bsr.w L009a5a
  4209. L0097b6:
  4210. move.l d0,-(sp)
  4211. lea.l ($0010,a0),a0
  4212. move.l a0,-(sp)
  4213. DOS _MFREE
  4214. addq.l #4,sp
  4215. move.l (sp)+,d0
  4216. clr.b ($1ca0)
  4217. rts
  4218. L0097ca:
  4219. bsr.w L009a80
  4220. bmi.w L00955a
  4221. bsr.w L009a94
  4222. bmi.w L009a5a
  4223. move.l d0,d3
  4224. add.l #$000000f0,d0
  4225. bsr.w L0099d8
  4226. bmi.w L009a5a
  4227. move.b #-$02,($1ca0)
  4228. move.l a0,($1caa)
  4229. move.l d3,-(sp)
  4230. move.l a4,-(sp)
  4231. move.w d2,-(sp)
  4232. DOS _READ
  4233. lea.l ($000a,sp),sp
  4234. tst.l d0
  4235. beq.w L009a58
  4236. bmi.s L0097b2
  4237. bsr.w L009ab4
  4238. clr.l d6
  4239. bra.w L00967e
  4240. L009812:
  4241. bsr.w L009a80
  4242. bmi.w L00955a
  4243. lea.l (-$0040,sp),sp
  4244. movea.l sp,a5
  4245. move.l #$00000040,-(sp)
  4246. move.l a5,-(sp)
  4247. move.w d2,-(sp)
  4248. DOS _READ
  4249. addq.l #6,sp
  4250. cmp.l (sp)+,d0
  4251. bne.w L00995c
  4252. cmpi.w #$4855,(a5) ;'HU'
  4253. bne.w L00995a
  4254. bsr.w L009ac6
  4255. bcs.w L00995a
  4256. move.l ($000c,a5),d3
  4257. beq.w L00995c
  4258. add.l ($0010,a5),d3
  4259. move.l ($0014,a5),d6
  4260. move.l d3,d0
  4261. add.l d6,d0
  4262. add.l #$000000f0,d0
  4263. bsr.w L0099b2
  4264. bmi.w L00995c
  4265. move.b #-$02,($1ca0)
  4266. move.l a0,($1caa)
  4267. move.l d3,-(sp)
  4268. move.l a4,-(sp)
  4269. move.w d2,-(sp)
  4270. DOS _READ
  4271. addq.l #6,sp
  4272. cmp.l (sp)+,d0
  4273. bne.w L00996c
  4274. bsr.s L0098c0
  4275. bmi.w L00996c
  4276. movea.l ($0008,a5),a4
  4277. suba.l ($0004,a5),a4
  4278. adda.l a0,a4
  4279. lea.l ($0100,a4),a4
  4280. lea.l ($0040,sp),sp
  4281. bsr.w L009ab4
  4282. bra.w L00967e
  4283. L0098a0:
  4284. lea.l ($0100,a0),a1
  4285. adda.l d3,a1
  4286. tst.l d6
  4287. beq.s L0098be
  4288. move.l d6,d0
  4289. subq.l #1,d0
  4290. swap.w d0
  4291. L0098b0:
  4292. swap.w d0
  4293. L0098b2:
  4294. clr.b (a1)+
  4295. dbra.w d0,L0098b2
  4296. swap.w d0
  4297. dbra.w d0,L0098b0
  4298. L0098be:
  4299. rts
  4300. L0098c0:
  4301. movem.l d1/a0,-(sp)
  4302. lea.l (-$0104,sp),sp
  4303. movea.l sp,a0
  4304. clr.w (a0)
  4305. move.l a4,d7
  4306. sub.l ($0004,a5),d7
  4307. beq.s L0098fa
  4308. move.l ($0018,a5),d5
  4309. L0098d8:
  4310. tst.l d5
  4311. beq.s L0098fa
  4312. bsr.s L009918
  4313. bmi.s L0098fc
  4314. cmp.w #$0001,d0
  4315. bne.s L0098ea
  4316. bsr.s L009908
  4317. bmi.s L0098fc
  4318. L0098ea:
  4319. bclr.l #$00,d0
  4320. adda.l d0,a4
  4321. bne.s L0098f6
  4322. add.l d7,(a4)
  4323. bra.s L0098d8
  4324. L0098f6:
  4325. add.w d7,(a4)
  4326. bra.s L0098d8
  4327. L0098fa:
  4328. clr.l d0
  4329. L0098fc:
  4330. lea.l ($0104,sp),sp
  4331. movem.l (sp)+,d1/a0
  4332. tst.l d0
  4333. rts
  4334. L009908:
  4335. bsr.s L009918
  4336. bmi.s L009916
  4337. move.l d0,d1
  4338. bsr.s L009918
  4339. bmi.s L009916
  4340. swap.w d1
  4341. or.l d1,d0
  4342. L009916:
  4343. rts
  4344. L009918:
  4345. clr.l d0
  4346. tst.l d5
  4347. beq.s L00994c
  4348. move.w (a0)+,d0
  4349. bne.s L009942
  4350. move.l #$00000100,-(sp)
  4351. move.l a0,-(sp)
  4352. move.w d2,-(sp)
  4353. DOS _READ
  4354. lea.l ($000a,sp),sp
  4355. tst.l d0
  4356. beq.s L009950
  4357. bmi.s L009952
  4358. clr.w (a0,d0.w)
  4359. clr.w (-$0002,a0)
  4360. clr.w d0
  4361. L009942:
  4362. move.w (a0,d0.w),d0
  4363. addq.b #2,-(a0)
  4364. subq.l #1,a0
  4365. subq.l #2,d5
  4366. L00994c:
  4367. tst.l d0
  4368. rts
  4369. L009950:
  4370. moveq.l #$f5,d0
  4371. L009952:
  4372. subq.l #2,a0
  4373. rts
  4374. L009956:
  4375. moveq.l #$f8,d0
  4376. bra.s L00995c
  4377. L00995a:
  4378. moveq.l #$f5,d0
  4379. L00995c:
  4380. lea.l ($0040,sp),sp
  4381. tst.l d0
  4382. bmi.w L009a5a
  4383. moveq.l #$f5,d0
  4384. bra.w L009a5a
  4385. L00996c:
  4386. lea.l ($0040,sp),sp
  4387. tst.l d0
  4388. bmi.w L0097b2
  4389. moveq.l #$f5,d0
  4390. bra.w L0097b2
  4391. L00997c:
  4392. movem.l d1/a1,-(sp)
  4393. clr.w d1
  4394. L009982:
  4395. addq.w #1,d1
  4396. move.b (a1)+,d0
  4397. bne.s L009982
  4398. subq.l #1,a1
  4399. L00998a:
  4400. subq.w #1,d1
  4401. beq.s L0099aa
  4402. move.b -(a1),d0
  4403. cmp.b #$20,d0 ;' '
  4404. beq.s L00998a
  4405. subq.l #1,d1
  4406. beq.s L0099aa
  4407. cmpi.b #$2e,-(a1) ;'.'
  4408. bne.s L0099aa
  4409. or.b #$20,d0
  4410. movem.l (sp)+,d1/a1
  4411. rts
  4412. L0099aa:
  4413. movem.l (sp)+,d1/a1
  4414. clr.l d0
  4415. rts
  4416. L0099b2:
  4417. movem.l d1-d2,-(sp)
  4418. move.b ($0003,a5),d1
  4419. moveq.l #$02,d2
  4420. btst.l #$01,d1
  4421. bne.s L0099ca
  4422. subq.w #1,d2
  4423. btst.l #$01,d1
  4424. beq.s L0099dc
  4425. L0099ca:
  4426. move.l d0,-(sp)
  4427. move.w d2,-(sp)
  4428. DOS _MALLOC2
  4429. addq.l #6,sp
  4430. tst.l d0
  4431. bmi.s L009a06
  4432. bra.s L0099fa
  4433. L0099d8:
  4434. movem.l d1-d2,-(sp)
  4435. L0099dc:
  4436. move.l #$00ffffff,d2
  4437. move.l d0,d1
  4438. move.l d2,-(sp)
  4439. DOS _MALLOC
  4440. addq.l #4,sp
  4441. tst.l d0
  4442. bpl.s L0099fa
  4443. and.l d0,d2
  4444. cmp.l d1,d2
  4445. bcs.s L009a06
  4446. move.l d2,-(sp)
  4447. DOS _MALLOC
  4448. addq.l #4,sp
  4449. L0099fa:
  4450. movea.l d0,a0
  4451. lea.l (-$0010,a0),a0
  4452. movea.l a0,a4
  4453. lea.l ($0100,a4),a4
  4454. L009a06:
  4455. movem.l (sp)+,d1-d2
  4456. tst.l d0
  4457. rts
  4458. L009a0e:
  4459. bsr.s L009a80
  4460. bmi.s L009a60
  4461. link.w a5,#-$001e
  4462. movea.l sp,a6
  4463. move.l #$0000001c,-(sp)
  4464. move.l a6,-(sp)
  4465. move.w d2,-(sp)
  4466. DOS _READ
  4467. adda.l #$0000000a,sp
  4468. move.w (a6),d4
  4469. move.l ($0002,a6),d3
  4470. add.l ($0006,a6),d3
  4471. move.l ($000a,a6),d6
  4472. movea.l ($0016,a6),a4
  4473. move.w ($001a,a6),d5
  4474. unlk a5
  4475. tst.l d0
  4476. bmi.s L009a5a
  4477. cmpi.w #$001c,d0
  4478. bne.s L009a58
  4479. cmpi.w #$601a,d4
  4480. bne.s L009a58
  4481. clr.l d0
  4482. tst.w d5
  4483. bne.s L009a60
  4484. L009a58:
  4485. moveq.l #$f5,d0
  4486. L009a5a:
  4487. move.l d0,-(sp)
  4488. bsr.s L009ab4
  4489. move.l (sp)+,d0
  4490. L009a60:
  4491. rts
  4492. L009a62:
  4493. move.l d3,-(sp)
  4494. move.l a4,-(sp)
  4495. move.w d2,-(sp)
  4496. DOS _READ
  4497. adda.l #$0000000a,sp
  4498. tst.l d0
  4499. bmi.s L009a5a
  4500. cmp.l d0,d3
  4501. bne.s L009a58
  4502. bsr.s L009ab4
  4503. move.l d3,d0
  4504. add.l d6,d0
  4505. rts
  4506. L009a80:
  4507. move.w #$0000,-(sp)
  4508. move.l a1,-(sp)
  4509. DOS _OPEN
  4510. addq.l #6,sp
  4511. move.l d0,d2
  4512. move.l d0,(L014076)
  4513. rts
  4514. L009a94:
  4515. move.w #$0002,-(sp)
  4516. clr.l -(sp)
  4517. move.w d2,-(sp)
  4518. DOS _SEEK
  4519. lea.l ($0008,sp),sp
  4520. move.l d0,-(sp)
  4521. clr.w -(sp)
  4522. clr.l -(sp)
  4523. move.w d2,-(sp)
  4524. DOS _SEEK
  4525. lea.l ($0008,sp),sp
  4526. move.l (sp)+,d0
  4527. rts
  4528. L009ab4:
  4529. move.w d2,-(sp)
  4530. DOS _CLOSE
  4531. addq.l #2,sp
  4532. move.l #$ffffffff,(L014076)
  4533. rts
  4534. L009ac6:
  4535. movem.l d1,-(sp)
  4536. clr.l d1
  4537. move.b ($1ca1),d1
  4538. beq.s L009b3a
  4539. move.l ($003c,a5),d0
  4540. beq.s L009b36
  4541. asl.l #5,d1
  4542. add.l d1,d0
  4543. add.l #$0000001c,d0
  4544. clr.w -(sp)
  4545. move.l d0,-(sp)
  4546. move.w d2,-(sp)
  4547. DOS _SEEK
  4548. addq.l #8,sp
  4549. tst.l d0
  4550. bmi.s L009b36
  4551. clr.l -(sp)
  4552. move.l sp,d0
  4553. move.l #$00000004,-(sp)
  4554. move.l d0,-(sp)
  4555. move.w d2,-(sp)
  4556. DOS _READ
  4557. lea.l ($000a,sp),sp
  4558. move.l (sp)+,d1
  4559. bmi.s L009b36
  4560. cmp.l #$00000004,d0
  4561. bne.s L009b36
  4562. clr.w -(sp)
  4563. move.l d1,-(sp)
  4564. move.w d2,-(sp)
  4565. DOS _SEEK
  4566. addq.l #8,sp
  4567. tst.l d0
  4568. bmi.s L009b36
  4569. move.l #$00000040,-(sp)
  4570. move.l a5,-(sp)
  4571. move.w d2,-(sp)
  4572. DOS _READ
  4573. addq.l #6,sp
  4574. cmp.l (sp)+,d0
  4575. bne.s L009b36
  4576. cmpi.w #$4855,(a5) ;'HU'
  4577. beq.s L009b3a
  4578. L009b36:
  4579. ori.b #$01,ccr
  4580. L009b3a:
  4581. movem.l (sp)+,d1
  4582. rts
  4583. L009b40:
  4584. movem.l d1-d7/a0-a5,-(sp)
  4585. move.l a4,d0
  4586. move.l d3,d1
  4587. add.l d6,d1
  4588. bsr.s L009b7a
  4589. tst.l d0
  4590. bne.s L009b74
  4591. move.l a1,($0000.w,a0)
  4592. movea.l (CurProgBlock),a5
  4593. move.l a5,($0004,a0)
  4594. move.l d5,($0008,a0)
  4595. move.l d3,($000c,a0)
  4596. move.l a0,($000c,a1)
  4597. tst.l d3
  4598. beq.s L009b74
  4599. movea.l d3,a5
  4600. move.l a0,($0000.w,a5)
  4601. L009b74:
  4602. movem.l (sp)+,d1-d7/a0-a5
  4603. rts
  4604. L009b7a:
  4605. add.l #$00000100,d1
  4606. sub.l #$00000100,d0
  4607. add.l d0,d1
  4608. move.l ($1c04),d3
  4609. L009b8c:
  4610. movea.l d3,a1
  4611. move.l ($0008,a1),d4
  4612. move.l ($000c,a1),d5
  4613. beq.s L009bae
  4614. move.l d5,d3
  4615. cmp.l a1,d1
  4616. bcs.s L009b8c
  4617. cmp.l d4,d0
  4618. bcs.s L009bc0
  4619. cmp.l d0,d5
  4620. bcs.s L009b8c
  4621. cmp.l d1,d5
  4622. bcs.s L009bc0
  4623. clr.l d0
  4624. rts
  4625. L009bae:
  4626. move.l ($1c00),d5
  4627. cmp.l d4,d0
  4628. bcs.s L009bc0
  4629. cmp.l d1,d5
  4630. bcs.s L009bc0
  4631. clr.l d0
  4632. clr.l d3
  4633. rts
  4634. L009bc0:
  4635. moveq.l #$f8,d0
  4636. rts
  4637. L009bc4:
  4638. link.w a6,#-$01ae
  4639. cmpa.l #$00000000,a3
  4640. bne.s L009bda
  4641. movea.l (CurProgBlock),a3
  4642. movea.l ($0010,a3),a3
  4643. L009bda:
  4644. cmpa.l #$ffffffff,a3
  4645. bne.s L009be8
  4646. lea.l (L0111f2),a3
  4647. L009be8:
  4648. move.l a3,(-$0004,a6)
  4649. movea.l a2,a5
  4650. move.l a1,-(sp)
  4651. lea.l (-$0176,a6),a0
  4652. bsr.w L009ed4
  4653. bsr.s L009c16
  4654. beq.s L009c0e
  4655. bsr.w L009d42
  4656. beq.s L009c0e
  4657. movea.l a0,a1
  4658. movea.l (sp),a0
  4659. bsr.w L009ed4
  4660. clr.l d0
  4661. bra.s L009c10
  4662. L009c0e:
  4663. moveq.l #$fe,d0
  4664. L009c10:
  4665. movea.l (sp)+,a1
  4666. unlk a6
  4667. rts
  4668. L009c16:
  4669. lea.l (-$0176,a6),a0
  4670. L009c1a:
  4671. bsr.w L009f18
  4672. adda.l d0,a0
  4673. movea.l a5,a1
  4674. clr.w d1
  4675. L009c24:
  4676. move.b (a0),d0
  4677. beq.s L009c4e
  4678. cmp.b #$3f,d0 ;'?'
  4679. beq.w L009d3e
  4680. cmp.b #$2a,d0 ;'*'
  4681. beq.w L009d3e
  4682. bsr.w L00f250
  4683. beq.s L009c4e
  4684. bsr.w L009f18
  4685. tst.l d0
  4686. bne.s L009c4c
  4687. move.b (a0)+,(a1)+
  4688. addq.w #1,d1
  4689. bra.s L009c24
  4690. L009c4c:
  4691. adda.l d0,a0
  4692. L009c4e:
  4693. tst.w d1
  4694. beq.w L009d3e
  4695. clr.b (a1)
  4696. movea.l a5,a2
  4697. move.l a2,-(sp)
  4698. clr.b d2
  4699. clr.b d3
  4700. L009c5e:
  4701. cmp.b d1,d2
  4702. beq.s L009c96
  4703. move.b (a2)+,d0
  4704. tst.b d3
  4705. beq.s L009c6c
  4706. clr.b d3
  4707. bra.s L009c92
  4708. L009c6c:
  4709. cmp.b #$80,d0
  4710. bcs.s L009c84
  4711. cmp.b #$a0,d0
  4712. bcs.s L009c7e
  4713. cmp.b #$e0,d0
  4714. bcs.s L009c84
  4715. L009c7e:
  4716. move.b #$01,d3
  4717. bra.s L009c92
  4718. L009c84:
  4719. cmpi.b #$3a,d0 ;':'
  4720. beq.s L009c90
  4721. cmpi.b #$5c,d0 ;'\'
  4722. bne.s L009c92
  4723. L009c90:
  4724. move.l a2,(sp)
  4725. L009c92:
  4726. addq.b #1,d2
  4727. bra.s L009c5e
  4728. L009c96:
  4729. movea.l (sp)+,a2
  4730. cmpa.l a1,a2
  4731. beq.w L009d3e
  4732. move.l a1,d0
  4733. sub.l a2,d0
  4734. cmpi.w #$0016,d0
  4735. bhi.w L009d3e
  4736. lea.l (-$0076,a6),a3
  4737. movea.l a2,a4
  4738. subq.w #1,d0
  4739. L009cb2:
  4740. move.b (a4)+,(a3)+
  4741. dbra.w d0,L009cb2
  4742. clr.b (a3)
  4743. lea.l (-$005e,a6),a3
  4744. movea.l a5,a4
  4745. move.l a2,d0
  4746. sub.l a4,d0
  4747. clr.b (-$0005,a6)
  4748. cmp.l #$00000040,d0
  4749. bhi.s L009d3e
  4750. tst.l d0
  4751. beq.s L009d04
  4752. move.b #$01,(-$0005,a6)
  4753. cmp.l #$00000002,d0
  4754. bcs.s L009d04
  4755. cmpi.b #$3a,($0001,a4) ;':'
  4756. bne.s L009d04
  4757. move.l d0,d1
  4758. move.b (a4),d0
  4759. or.b #$20,d0
  4760. sub.b #$61,d0 ;'a'
  4761. bsr.w L009fce
  4762. tst.l d0
  4763. bmi.s L009d3e
  4764. move.l d1,d0
  4765. bra.s L009d04
  4766. L009d02:
  4767. move.b (a4)+,(a3)+
  4768. L009d04:
  4769. dbra.w d0,L009d02
  4770. clr.b (a3)
  4771. lea.l (-$0076,a6),a1
  4772. move.b #-$01,(-$0006,a6)
  4773. L009d14:
  4774. move.b (a1)+,d0
  4775. cmpi.b #$2e,d0 ;'.'
  4776. beq.s L009d24
  4777. tst.b d0
  4778. bne.s L009d14
  4779. addq.b #1,(-$0006,a6)
  4780. L009d24:
  4781. clr.b d1
  4782. lea.l ($0001,a5),a1
  4783. L009d2a:
  4784. move.b (a0)+,(a1)+
  4785. beq.s L009d36
  4786. addq.b #1,d1
  4787. tst.b d1
  4788. beq.s L009d3e
  4789. bra.s L009d2a
  4790. L009d36:
  4791. move.b d1,(a5)
  4792. move.w #$ffff,d0
  4793. rts
  4794. L009d3e:
  4795. clr.w d0
  4796. rts
  4797. L009d42:
  4798. tst.b (-$0005,a6)
  4799. beq.s L009d5c
  4800. lea.l (-$0076,a6),a1
  4801. lea.l (-$005e,a6),a0
  4802. bsr.w L009ee2
  4803. lea.l (L0111fc),a3
  4804. bra.s L009d90
  4805. L009d5c:
  4806. movea.l (-$0004,a6),a1
  4807. lea.l (L0111f6),a0
  4808. bsr.w L009f94
  4809. bne.s L009d72
  4810. lea.l (L0111fc),a3
  4811. L009d72:
  4812. movea.l a0,a3
  4813. lea.l (-$0076,a6),a1
  4814. lea.l (-$005e,a6),a0
  4815. L009d7c:
  4816. bsr.w L009ed4
  4817. bra.s L009d90
  4818. L009d82:
  4819. tst.b (a3)
  4820. bne.s L009d8e
  4821. tst.b (-$005e,a6)
  4822. bne.s L009df6
  4823. bra.s L009d90
  4824. L009d8e:
  4825. bsr.s L009dfa
  4826. L009d90:
  4827. tst.b (-$0006,a6)
  4828. bne.s L009dae
  4829. clr.b d2
  4830. lea.l (-$005e,a6),a0
  4831. bsr.w L009ec2
  4832. movea.l a0,a2
  4833. adda.l d0,a2
  4834. lea.l (L011204),a1
  4835. bsr.w L009ee2
  4836. L009dae:
  4837. lea.l (-$005e,a6),a0
  4838. lea.l (-$01ae,a6),a1
  4839. bsr.w L009f7c
  4840. tst.l d0
  4841. bmi.s L009d82
  4842. tst.b (-$0006,a6)
  4843. bne.s L009de8
  4844. L009dc4:
  4845. lea.l (-$0190,a6),a0
  4846. bsr.w L009e56
  4847. lea.l (-$01ae,a6),a1
  4848. bsr.w L009f8c
  4849. tst.l d0
  4850. bpl.s L009dc4
  4851. tst.b d2
  4852. beq.s L009d82
  4853. movea.l a4,a1
  4854. movea.l a2,a0
  4855. move.b #$2e,(a0)+ ;'.'
  4856. bsr.w L009ed4
  4857. L009de8:
  4858. lea.l (-$005e,a6),a0
  4859. movea.l a5,a1
  4860. move.b #-$01,d0
  4861. tst.b d0
  4862. rts
  4863. L009df6:
  4864. clr.b d0
  4865. rts
  4866. L009dfa:
  4867. lea.l (-$005e,a6),a0
  4868. clr.b d3
  4869. L009e00:
  4870. move.b (a3)+,d0
  4871. beq.s L009e36
  4872. cmp.b #$3b,d0 ;';'
  4873. beq.s L009e38
  4874. move.b d0,(a0)+
  4875. tst.b d3
  4876. beq.s L009e1e
  4877. cmp.b #$02,d3
  4878. beq.s L009e1c
  4879. move.b #$02,d3
  4880. bra.s L009e00
  4881. L009e1c:
  4882. clr.b d3
  4883. L009e1e:
  4884. cmp.b #$80,d0
  4885. bcs.s L009e00
  4886. cmp.b #$a0,d0
  4887. bcs.s L009e30
  4888. cmp.b #$e0,d0
  4889. bcs.s L009e00
  4890. L009e30:
  4891. move.b #$01,d3
  4892. bra.s L009e00
  4893. L009e36:
  4894. subq.l #1,a3
  4895. L009e38:
  4896. move.b (-$0001,a0),d0
  4897. cmp.b #$02,d3
  4898. beq.s L009e48
  4899. cmp.b #$5c,d0 ;'\'
  4900. beq.s L009e4c
  4901. L009e48:
  4902. move.b #$5c,(a0)+ ;'\'
  4903. L009e4c:
  4904. lea.l (-$0076,a6),a1
  4905. bsr.w L009ed4
  4906. rts
  4907. L009e56:
  4908. pea.l (a0)
  4909. bsr.w L009f32
  4910. addq.l #4,sp
  4911. clr.l d1
  4912. L009e60:
  4913. move.b (a0)+,d0
  4914. beq.s L009e6e
  4915. cmp.b #$2e,d0 ;'.'
  4916. bne.s L009e60
  4917. move.l a0,d1
  4918. bra.s L009e60
  4919. L009e6e:
  4920. tst.l d1
  4921. beq.s L009ea0
  4922. movea.l d1,a0
  4923. move.b #$03,d1
  4924. lea.l (L0111fd),a1
  4925. pea.l (a0)
  4926. L009e80:
  4927. pea.l (a1)
  4928. bsr.s L009ea2
  4929. lea.l ($0004,sp),sp
  4930. beq.s L009e96
  4931. L009e8a:
  4932. tst.b (a1)+
  4933. bne.s L009e8a
  4934. subq.b #1,d1
  4935. beq.s L009e96
  4936. tst.b (a1)
  4937. bne.s L009e80
  4938. L009e96:
  4939. addq.l #4,sp
  4940. cmp.b d2,d1
  4941. bcs.s L009ea0
  4942. movea.l a1,a4
  4943. move.b d1,d2
  4944. L009ea0:
  4945. rts
  4946. L009ea2:
  4947. movem.l d0/a4-a5,-(sp)
  4948. movea.l ($0010,sp),a4
  4949. movea.l ($0014,sp),a5
  4950. L009eae:
  4951. move.b (a5)+,d0
  4952. beq.s L009eba
  4953. cmp.b (a4)+,d0
  4954. beq.s L009eae
  4955. moveq.l #$ff,d0
  4956. bra.s L009ebc
  4957. L009eba:
  4958. tst.b (a4)
  4959. L009ebc:
  4960. movem.l (sp)+,d0/a4-a5
  4961. rts
  4962. L009ec2:
  4963. move.l a0,-(sp)
  4964. moveq.l #$ff,d0
  4965. L009ec6:
  4966. addi.l #$00000001,d0
  4967. tst.b (a0)+
  4968. bne.s L009ec6
  4969. movea.l (sp)+,a0
  4970. rts
  4971. L009ed4:
  4972. movem.l a0-a1,-(sp)
  4973. L009ed8:
  4974. move.b (a1)+,(a0)+
  4975. bne.s L009ed8
  4976. movem.l (sp)+,a0-a1
  4977. rts
  4978. L009ee2:
  4979. movem.l a0-a1,-(sp)
  4980. L009ee6:
  4981. tst.b (a0)+
  4982. bne.s L009ee6
  4983. subq.l #1,a0
  4984. L009eec:
  4985. move.b (a1)+,(a0)+
  4986. bne.s L009eec
  4987. movem.l (sp)+,a0-a1
  4988. rts
  4989. L009ef6:
  4990. movem.l a0-a1,-(sp)
  4991. bra.s L009f00
  4992. L009efc:
  4993. cmpm.b (a0)+,(a1)+
  4994. bne.s L009f08
  4995. L009f00:
  4996. dbra.w d0,L009efc
  4997. clr.l d0
  4998. bra.s L009f10
  4999. L009f08:
  5000. bcs.s L009f0e
  5001. moveq.l #$01,d0
  5002. bra.s L009f10
  5003. L009f0e:
  5004. moveq.l #$ff,d0
  5005. L009f10:
  5006. tst.l d0
  5007. movem.l (sp)+,a0-a1
  5008. rts
  5009. L009f18:
  5010. move.l a0,-(sp)
  5011. L009f1a:
  5012. move.b (a0)+,d0
  5013. cmpi.b #$20,d0 ;' '
  5014. beq.s L009f1a
  5015. cmpi.b #$09,d0
  5016. beq.s L009f1a
  5017. move.l a0,d0
  5018. movea.l (sp)+,a0
  5019. sub.l a0,d0
  5020. subq.l #1,d0
  5021. rts
  5022. L009f32:
  5023. movem.l d0-d1/a0,-(sp)
  5024. movea.l ($0010,sp),a0
  5025. clr.b d1
  5026. L009f3c:
  5027. move.b (a0),d0
  5028. beq.s L009f76
  5029. tst.b d1
  5030. beq.s L009f48
  5031. clr.b d1
  5032. bra.s L009f5e
  5033. L009f48:
  5034. cmp.b #$80,d0
  5035. bcs.s L009f62
  5036. cmp.b #$a0,d0
  5037. bcs.s L009f5a
  5038. cmp.b #$e0,d0
  5039. bcs.s L009f62
  5040. L009f5a:
  5041. move.b #$01,d1
  5042. L009f5e:
  5043. addq.l #1,a0
  5044. bra.s L009f3c
  5045. L009f62:
  5046. cmpi.b #$41,d0 ;'A'
  5047. bcs.s L009f72
  5048. cmpi.b #$5a,d0 ;'Z'
  5049. bhi.s L009f72
  5050. add.b #$20,d0 ;' '
  5051. L009f72:
  5052. move.b d0,(a0)+
  5053. bra.s L009f3c
  5054. L009f76:
  5055. movem.l (sp)+,d0-d1/a0
  5056. rts
  5057. L009f7c:
  5058. move.w #$0020,-(sp) ;' '
  5059. move.l a0,-(sp)
  5060. move.l a1,-(sp)
  5061. DOS _FILES
  5062. lea.l ($000a,sp),sp
  5063. rts
  5064. L009f8c:
  5065. move.l a1,-(sp)
  5066. DOS _NFILES
  5067. addq.l #4,sp
  5068. rts
  5069. L009f94:
  5070. movem.l a1,-(sp)
  5071. addq.l #4,a1
  5072. bsr.w L009ec2
  5073. L009f9e:
  5074. tst.b (a1)
  5075. beq.s L009fb8
  5076. movem.l d0,-(sp)
  5077. bsr.w L009ef6
  5078. beq.s L009fbc
  5079. movem.l (sp)+,d0
  5080. addq.l #1,a1
  5081. L009fb2:
  5082. tst.b (a1)+
  5083. bne.s L009fb2
  5084. bra.s L009f9e
  5085. L009fb8:
  5086. clr.b d0
  5087. bra.s L009fc8
  5088. L009fbc:
  5089. movem.l (sp)+,d0
  5090. adda.l d0,a1
  5091. movea.l a1,a0
  5092. move.b #-$01,d0
  5093. L009fc8:
  5094. movem.l (sp)+,a1
  5095. rts
  5096. L009fce:
  5097. movem.l d1,-(sp)
  5098. and.l #$000000ff,d0
  5099. move.l d0,d1
  5100. DOS _CURDRV
  5101. move.w d0,-(sp)
  5102. move.w d1,-(sp)
  5103. DOS _CHGDRV
  5104. addq.l #2,sp
  5105. cmp.w d1,d0
  5106. bhi.s L009fec
  5107. moveq.l #$ff,d0
  5108. bra.s L009ff0
  5109. L009fec:
  5110. DOS _CHGDRV
  5111. clr.l d0
  5112. L009ff0:
  5113. addq.l #2,sp
  5114. movem.l (sp)+,d1
  5115. rts
  5116. Call_EXIT:
  5117. clr.l d0
  5118. bra.s L00a000
  5119. Call_EXIT2:
  5120. clr.l d0
  5121. move.w (a6),d0
  5122. L00a000:
  5123. move.l d0,($1cae)
  5124. bsr.w Call_ALLCLOSE
  5125. movea.l (CurProgBlock),a0
  5126. bsr.w L0092b8
  5127. movea.l ($0040,a0),sp
  5128. movea.l ($003c,a0),a5
  5129. move.l a5,usp
  5130. tst.b ($0cbc)
  5131. beq.s L00a026
  5132. move.w #$0000,-(sp)
  5133. L00a026:
  5134. move.l ($0014,a0),-(sp)
  5135. move.w ($0044,a0),-(sp)
  5136. movea.l (CurProgBlock),a0
  5137. clr.l ($0068,a0)
  5138. bsr.w L00a11e
  5139. bsr.w L010134
  5140. move.l ($1cae),d0
  5141. clr.w ($1c08)
  5142. rte
  5143. Call_KEEPPR:
  5144. move.l (a6)+,d1
  5145. moveq.l #$01,d0
  5146. swap.w d0
  5147. move.w (a6),d0
  5148. move.l d0,($1cae)
  5149. movea.l (CurProgBlock),a0
  5150. move.l ($0004,a0),(CurProgBlock)
  5151. ori.l #$ff000000,($0004,a0)
  5152. add.l a0,d1
  5153. add.l #$00000100,d1
  5154. cmp.l ($0008,a0),d1
  5155. bcc.s L00a07e
  5156. move.l d1,($0008,a0)
  5157. L00a07e:
  5158. movea.l ($0040,a0),sp
  5159. movea.l ($003c,a0),a5
  5160. move.l a5,usp
  5161. tst.b ($0cbc)
  5162. beq.s L00a092
  5163. move.w #$0000,-(sp)
  5164. L00a092:
  5165. move.l ($0014,a0),-(sp)
  5166. move.w ($0044,a0),-(sp)
  5167. movea.l (CurProgBlock),a0
  5168. clr.l ($0068,a0)
  5169. bsr.w L00a150
  5170. bsr.w L010134
  5171. move.l ($1cae),d0
  5172. clr.w ($1c08)
  5173. rte
  5174. Call_WAIT:
  5175. move.l ($1cae),d0
  5176. rts
  5177. Call_SETPDB:
  5178. movea.l (a6),a1
  5179. L00a0be:
  5180. suba.l #$00000010,a1
  5181. move.l (CurProgBlock),d0
  5182. move.l a1,(CurProgBlock)
  5183. L00a0d0:
  5184. movea.l a1,a0
  5185. bsr.s L00a11e
  5186. L00a0d4:
  5187. add.l #$00000010,d0
  5188. rts
  5189. Call_GETPDB:
  5190. movea.l (CurProgBlock),a0
  5191. adda.l #$00000010,a0
  5192. move.l a0,d0
  5193. rts
  5194. L00a0ec:
  5195. movem.l d1/a1-a2,-(sp)
  5196. lea.l ($1bc0),a1
  5197. lea.l ($0014,a0),a2
  5198. moveq.l #$02,d1
  5199. L00a0fa:
  5200. move.l (a1)+,(a2)+
  5201. dbra.w d1,L00a0fa
  5202. lea.l ($00a8),a1
  5203. lea.l ($0046,a0),a2
  5204. move.w ($1c60),(a2)+
  5205. move.l ($1c62),(a2)+
  5206. moveq.l #$04,d1
  5207. L00a112:
  5208. move.l (a1)+,(a2)+
  5209. dbra.w d1,L00a112
  5210. movem.l (sp)+,d1/a1-a2
  5211. rts
  5212. L00a11e:
  5213. movem.l d1/a1-a2,-(sp)
  5214. lea.l ($1bc0),a2
  5215. lea.l ($0014,a0),a1
  5216. moveq.l #$02,d1
  5217. L00a12c:
  5218. move.l (a1)+,(a2)+
  5219. dbra.w d1,L00a12c
  5220. lea.l ($00a8),a2
  5221. lea.l ($0046,a0),a1
  5222. move.w (a1)+,($1c60)
  5223. move.l (a1)+,($1c62)
  5224. moveq.l #$04,d1
  5225. L00a144:
  5226. move.l (a1)+,(a2)+
  5227. dbra.w d1,L00a144
  5228. movem.l (sp)+,d1/a1-a2
  5229. rts
  5230. L00a150:
  5231. movem.l d0-d1/a0-a2,-(sp)
  5232. lea.l ($1bc0),a2
  5233. lea.l ($0014,a0),a1
  5234. moveq.l #$02,d1
  5235. L00a15e:
  5236. move.l (a1)+,(a2)+
  5237. dbra.w d1,L00a15e
  5238. lea.l ($0046,a0),a1
  5239. move.w (a1)+,($1c60)
  5240. move.l (a1)+,($1c62)
  5241. lea.l ($00a8),a2
  5242. clr.l d1
  5243. L00a176:
  5244. move.l (a2)+,d0
  5245. cmp.l (a1)+,d0
  5246. beq.s L00a17e
  5247. bsr.s L00a18c
  5248. L00a17e:
  5249. addq.w #4,d1
  5250. cmp.w #$0014,d1
  5251. bcs.s L00a176
  5252. movem.l (sp)+,d0-d1/a0-a2
  5253. rts
  5254. L00a18c:
  5255. movem.l d2/a0,-(sp)
  5256. L00a190:
  5257. move.l d0,($4c,a0,d1.w)
  5258. move.l ($0004,a0),d2
  5259. beq.s L00a19e
  5260. movea.l d2,a0
  5261. bra.s L00a190
  5262. L00a19e:
  5263. movem.l (sp)+,d2/a0
  5264. rts
  5265. L00a1a4:
  5266. rts
  5267. Call_GETENV:
  5268. movea.l (a6)+,a0
  5269. move.l (a6)+,d0
  5270. bne.s L00a1b6
  5271. movea.l (CurProgBlock),a1
  5272. move.l ($0010,a1),d0
  5273. L00a1b6:
  5274. cmp.l #$ffffffff,d0
  5275. beq.s L00a1d0
  5276. movea.l d0,a1
  5277. movea.l (a6),a2
  5278. bsr.s L00a1fa
  5279. tst.b d0
  5280. beq.s L00a1d0
  5281. L00a1c8:
  5282. move.b (a0)+,(a2)+
  5283. bne.s L00a1c8
  5284. clr.l d0
  5285. rts
  5286. L00a1d0:
  5287. moveq.l #$ff,d0
  5288. rts
  5289. Call_SETENV:
  5290. movea.l (a6)+,a0
  5291. move.l (a6)+,d0
  5292. bne.s L00a1e4
  5293. movea.l (CurProgBlock),a1
  5294. move.l ($0010,a1),d0
  5295. L00a1e4:
  5296. cmp.l #$ffffffff,d0
  5297. beq.s L00a1d0
  5298. movea.l d0,a1
  5299. movea.l (a6),a2
  5300. bsr.s L00a254
  5301. tst.b d0
  5302. beq.s L00a1d0
  5303. clr.l d0
  5304. rts
  5305. L00a1fa:
  5306. link.w a6,#-$0100
  5307. movem.l a1,-(sp)
  5308. movea.l a0,a1
  5309. lea.l (-$0100,a6),a0
  5310. L00a208:
  5311. move.b (a1)+,(a0)+
  5312. bne.s L00a208
  5313. move.b #$3d,(-$0001,a0) ;'='
  5314. clr.b (a0)
  5315. movem.l (sp),a1
  5316. addq.l #4,a1
  5317. lea.l (-$0100,a6),a0
  5318. bsr.w L009ec2
  5319. L00a222:
  5320. tst.b (a1)
  5321. beq.s L00a23c
  5322. movem.l d0,-(sp)
  5323. bsr.w L009ef6
  5324. beq.s L00a240
  5325. movem.l (sp)+,d0
  5326. addq.l #1,a1
  5327. L00a236:
  5328. tst.b (a1)+
  5329. bne.s L00a236
  5330. bra.s L00a222
  5331. L00a23c:
  5332. clr.b d0
  5333. bra.s L00a24c
  5334. L00a240:
  5335. movem.l (sp)+,d0
  5336. adda.l d0,a1
  5337. movea.l a1,a0
  5338. move.b #-$01,d0
  5339. L00a24c:
  5340. movem.l (sp)+,a1
  5341. unlk a6
  5342. rts
  5343. L00a254:
  5344. link.w a6,#-$0200
  5345. movem.l d1-d2/a0-a5,-(sp)
  5346. movea.l a2,a5
  5347. movea.l a0,a2
  5348. movea.l a1,a3
  5349. movea.l a2,a1
  5350. lea.l (-$0100,a6),a0
  5351. L00a268:
  5352. move.b (a1)+,(a0)+
  5353. bne.s L00a268
  5354. move.b #$3d,(-$0001,a0) ;'='
  5355. clr.b (a0)
  5356. move.l a5,(-$0004,sp)
  5357. bne.s L00a27e
  5358. movea.l a0,a5
  5359. bra.s L00a284
  5360. L00a27e:
  5361. movea.l a5,a1
  5362. L00a280:
  5363. move.b (a1)+,(a0)+
  5364. bne.s L00a280
  5365. L00a284:
  5366. movea.l a2,a1
  5367. lea.l (-$0100,a6),a2
  5368. lea.l (-$0200,a6),a0
  5369. L00a28e:
  5370. move.b (a1)+,(a0)+
  5371. bne.s L00a28e
  5372. movea.l a3,a1
  5373. lea.l (-$0200,a6),a0
  5374. bsr.w L009ec2
  5375. addq.l #1,d0
  5376. move.l d0,d1
  5377. bsr.w L00a1fa
  5378. tst.b d0
  5379. beq.s L00a2d4
  5380. suba.l d1,a0
  5381. bsr.w L009ec2
  5382. movea.l a0,a4
  5383. move.l d0,d1
  5384. movea.l a2,a0
  5385. bsr.w L009ec2
  5386. sub.l d0,d1
  5387. bcc.s L00a2c6
  5388. neg.l d1
  5389. movea.l a3,a0
  5390. bsr.s L00a30a
  5391. cmp.l d1,d0
  5392. bcs.s L00a300
  5393. L00a2c6:
  5394. movea.l a4,a0
  5395. move.w #$0001,d2
  5396. bsr.s L00a32c
  5397. movea.l a0,a1
  5398. movea.l a4,a0
  5399. bsr.s L00a340
  5400. L00a2d4:
  5401. tst.b (a5)
  5402. beq.s L00a2fc
  5403. movea.l a2,a0
  5404. bsr.w L009ec2
  5405. move.l d0,d1
  5406. movea.l a3,a0
  5407. bsr.s L00a30a
  5408. cmp.l d1,d0
  5409. bcs.s L00a300
  5410. movea.l a3,a0
  5411. addq.l #4,a0
  5412. L00a2ec:
  5413. move.w #$0001,d2
  5414. bsr.s L00a32c
  5415. bne.s L00a2ec
  5416. movea.l a2,a1
  5417. L00a2f6:
  5418. move.b (a1)+,(a0)+
  5419. bne.s L00a2f6
  5420. clr.b (a0)
  5421. L00a2fc:
  5422. moveq.l #$ff,d0
  5423. bra.s L00a302
  5424. L00a300:
  5425. clr.l d0
  5426. L00a302:
  5427. movem.l (sp)+,d1-d2/a0-a5
  5428. unlk a6
  5429. rts
  5430. L00a30a:
  5431. movem.l d2/a1,-(sp)
  5432. movea.l a0,a1
  5433. move.l (a0)+,d0
  5434. adda.l d0,a1
  5435. L00a314:
  5436. move.w #$0001,d2
  5437. bsr.s L00a32c
  5438. bne.s L00a314
  5439. addq.l #1,a0
  5440. suba.l a0,a1
  5441. bcc.s L00a324
  5442. suba.l a1,a1
  5443. L00a324:
  5444. move.l a1,d0
  5445. movem.l (sp)+,d2/a1
  5446. rts
  5447. L00a32c:
  5448. tst.w d2
  5449. beq.s L00a33c
  5450. tst.b (a0)
  5451. beq.s L00a33e
  5452. L00a334:
  5453. tst.b (a0)+
  5454. bne.s L00a334
  5455. subq.w #1,d2
  5456. bra.s L00a32c
  5457. L00a33c:
  5458. tst.b (a0)
  5459. L00a33e:
  5460. rts
  5461. L00a340:
  5462. move.b (a1)+,(a0)+
  5463. beq.s L00a34a
  5464. L00a344:
  5465. move.b (a1)+,(a0)+
  5466. bne.s L00a344
  5467. bra.s L00a340
  5468. L00a34a:
  5469. rts
  5470. Call_BREAKCK:
  5471. move.w (a6),d0
  5472. cmp.w #$0100,d0
  5473. bcs.s L00a360
  5474. cmp.w #$0600,d0
  5475. bcs.s L00a37c
  5476. cmp.w #$ffff,d0
  5477. bne.s L00a378
  5478. L00a360:
  5479. cmp.b #$ff,d0
  5480. beq.s L00a370
  5481. cmp.b #$03,d0
  5482. bcc.s L00a378
  5483. move.b d0,($1c12)
  5484. L00a370:
  5485. clr.l d0
  5486. move.b ($1c12),d0
  5487. rts
  5488. L00a378:
  5489. moveq.l #$f2,d0
  5490. rts
  5491. L00a37c:
  5492. addq.b #1,d0
  5493. cmp.b #$03,d0
  5494. bcc.s L00a378
  5495. move.w d0,d1
  5496. lsr.w #8,d1
  5497. subq.w #1,d1
  5498. and.l #$000000ff,d1
  5499. add.l d1,d1
  5500. lea.l ($1cbc),a0
  5501. adda.w d1,a0
  5502. move.b (a0),d1
  5503. tst.b d0
  5504. beq.s L00a3a4
  5505. and.b #$01,d0
  5506. move.b d0,(a0)
  5507. L00a3a4:
  5508. and.l #$00000001,d1
  5509. eori.b #$01,d1
  5510. move.l d1,d0
  5511. rts
  5512. L00a3b2:
  5513. movem.l d1-d7/a0-a6,-(sp)
  5514. bsr.s Call_GETDATE
  5515. movem.l (sp)+,d1-d7/a0-a6
  5516. rts
  5517. Call_GETDATE:
  5518. move.l #$07c10707,d1
  5519. L00a3c4:
  5520. bsr.w L008fbc
  5521. move.l d1,d0
  5522. swap.w d1
  5523. and.w #$0fff,d1
  5524. sub.w #$07bc,d1
  5525. swap.w d1
  5526. asl.b #3,d1
  5527. asl.w #4,d1
  5528. lsr.l #7,d1
  5529. rol.l #4,d0
  5530. and.l #$00000007,d0
  5531. swap.w d0
  5532. or.l d1,d0
  5533. rts
  5534. Call_SETDATE:
  5535. clr.l d1
  5536. move.w (a6),d1
  5537. asl.l #7,d1
  5538. lsr.w #4,d1
  5539. lsr.b #3,d1
  5540. swap.w d1
  5541. add.w #$07bc,d1
  5542. swap.w d1
  5543. bra.w L008fc2
  5544. L00a400:
  5545. movem.l d1-d7/a0-a6,-(sp)
  5546. bsr.s Call_GETTIME
  5547. movem.l (sp)+,d1-d7/a0-a6
  5548. rts
  5549. Call_GETTIME:
  5550. bsr.s Call_GETTIM2
  5551. asl.b #2,d0
  5552. asl.w #2,d0
  5553. lsr.l #5,d0
  5554. rts
  5555. Call_GETTIM2:
  5556. move.l #$000c0500,d1
  5557. bsr.w L008fc8
  5558. move.l d1,d0
  5559. rts
  5560. Call_SETTIME:
  5561. clr.l d1
  5562. move.w (a6),d1
  5563. asl.l #5,d1
  5564. lsr.w #2,d1
  5565. lsr.b #2,d1
  5566. bra.w L008fce
  5567. Call_SETTIM2:
  5568. move.l (a6),d1
  5569. bra.w L008fce
  5570. Call_SUPER:
  5571. move.l (a6),d0
  5572. beq.s L00a46c
  5573. sub.l #$00000042,d0
  5574. tst.b ($0cbc)
  5575. beq.s L00a44a
  5576. subq.l #2,d0
  5577. L00a44a:
  5578. movea.l d0,a1
  5579. movea.l sp,a0
  5580. moveq.l #$0e,d1
  5581. L00a450:
  5582. move.l (a0)+,(a1)+
  5583. dbra.w d1,L00a450
  5584. move.w (a0)+,d1
  5585. and.w #$dfff,d1
  5586. move.w d1,(a1)+
  5587. move.l (a0)+,(a1)+
  5588. tst.b ($0cbc)
  5589. beq.s L00a468
  5590. move.w (a0)+,(a1)+
  5591. L00a468:
  5592. movea.l d0,sp
  5593. rts
  5594. L00a46c:
  5595. btst.b #$05,($003c,sp)
  5596. bne.s L00a4a8
  5597. move.l usp,a1
  5598. suba.l #$00000042,a1
  5599. tst.b ($0cbc)
  5600. beq.s L00a484
  5601. subq.l #2,a1
  5602. L00a484:
  5603. move.l a1,d0
  5604. movea.l sp,a0
  5605. moveq.l #$0e,d1
  5606. L00a48a:
  5607. move.l (a0)+,(a1)+
  5608. dbra.w d1,L00a48a
  5609. move.w (a0)+,d1
  5610. or.w #$2000,d1
  5611. move.w d1,(a1)+
  5612. move.l (a0)+,(a1)+
  5613. tst.b ($0cbc)
  5614. beq.s L00a4a2
  5615. move.w (a0)+,(a1)+
  5616. L00a4a2:
  5617. movea.l d0,sp
  5618. move.l a0,d0
  5619. rts
  5620. L00a4a8:
  5621. moveq.l #$e6,d0
  5622. rts
  5623. Call_VERNUM:
  5624. move.w #$3638,d0 ;'68'
  5625. swap.w d0
  5626. move.w #$0302,d0
  5627. rts
  5628. Call_INTVCS:
  5629. move.w (a6)+,d0
  5630. move.l (a6),d1
  5631. bsr.w L00a562
  5632. move.l (a1),d0
  5633. move.l d1,(a1)
  5634. movea.l (CurProgBlock),a2
  5635. cmpa.l #$00001bc0,a1
  5636. beq.s L00a50c
  5637. cmpa.l #$00001bc4,a1
  5638. beq.s L00a512
  5639. cmpa.l #$00001bc8,a1
  5640. beq.s L00a51a
  5641. cmpa.l #$000000a8,a1
  5642. beq.s L00a53c
  5643. cmpa.l #$000000ac,a1
  5644. beq.s L00a542
  5645. cmpa.l #$000000b0,a1
  5646. beq.s L00a548
  5647. cmpa.l #$000000b4,a1
  5648. beq.s L00a54e
  5649. cmpa.l #$000000b8,a1
  5650. beq.s L00a554
  5651. rts
  5652. L00a50c:
  5653. move.l d1,($0014,a2)
  5654. rts
  5655. L00a512:
  5656. move.l d1,($0018,a2)
  5657. move.l d1,($0004,a1)
  5658. L00a51a:
  5659. move.l d1,($001c,a2)
  5660. movea.l ($1c5c),a1
  5661. move.w ($0038,a1),($1c60)
  5662. move.w ($0038,a1),($0046,a2)
  5663. lea.l ($003e,a1),a0
  5664. move.l a0,($1c62)
  5665. move.l a0,($0048,a2)
  5666. rts
  5667. L00a53c:
  5668. move.l d1,($004c,a2)
  5669. rts
  5670. L00a542:
  5671. move.l d1,($0050,a2)
  5672. rts
  5673. L00a548:
  5674. move.l d1,($0054,a2)
  5675. rts
  5676. L00a54e:
  5677. move.l d1,($0058,a2)
  5678. rts
  5679. L00a554:
  5680. move.l d1,($005c,a2)
  5681. rts
  5682. Call_INTVCG:
  5683. move.w (a6),d0
  5684. bsr.s L00a562
  5685. move.l (a1),d0
  5686. rts
  5687. L00a562:
  5688. suba.l a1,a1
  5689. cmp.w #$0200,d0
  5690. bcs.s L00a576
  5691. movea.l #$00001800,a1
  5692. and.l #$000000ff,d0
  5693. L00a576:
  5694. add.l d0,d0
  5695. add.l d0,d0
  5696. adda.l d0,a1
  5697. rts
  5698. Call_FGETC:
  5699. move.w (a6),d1
  5700. lea.l (-$0002,sp),sp
  5701. movea.l sp,a2
  5702. moveq.l #$01,d2
  5703. bsr.w L00c302
  5704. tst.l d0
  5705. bmi.s L00a596
  5706. beq.s L00a59c
  5707. clr.l d0
  5708. move.b (sp),d0
  5709. L00a596:
  5710. lea.l ($0002,sp),sp
  5711. rts
  5712. L00a59c:
  5713. moveq.l #$ff,d0
  5714. lea.l ($0002,sp),sp
  5715. rts
  5716. Call_FGETS:
  5717. movea.l (a6)+,a2
  5718. move.w (a6),d1
  5719. move.w d1,d0
  5720. bsr.w L00a9d8
  5721. tst.l d0
  5722. bmi.s L00a5cc
  5723. move.b ($0001,a0),d0
  5724. btst.l #$07,d0
  5725. beq.s L00a5ce
  5726. and.w #$0021,d0
  5727. cmp.w #$0001,d0
  5728. bne.s L00a5ce
  5729. subq.l #4,a6
  5730. bsr.w Call_GETS
  5731. L00a5cc:
  5732. rts
  5733. L00a5ce:
  5734. clr.l d7
  5735. clr.l d2
  5736. move.b (a2)+,d2
  5737. move.l a2,-(sp)
  5738. addq.l #1,a2
  5739. tst.b d2
  5740. beq.s L00a60a
  5741. L00a5dc:
  5742. movem.l d2/d7/a0/a2,-(sp)
  5743. moveq.l #$01,d2
  5744. bsr.w L00c30c
  5745. movem.l (sp)+,d2/d7/a0/a2
  5746. tst.l d0
  5747. beq.s L00a61a
  5748. bmi.s L00a61a
  5749. addq.l #1,d7
  5750. move.b (a2)+,d0
  5751. cmp.b #$1a,d0
  5752. beq.s L00a60a
  5753. cmp.b #$0a,d0
  5754. beq.s L00a622
  5755. cmp.b #$0d,d0
  5756. beq.s L00a614
  5757. subq.b #1,d2
  5758. bne.s L00a5dc
  5759. L00a60a:
  5760. clr.b (a2)
  5761. move.l d7,d0
  5762. movea.l (sp)+,a2
  5763. move.b d0,(a2)
  5764. rts
  5765. L00a614:
  5766. subq.l #1,a2
  5767. subq.l #1,d7
  5768. bra.s L00a5dc
  5769. L00a61a:
  5770. tst.l d7
  5771. bne.s L00a60a
  5772. moveq.l #$ff,d7
  5773. bra.s L00a60a
  5774. L00a622:
  5775. subq.l #1,a2
  5776. subq.l #1,d7
  5777. bra.s L00a60a
  5778. Call_FPUTC:
  5779. move.w (a6)+,d0
  5780. move.w (a6),d1
  5781. lea.l (-$0002,sp),sp
  5782. movea.l sp,a2
  5783. move.b d0,(a2)
  5784. moveq.l #$01,d2
  5785. bsr.w L00c438
  5786. lea.l ($0002,sp),sp
  5787. rts
  5788. Call_FPUTS:
  5789. movea.l (a6)+,a2
  5790. move.w (a6),d1
  5791. clr.l d2
  5792. movea.l a2,a0
  5793. L00a648:
  5794. addq.l #1,d2
  5795. tst.b (a0)+
  5796. bne.s L00a648
  5797. clr.l d0
  5798. subq.l #1,d2
  5799. beq.s L00a658
  5800. bsr.w L00c438
  5801. L00a658:
  5802. rts
  5803. Call_ALLCLOSE:
  5804. movea.l (CurProgBlock),a1
  5805. L00a660:
  5806. lea.l ($0024,a1),a0
  5807. bsr.s L00a678
  5808. move.l ($0068,a1),d0
  5809. beq.s L00a676
  5810. move.l a1,d1
  5811. movea.l d0,a1
  5812. cmp.l ($0004,a1),d1
  5813. beq.s L00a660
  5814. L00a676:
  5815. rts
  5816. L00a678:
  5817. movem.l d0-d7/a0-a6,-(sp)
  5818. moveq.l #$0b,d2
  5819. moveq.l #$5f,d0 ;'_'
  5820. L00a680:
  5821. moveq.l #$07,d1
  5822. L00a682:
  5823. btst.b d1,(a0,d2.w)
  5824. beq.s L00a694
  5825. movem.l d0-d2/a0-a1,-(sp)
  5826. bsr.w L00c236
  5827. movem.l (sp)+,d0-d2/a0-a1
  5828. L00a694:
  5829. subq.w #1,d0
  5830. cmp.w #$0005,d0
  5831. dbcs.w d1,L00a682
  5832. dbcs.w d2,L00a680
  5833. movem.l (sp)+,d0-d7/a0-a6
  5834. rts
  5835. Call_DRVXCHG:
  5836. cmpi.l #$ffffffff,(a6)
  5837. beq.s L00a6d6
  5838. bsr.s L00a6fa
  5839. bhi.s L00a6d2
  5840. move.l d0,d1
  5841. bsr.s L00a6fa
  5842. bhi.s L00a6d2
  5843. lea.l ($1c7e),a0
  5844. move.b (a0,d0.w),d2
  5845. move.b (a0,d1.w),d3
  5846. move.b d3,(a0,d0.w)
  5847. move.b d2,(a0,d1.w)
  5848. clr.l d0
  5849. rts
  5850. L00a6d2:
  5851. moveq.l #$f1,d0
  5852. rts
  5853. L00a6d6:
  5854. lea.l ($1c7e),a0
  5855. clr.w d0
  5856. move.b ($1c15),d0
  5857. move.b (a0,d0.w),d1
  5858. bsr.s L00a6ea
  5859. move.b d1,d0
  5860. rts
  5861. L00a6ea:
  5862. lea.l ($1c98),a0
  5863. moveq.l #$19,d0
  5864. L00a6f0:
  5865. move.b d0,-(a0)
  5866. dbra.w d0,L00a6f0
  5867. clr.l d0
  5868. rts
  5869. L00a6fa:
  5870. move.w (a6)+,d0
  5871. bne.s L00a704
  5872. move.b ($1c15),d0
  5873. addq.w #1,d0
  5874. L00a704:
  5875. subq.w #1,d0
  5876. cmp.b ($1c73),d0
  5877. rts
  5878. L00a70c:
  5879. and.w #$00ff,d0
  5880. cmp.b ($1c73),d0
  5881. bhi.s L00a726
  5882. movem.l a0,-(sp)
  5883. lea.l ($1c7e),a0
  5884. move.b (a0,d0.w),d0
  5885. movem.l (sp)+,a0
  5886. L00a726:
  5887. rts
  5888. L00a728:
  5889. movem.l d1-d2/a0,-(sp)
  5890. lea.l ($1c7e),a0
  5891. clr.w d1
  5892. move.b ($1c73),d1
  5893. clr.l d2
  5894. L00a738:
  5895. cmp.b (a0)+,d0
  5896. beq.s L00a744
  5897. addq.w #1,d2
  5898. dbra.w d1,L00a738
  5899. moveq.l #$ff,d2
  5900. L00a744:
  5901. move.l d2,d0
  5902. movem.l (sp)+,d1-d2/a0
  5903. rts
  5904. Call_CURDIR:
  5905. bsr.w L00a780
  5906. movea.l (a6),a1
  5907. bsr.w L00a792
  5908. bmi.s L00a766
  5909. movea.l d0,a0
  5910. move.l a1,-(sp)
  5911. bsr.s L00a768
  5912. movea.l (sp)+,a1
  5913. bsr.w L00a7d6
  5914. clr.l d0
  5915. L00a766:
  5916. rts
  5917. L00a768:
  5918. move.w ($004c,a0),d0
  5919. lea.l ($01,a0,d0.w),a0
  5920. move.w #$003d,d0 ;'='
  5921. L00a774:
  5922. move.b (a0)+,(a1)+
  5923. dbeq.w d0,L00a774
  5924. beq.s L00a77e
  5925. clr.b (a1)+
  5926. L00a77e:
  5927. rts
  5928. L00a780:
  5929. move.w (a6)+,d0
  5930. bne.s L00a78a
  5931. move.b ($1c15),d0
  5932. addq.w #1,d0
  5933. L00a78a:
  5934. subq.w #1,d0
  5935. bsr.w L00a70c
  5936. rts
  5937. L00a792:
  5938. movem.l a0,-(sp)
  5939. bsr.s L00a79e
  5940. movem.l (sp)+,a0
  5941. rts
  5942. L00a79e:
  5943. cmp.b ($1c73),d0
  5944. bhi.s L00a7d2
  5945. and.w #$00ff,d0
  5946. movea.l ($1c38),a0
  5947. mulu.w #$004e,d0
  5948. adda.l d0,a0
  5949. move.b ($0045,a0),d0
  5950. beq.s L00a7d2
  5951. cmp.b #$60,d0 ;'`'
  5952. beq.s L00a7d2
  5953. movem.l a0,-(sp)
  5954. movea.l ($0046,a0),a0
  5955. bsr.w L00d428
  5956. movem.l (sp)+,a0
  5957. move.l a0,d0
  5958. rts
  5959. L00a7d2:
  5960. moveq.l #$f1,d0
  5961. rts
  5962. L00a7d6:
  5963. move.b (a1)+,d0
  5964. beq.s L00a7f6
  5965. cmp.b #$09,d0
  5966. beq.s L00a7f8
  5967. cmp.b #$80,d0
  5968. bcs.s L00a7d6
  5969. cmp.b #$a0,d0
  5970. bcs.s L00a7f2
  5971. cmp.b #$e0,d0
  5972. bcs.s L00a7d6
  5973. L00a7f2:
  5974. move.b (a1)+,d0
  5975. bne.s L00a7d6
  5976. L00a7f6:
  5977. rts
  5978. L00a7f8:
  5979. move.b #$5c,(-$0001,a1) ;'\'
  5980. bra.s L00a7d6
  5981. L00a800:
  5982. movem.l a0,-(sp)
  5983. movea.l (L00f1ae,pc),a0
  5984. move.b (a0),d0
  5985. beq.s L00a88a
  5986. clr.l d0
  5987. L00a80e:
  5988. move.b (a1)+,d0
  5989. beq.s L00a880
  5990. cmp.b #$20,d0 ;' '
  5991. beq.s L00a80e
  5992. moveq.l #$59,d1 ;'Y'
  5993. bra.s L00a820
  5994. L00a81c:
  5995. move.b (a1)+,d0
  5996. beq.s L00a880
  5997. L00a820:
  5998. cmp.b #$e0,d0
  5999. bcc.s L00a86a
  6000. cmp.b #$a0,d0
  6001. bcc.s L00a85e
  6002. cmp.b #$80,d0
  6003. bcc.s L00a86a
  6004. cmp.b #$20,d0 ;' '
  6005. bcs.s L00a878
  6006. beq.s L00a89c
  6007. cmp.b #$3a,d0 ;':'
  6008. beq.s L00a894
  6009. movea.l (L00f1ae,pc),a0
  6010. cmp.b (a0)+,d0
  6011. beq.s L00a898
  6012. cmp.b (a0)+,d0
  6013. beq.s L00a898
  6014. cmp.w (a0)+,d0
  6015. beq.s L00a878
  6016. swap.w d1
  6017. move.w (a0)+,d1
  6018. L00a854:
  6019. cmp.b (a0)+,d0
  6020. beq.s L00a878
  6021. dbra.w d1,L00a854
  6022. swap.w d1
  6023. L00a85e:
  6024. move.b d0,(a4)+
  6025. or.w #$0100,d0
  6026. dbra.w d1,L00a81c
  6027. bra.s L00a878
  6028. L00a86a:
  6029. move.b d0,(a4)+
  6030. subq.w #1,d1
  6031. bmi.s L00a878
  6032. move.b (a1)+,d0
  6033. cmp.b #$20,d0 ;' '
  6034. bcc.s L00a85e
  6035. L00a878:
  6036. movem.l (sp)+,a0
  6037. moveq.l #$f3,d0
  6038. rts
  6039. L00a880:
  6040. movem.l (sp)+,a0
  6041. clr.l d0
  6042. clr.b (a4)
  6043. rts
  6044. L00a88a:
  6045. bsr.w L00f2a8
  6046. movem.l (sp)+,a0
  6047. rts
  6048. L00a894:
  6049. moveq.l #$3a,d0 ;':'
  6050. bra.s L00a85e
  6051. L00a898:
  6052. moveq.l #$09,d0
  6053. bra.s L00a85e
  6054. L00a89c:
  6055. move.b (a1)+,d0
  6056. beq.s L00a880
  6057. cmp.b #$20,d0 ;' '
  6058. beq.s L00a89c
  6059. movea.l (L00f1ae,pc),a0
  6060. cmp.b (a0)+,d0
  6061. beq.s L00a898
  6062. cmp.b (a0)+,d0
  6063. beq.s L00a898
  6064. cmp.b #$2e,d0 ;'.'
  6065. bne.s L00a878
  6066. bra.s L00a85e
  6067. L00a8ba:
  6068. bsr.w L00a780
  6069. L00a8be:
  6070. bsr.w L00a792
  6071. bmi.s L00a8d8
  6072. movea.l d0,a0
  6073. move.l ($0046,a0),d0
  6074. movem.l d0/a0,-(sp)
  6075. movea.l d0,a0
  6076. bsr.w L00d428
  6077. movem.l (sp)+,d0/a0
  6078. L00a8d8:
  6079. tst.l d0
  6080. rts
  6081. L00a8dc:
  6082. movem.l d1/a0,-(sp)
  6083. move.l ($1c3c),d1
  6084. L00a8e4:
  6085. movea.l d1,a0
  6086. cmp.b (a0),d0
  6087. beq.s L00a8f6
  6088. move.l ($0006,a0),d1
  6089. bpl.s L00a8e4
  6090. movea.l #$fffffff1,a0
  6091. L00a8f6:
  6092. move.l a0,d0
  6093. movem.l (sp)+,d1/a0
  6094. rts
  6095. Call_CHGDRV:
  6096. move.w (a6),d0
  6097. cmp.b ($1c73),d0
  6098. bhi.s L00a916
  6099. move.w d0,d1
  6100. bsr.w L00a70c
  6101. bsr.w L00a792
  6102. bmi.s L00a920
  6103. move.b d1,($1c15)
  6104. L00a916:
  6105. clr.l d0
  6106. move.b ($1c73),d0
  6107. addq.w #1,d0
  6108. rts
  6109. L00a920:
  6110. clr.l d0
  6111. move.b d1,d0
  6112. rts
  6113. Call_CURDRV:
  6114. clr.l d0
  6115. move.b ($1c15),d0
  6116. rts
  6117. Call_DUP:
  6118. move.w (a6),d0
  6119. bsr.w L00a9d8
  6120. move.l d0,d2
  6121. bmi.s L00a94c
  6122. movea.l a0,a2
  6123. bsr.w L00aa2e
  6124. tst.l d0
  6125. bmi.s L00a94c
  6126. move.b d2,($0001,a0)
  6127. addq.b #1,(a2)
  6128. bsr.w L00aaa0
  6129. L00a94c:
  6130. rts
  6131. Call_DUP0:
  6132. move.w (a6)+,d1
  6133. cmp.w ($1c6e),d1
  6134. bhi.s L00a984
  6135. move.w d1,d0
  6136. rol.w #8,d1
  6137. or.w d0,d1
  6138. move.w (a6),d0
  6139. cmp.w #$0004,d0
  6140. bhi.s L00a984
  6141. lea.l (L013d1a),a0
  6142. add.w d0,d0
  6143. move.b (a0,d0.w),d2
  6144. move.w d1,(a0,d0.w)
  6145. lea.l (L013d24),a0
  6146. move.w d1,(a0,d0.w)
  6147. clr.l d0
  6148. move.b d2,d0
  6149. rts
  6150. L00a984:
  6151. moveq.l #$fc,d0
  6152. rts
  6153. Call_DUP2:
  6154. move.w (a6)+,d0
  6155. bsr.w L00a9d8
  6156. tst.l d0
  6157. bmi.s L00a9c8
  6158. movem.l d0/a0,-(sp)
  6159. move.w (a6),d0
  6160. bsr.w L00a9d8
  6161. tst.l d0
  6162. bpl.s L00a9a4
  6163. movea.l a1,a5
  6164. bra.s L00a9b8
  6165. L00a9a4:
  6166. move.l a1,-(sp)
  6167. move.w (a6),d0
  6168. move.w (a1),-(sp)
  6169. bsr.w L00aad0
  6170. bsr.w L00c236
  6171. move.w (sp)+,d0
  6172. movea.l (sp)+,a5
  6173. move.w d0,(a5)
  6174. L00a9b8:
  6175. move.w (a6),d0
  6176. bsr.w L00aaa0
  6177. movem.l (sp)+,d0/a0
  6178. move.b d0,($0001,a5)
  6179. addq.b #1,(a0)
  6180. L00a9c8:
  6181. rts
  6182. Call_GETFCB:
  6183. move.w (a6),d0
  6184. bsr.s L00a9d8
  6185. tst.l d0
  6186. bmi.s L00a9d6
  6187. move.l a0,d0
  6188. rts
  6189. L00a9d6:
  6190. rts
  6191. L00a9d8:
  6192. cmp.w ($1c6e),d0
  6193. bhi.s L00aa26
  6194. movea.l #L013d24,a1
  6195. cmp.w #$0006,d0
  6196. bcs.s L00a9f0
  6197. subq.w #6,d0
  6198. movea.l ($1c2c),a1
  6199. L00a9f0:
  6200. add.w d0,d0
  6201. lea.l (a1,d0.w),a1
  6202. move.w (a1),d0
  6203. and.l #$000000ff,d0
  6204. cmp.b #-$01,d0
  6205. beq.s L00aa2a
  6206. move.l d0,-(sp)
  6207. movea.l #L013d30,a0
  6208. cmp.w #$0006,d0
  6209. bcs.s L00aa18
  6210. subq.w #6,d0
  6211. movea.l ($1c30),a0
  6212. L00aa18:
  6213. mulu.w #$0060,d0
  6214. adda.l d0,a0
  6215. move.l (sp)+,d0
  6216. tst.b (a0)
  6217. beq.s L00aa2a
  6218. rts
  6219. L00aa26:
  6220. moveq.l #$fc,d0
  6221. rts
  6222. L00aa2a:
  6223. moveq.l #$fa,d0
  6224. rts
  6225. L00aa2e:
  6226. movea.l #L013d2e,a0
  6227. moveq.l #$05,d0
  6228. cmpi.w #$ffff,(a0)
  6229. beq.s L00aa66
  6230. movea.l ($1c2c),a0
  6231. move.w ($1c6e),d0
  6232. subq.w #2,d0
  6233. subq.w #6,d0
  6234. bcs.s L00aa58
  6235. move.w d0,-(sp)
  6236. L00aa4c:
  6237. cmpi.w #$ffff,(a0)+
  6238. dbeq.w d0,L00aa4c
  6239. beq.s L00aa5c
  6240. addq.l #2,sp
  6241. L00aa58:
  6242. moveq.l #$fc,d0
  6243. rts
  6244. L00aa5c:
  6245. sub.w d0,(sp)
  6246. clr.l d0
  6247. move.w (sp)+,d0
  6248. addq.w #6,d0
  6249. subq.l #2,a0
  6250. L00aa66:
  6251. rts
  6252. L00aa68:
  6253. movea.l #L013f10,a0
  6254. moveq.l #$05,d0
  6255. tst.b (a0)
  6256. beq.s L00aa9e
  6257. move.w ($1c6e),d0
  6258. subq.w #2,d0
  6259. subq.w #6,d0
  6260. bcs.s L00aa92
  6261. movea.l ($1c30),a0
  6262. move.w d0,-(sp)
  6263. L00aa84:
  6264. tst.b (a0)
  6265. beq.s L00aa96
  6266. lea.l ($0060,a0),a0
  6267. dbra.w d0,L00aa84
  6268. addq.l #2,sp
  6269. L00aa92:
  6270. moveq.l #$fc,d0
  6271. rts
  6272. L00aa96:
  6273. sub.w d0,(sp)
  6274. clr.l d0
  6275. move.w (sp)+,d0
  6276. addq.w #6,d0
  6277. L00aa9e:
  6278. rts
  6279. L00aaa0:
  6280. movem.l d0-d1/a0,-(sp)
  6281. cmp.w #$0060,d0 ;'`'
  6282. bcc.s L00aaca
  6283. move.w d0,d1
  6284. L00aaac:
  6285. and.w #$0007,d0
  6286. lsr.w #3,d1
  6287. lea.l (L013d0e),a0
  6288. bset.b d0,(a0,d1.w)
  6289. movea.l (CurProgBlock),a0
  6290. lea.l ($0024,a0),a0
  6291. bset.b d0,(a0,d1.w)
  6292. L00aaca:
  6293. movem.l (sp)+,d0-d1/a0
  6294. rts
  6295. L00aad0:
  6296. movem.l d0-d1/a0,-(sp)
  6297. cmp.w #$0060,d0 ;'`'
  6298. bcc.s L00aafa
  6299. move.w d0,d1
  6300. L00aadc:
  6301. and.w #$0007,d0
  6302. lsr.w #3,d1
  6303. lea.l (L013d0e),a0
  6304. bclr.b d0,(a0,d1.w)
  6305. movea.l (CurProgBlock),a0
  6306. lea.l ($0024,a0),a0
  6307. bclr.b d0,(a0,d1.w)
  6308. L00aafa:
  6309. movem.l (sp)+,d0-d1/a0
  6310. rts
  6311. L00ab00:
  6312. movem.l d1/a1,-(sp)
  6313. cmp.w #$0100,d2
  6314. bcc.s L00ab54
  6315. bsr.w L00aa2e
  6316. movea.l a0,a1
  6317. move.l d0,d1
  6318. bmi.s L00ab44
  6319. bsr.w L00aa68
  6320. tst.l d0
  6321. bmi.s L00ab44
  6322. L00ab1c:
  6323. move.b d0,(a1)
  6324. move.b d0,($0001,a1)
  6325. movea.l a0,a1
  6326. moveq.l #$10,d0
  6327. L00ab26:
  6328. clr.l (a1)+
  6329. dbra.w d0,L00ab26
  6330. moveq.l #$06,d0
  6331. L00ab2e:
  6332. move.l #$ffffffff,(a1)+
  6333. dbra.w d0,L00ab2e
  6334. move.l d1,d0
  6335. move.b #$01,(a0)
  6336. bsr.w L00aaa0
  6337. tst.l d0
  6338. L00ab44:
  6339. movem.l (sp)+,d1/a1
  6340. bmi.s L00ab52
  6341. move.l a0,($1c98)
  6342. move.l d0,($1c9c)
  6343. L00ab52:
  6344. rts
  6345. L00ab54:
  6346. movea.l ($1c2c),a0
  6347. clr.l d0
  6348. move.w ($1c6e),d0
  6349. move.w d0,-(sp)
  6350. subq.w #6,d0
  6351. add.w d0,d0
  6352. adda.l d0,a0
  6353. move.w (sp)+,d0
  6354. cmpi.w #$ffff,(a0)
  6355. beq.s L00ab7a
  6356. subq.w #1,d0
  6357. cmpi.w #$ffff,-(a0)
  6358. beq.s L00ab7a
  6359. L00ab76:
  6360. moveq.l #$fc,d0
  6361. bra.s L00ab44
  6362. L00ab7a:
  6363. movea.l a0,a1
  6364. move.l d0,d1
  6365. move.w ($1c6e),d0
  6366. move.w d0,-(sp)
  6367. subq.w #6,d0
  6368. mulu.w #$0060,d0
  6369. movea.l ($1c30),a0
  6370. adda.l d0,a0
  6371. move.w (sp)+,d0
  6372. tst.b (a0)
  6373. beq.s L00ab1c
  6374. lea.l (-$0060,a0),a0
  6375. subq.w #1,d0
  6376. tst.b (a0)
  6377. beq.w L00ab1c
  6378. bra.s L00ab76
  6379. L00aba4:
  6380. cmp.w #$0005,d0
  6381. bcs.s L00abe6
  6382. bsr.w L00aad0
  6383. bsr.w L00a9d8
  6384. tst.l d0
  6385. bmi.s L00ac08
  6386. move.w #$ffff,(a1)
  6387. L00abba:
  6388. subq.b #1,(a0)
  6389. bne.s L00abe4
  6390. cmp.w #$0005,d0
  6391. bcc.s L00abe4
  6392. addq.b #1,(a0)
  6393. movem.l d0-d1/a0-a3,-(sp)
  6394. move.l #L00fa50,d1
  6395. L00abd0:
  6396. movea.l d1,a1
  6397. btst.b #$07,($0004,a1)
  6398. beq.s L00abdc
  6399. bsr.s L00ac0a
  6400. L00abdc:
  6401. move.l (a1),d1
  6402. bpl.s L00abd0
  6403. movem.l (sp)+,d0-d1/a0-a3
  6404. L00abe4:
  6405. rts
  6406. L00abe6:
  6407. move.l d1,-(sp)
  6408. move.l d0,d1
  6409. bsr.w L00a9d8
  6410. tst.l d0
  6411. bmi.s L00ac06
  6412. move.l a0,-(sp)
  6413. add.w d1,d1
  6414. lea.l (L013d1a),a0
  6415. move.w (a0,d1.w),(a1)
  6416. movea.l (sp)+,a0
  6417. move.l (sp)+,d1
  6418. bra.s L00abba
  6419. L00ac06:
  6420. move.l (sp)+,d1
  6421. L00ac08:
  6422. rts
  6423. L00ac0a:
  6424. move.w ($0004,a1),d0
  6425. btst.l #$00,d0
  6426. beq.s L00ac20
  6427. lea.l (L013d30),a2
  6428. move.l a1,($0002,a2)
  6429. bsr.s L00ac6e
  6430. L00ac20:
  6431. btst.l #$01,d0
  6432. beq.s L00ac3e
  6433. lea.l (L013d90),a2
  6434. move.l a1,($0002,a2)
  6435. bsr.s L00ac6e
  6436. lea.l (L013df0),a2
  6437. move.l a1,($0002,a2)
  6438. bsr.s L00ac6e
  6439. L00ac3e:
  6440. lea.l (L013e50),a2
  6441. bsr.s L00ac5c
  6442. bne.s L00ac4c
  6443. move.l a1,($0002,a2)
  6444. L00ac4c:
  6445. lea.l (L013eb0),a2
  6446. bsr.s L00ac5c
  6447. bne.s L00ac5a
  6448. move.l a1,($0002,a2)
  6449. L00ac5a:
  6450. rts
  6451. L00ac5c:
  6452. moveq.l #$07,d1
  6453. lea.l ($000e,a1),a0
  6454. lea.l ($0024,a2),a3
  6455. L00ac66:
  6456. cmpm.b (a0)+,(a3)+
  6457. dbne.w d1,L00ac66
  6458. rts
  6459. L00ac6e:
  6460. moveq.l #$07,d1
  6461. lea.l ($000e,a1),a0
  6462. lea.l ($0024,a2),a3
  6463. L00ac78:
  6464. move.b (a0)+,(a3)+
  6465. dbra.w d1,L00ac78
  6466. rts
  6467. Call_FFLUSH_SET:
  6468. move.w (a6),d1
  6469. clr.l d0
  6470. move.b ($1cba),d0
  6471. cmp.w #$ffff,d1
  6472. beq.s L00ac92
  6473. move.b d1,($1cba)
  6474. L00ac92:
  6475. rts
  6476. Call_FFLUSH:
  6477. tst.b ($1cba)
  6478. beq.s L00acb8
  6479. bsr.w L00b6ba
  6480. bsr.w L008e26
  6481. move.l ($1c3c),d0
  6482. L00aca6:
  6483. movea.l d0,a0
  6484. tst.w ($000a,a0)
  6485. bne.s L00acb2
  6486. bsr.w L00d862
  6487. L00acb2:
  6488. move.l ($0006,a0),d0
  6489. bpl.s L00aca6
  6490. L00acb8:
  6491. clr.l d0
  6492. rts
  6493. L00acbc:
  6494. movem.l d2/a2,-(sp)
  6495. movea.l a1,a2
  6496. moveq.l #$01,d2
  6497. bsr.w L00cb46
  6498. movem.l (sp)+,d2/a2
  6499. rts
  6500. L00acce:
  6501. move.b ($000b,a1),d0
  6502. and.b #$18,d0
  6503. bne.s L00ad04
  6504. L00acd8:
  6505. move.b ($000b,a1),d0
  6506. and.b #$05,d0
  6507. bne.s L00ad04
  6508. movem.l d1-d7/a0-a6,-(sp)
  6509. move.b #$e5,(a1)
  6510. move.w ($001a,a1),d7
  6511. rol.w #8,d7
  6512. bsr.w L00b7d2
  6513. clr.l d0
  6514. move.w d7,d0
  6515. beq.s L00acfe
  6516. bsr.w L00ccde
  6517. L00acfe:
  6518. movem.l (sp)+,d1-d7/a0-a6
  6519. rts
  6520. L00ad04:
  6521. moveq.l #$ed,d0
  6522. rts
  6523. Call_VERIFY:
  6524. move.w (a6),($1c10)
  6525. rts
  6526. Call_VERIFYG:
  6527. clr.l d0
  6528. move.w ($1c10),d0
  6529. rts
  6530. Call_NAMESTS:
  6531. movea.l (a6)+,a1
  6532. movea.l (a6),a2
  6533. bsr.w L00ad68
  6534. bmi.s L00ad36
  6535. movea.l (a6),a1
  6536. move.b ($0001,a1),d0
  6537. bsr.w L00a728
  6538. move.b d0,($0001,a1)
  6539. addq.l #2,a1
  6540. bsr.w L00a7d6
  6541. clr.l d0
  6542. L00ad36:
  6543. rts
  6544. Call_NAMECK:
  6545. movea.l (a6)+,a1
  6546. movea.l (a6),a2
  6547. bsr.w L00ad90
  6548. bmi.s L00ad62
  6549. movea.l (a6),a1
  6550. clr.l d0
  6551. move.b (a1)+,d0
  6552. move.l d0,-(sp)
  6553. move.b (a1),d0
  6554. bsr.w L00a728
  6555. add.b #$41,d0 ;'A'
  6556. move.b d0,(-$0001,a1)
  6557. move.b #$3a,(a1)+ ;':'
  6558. bsr.w L00a7d6
  6559. move.l (sp)+,d0
  6560. L00ad62:
  6561. rts
  6562. L00ad64:
  6563. moveq.l #$3f,d0 ;'?'
  6564. bra.s L00ad6a
  6565. L00ad68:
  6566. moveq.l #$20,d0 ;' '
  6567. L00ad6a:
  6568. move.b d0,(L00f1b3)
  6569. L00ad70:
  6570. movem.l d1-d2/a0-a1/a3-a4/a6,-(sp)
  6571. lea.l (-$005a,sp),sp
  6572. movea.l sp,a4
  6573. L00ad7a:
  6574. bsr.w L00a800
  6575. bmi.s L00ad86
  6576. movea.l sp,a1
  6577. bsr.w L00ae1e
  6578. L00ad86:
  6579. lea.l ($005a,sp),sp
  6580. movem.l (sp)+,d1-d2/a0-a1/a3-a4/a6
  6581. rts
  6582. L00ad90:
  6583. movem.l d1-d2/a0-a1/a3-a4/a6,-(sp)
  6584. move.b #$20,(L00f1b3) ;' '
  6585. lea.l (-$005a,sp),sp
  6586. movea.l sp,a4
  6587. bsr.w L00a800
  6588. bmi.s L00ae14
  6589. movea.l sp,a1
  6590. clr.b (L00f1b2)
  6591. bsr.w L00ae1e
  6592. tst.l d0
  6593. bmi.s L00ae14
  6594. lea.l ($004b,a2),a3
  6595. move.b (a3)+,d1
  6596. rol.l #8,d1
  6597. move.b (a3)+,d1
  6598. rol.l #8,d1
  6599. move.b (a3)+,d1
  6600. rol.l #8,d1
  6601. lea.l ($0043,a2),a3
  6602. moveq.l #$07,d2
  6603. L00adce:
  6604. cmpi.b #$20,(a3) ;' '
  6605. beq.s L00adf0
  6606. addq.l #1,a3
  6607. dbra.w d2,L00adce
  6608. lea.l ($004e,a2),a4
  6609. moveq.l #$09,d2
  6610. L00ade0:
  6611. move.b (a4)+,d0
  6612. beq.s L00adf0
  6613. cmp.b #$20,d0 ;' '
  6614. beq.s L00adf0
  6615. move.b d0,(a3)+
  6616. dbra.w d2,L00ade0
  6617. L00adf0:
  6618. clr.b (a3)
  6619. lea.l ($0056,a2),a3
  6620. tst.b (L00f1b2)
  6621. beq.s L00ae12
  6622. move.b #$2e,(a3)+ ;'.'
  6623. moveq.l #$02,d2
  6624. L00ae04:
  6625. rol.l #8,d1
  6626. cmp.b #$20,d1 ;' '
  6627. beq.s L00ae12
  6628. move.b d1,(a3)+
  6629. dbra.w d2,L00ae04
  6630. L00ae12:
  6631. clr.b (a3)
  6632. L00ae14:
  6633. lea.l ($005a,sp),sp
  6634. movem.l (sp)+,d1-d2/a0-a1/a3-a4/a6
  6635. rts
  6636. L00ae1e:
  6637. clr.b (a2)
  6638. move.b (a1),d0
  6639. beq.s L00ae40
  6640. cmpi.b #$3a,($0001,a1) ;':'
  6641. bne.s L00ae40
  6642. or.b #$20,d0
  6643. sub.b #$61,d0 ;'a'
  6644. cmp.b #$1a,d0
  6645. bcc.w L00aed2
  6646. addq.l #2,a1
  6647. bra.s L00ae44
  6648. L00ae40:
  6649. move.b ($1c15),d0
  6650. L00ae44:
  6651. bsr.w L00a70c
  6652. move.b d0,d1
  6653. bsr.w L00a792
  6654. bmi.w L00aed2
  6655. movea.l d0,a4
  6656. move.b d1,($0001,a2)
  6657. lea.l ($0002,a2),a3
  6658. cmpi.b #$09,(a1)
  6659. beq.s L00ae86
  6660. movem.l a0-a1,-(sp)
  6661. movea.l a4,a0
  6662. movea.l a3,a1
  6663. moveq.l #$09,d1
  6664. move.b d1,(a1)+
  6665. bsr.w L00a768
  6666. cmp.b (-$0002,a1),d1
  6667. beq.s L00ae7e
  6668. move.b d1,(-$0001,a1)
  6669. clr.b (a1)+
  6670. L00ae7e:
  6671. lea.l (-$0001,a1),a3
  6672. movem.l (sp)+,a0-a1
  6673. L00ae86:
  6674. clr.l d2
  6675. move.l a1,d1
  6676. L00ae8a:
  6677. move.b (a1)+,d0
  6678. beq.s L00ae98
  6679. cmp.b #$09,d0
  6680. bne.s L00ae8a
  6681. move.l a1,d2
  6682. bra.s L00ae8a
  6683. L00ae98:
  6684. movea.l d1,a1
  6685. lea.l ($0002,a2),a0
  6686. tst.l d2
  6687. beq.w L00f20c
  6688. sub.l a1,d2
  6689. move.b (a1)+,d0
  6690. cmp.b #$09,d0
  6691. bne.s L00aeb8
  6692. move.b #$09,(a3)+
  6693. subq.w #1,d2
  6694. beq.s L00aebe
  6695. move.b (a1)+,d0
  6696. L00aeb8:
  6697. bsr.w L00f1f6
  6698. bmi.s L00aed4
  6699. L00aebe:
  6700. clr.b (a3)
  6701. move.l a3,d0
  6702. sub.l a0,d0
  6703. cmp.l #$0000003f,d0
  6704. bcs.w L00f20c
  6705. moveq.l #$f3,d0
  6706. rts
  6707. L00aed2:
  6708. moveq.l #$f1,d0
  6709. L00aed4:
  6710. rts
  6711. Call_IOCTRL:
  6712. move.w (a6)+,d0
  6713. cmp.w #$000e,d0
  6714. bcc.s L00aef2
  6715. add.w d0,d0
  6716. add.w d0,d0
  6717. lea.l (L00aef6),a0
  6718. movea.l (a0,d0.w),a0
  6719. jsr (a0)
  6720. rts
  6721. L00aef0:
  6722. addq.l #4,sp
  6723. L00aef2:
  6724. moveq.l #$f2,d0
  6725. rts
  6726. L00aef6:
  6727. .dc.l L00af2e
  6728. .dc.l L00af58
  6729. .dc.l L00af80
  6730. .dc.l L00af84
  6731. .dc.l L00afb0
  6732. .dc.l L00afb4
  6733. .dc.l L00afe4
  6734. .dc.l L00afe8
  6735. .dc.l L00aef0
  6736. .dc.l L00b01c
  6737. .dc.l L00af2e
  6738. .dc.l L00b04c
  6739. .dc.l L00b058
  6740. .dc.l L00b0a0
  6741. L00af2e:
  6742. move.w (a6),d0
  6743. bsr.w L00a9d8
  6744. tst.l d0
  6745. bmi.s L00af56
  6746. movea.l ($0002,a0),a1
  6747. clr.l d0
  6748. move.b ($0001,a0),d0
  6749. btst.l #$07,d0
  6750. bne.s L00af4c
  6751. movea.l ($0002,a1),a1
  6752. L00af4c:
  6753. move.w ($0004,a1),d1
  6754. and.w #$ff00,d1
  6755. or.w d1,d0
  6756. L00af56:
  6757. rts
  6758. L00af58:
  6759. move.w (a6)+,d0
  6760. bsr.w L00a9d8
  6761. tst.l d0
  6762. bmi.s L00af7e
  6763. clr.l d0
  6764. move.b ($0001,a0),d0
  6765. btst.l #$07,d0
  6766. beq.s L00af7e
  6767. and.b #$df,d0
  6768. move.w (a6),d1
  6769. and.w #$0020,d1
  6770. or.b d1,d0
  6771. move.b d0,($0001,a0)
  6772. L00af7e:
  6773. rts
  6774. L00af80:
  6775. moveq.l #$03,d7
  6776. bra.s L00af86
  6777. L00af84:
  6778. moveq.l #$0c,d7
  6779. L00af86:
  6780. move.w (a6)+,d0
  6781. bsr.w L00a9d8
  6782. tst.l d0
  6783. bmi.s L00afe2
  6784. movea.l ($0002,a0),a1
  6785. clr.l d0
  6786. move.b ($0001,a0),d0
  6787. btst.l #$07,d0
  6788. beq.s L00afbe
  6789. btst.b #$06,($0004,a1)
  6790. beq.s L00afe0
  6791. clr.b d1
  6792. clr.b d2
  6793. bra.w L00cae0
  6794. L00afb0:
  6795. moveq.l #$03,d7
  6796. bra.s L00afb6
  6797. L00afb4:
  6798. moveq.l #$0c,d7
  6799. L00afb6:
  6800. bsr.w L00a8ba
  6801. bmi.s L00afe2
  6802. movea.l d0,a1
  6803. L00afbe:
  6804. movea.l a1,a2
  6805. movea.l ($0002,a2),a1
  6806. btst.b #$06,($0004,a1)
  6807. beq.s L00afe0
  6808. btst.b #$05,($0004,a1)
  6809. bne.s L00afe0
  6810. move.b ($0001,a2),d1
  6811. move.b ($001a,a2),d2
  6812. bra.w L00cae0
  6813. L00afe0:
  6814. moveq.l #$ef,d0
  6815. L00afe2:
  6816. rts
  6817. L00afe4:
  6818. moveq.l #$06,d7
  6819. bra.s L00afea
  6820. L00afe8:
  6821. moveq.l #$0a,d7
  6822. L00afea:
  6823. move.w (a6),d0
  6824. bsr.w L00a9d8
  6825. tst.l d0
  6826. bmi.s L00b01a
  6827. movea.l ($0002,a0),a1
  6828. clr.l d0
  6829. clr.w d1
  6830. move.b ($0001,a0),d0
  6831. btst.l #$07,d0
  6832. bne.s L00b014
  6833. btst.l #$05,d0
  6834. bne.s L00b018
  6835. move.b ($0001,a1),d1
  6836. movea.l ($0002,a1),a1
  6837. L00b014:
  6838. bra.w L00cb0a
  6839. L00b018:
  6840. moveq.l #$ff,d0
  6841. L00b01a:
  6842. rts
  6843. L00b01c:
  6844. bsr.w L00a780
  6845. move.w d0,d1
  6846. bsr.w L00a792
  6847. bmi.s L00b04a
  6848. movea.l d0,a1
  6849. movea.l ($0046,a1),a1
  6850. clr.l d0
  6851. move.b d1,d0
  6852. movea.l ($0002,a1),a1
  6853. move.w ($0004,a1),d1
  6854. and.w #$ff00,d1
  6855. or.w d1,d0
  6856. btst.l #$0d,d0
  6857. beq.s L00b04a
  6858. bset.l #$05,d0
  6859. L00b04a:
  6860. rts
  6861. L00b04c:
  6862. move.w (a6)+,($1c0c)
  6863. move.w (a6),($1c0e)
  6864. clr.l d0
  6865. rts
  6866. L00b058:
  6867. move.w (a6)+,d0
  6868. bsr.w L00a9d8
  6869. tst.l d0
  6870. bmi.s L00b0d8
  6871. movea.l ($0002,a0),a1
  6872. btst.b #$07,($0001,a0)
  6873. beq.s L00b0a8
  6874. clr.l d1
  6875. clr.l d2
  6876. L00b072:
  6877. moveq.l #$13,d0
  6878. lea.l (-$001a,sp),sp
  6879. movea.l sp,a5
  6880. move.b #$1a,($0000.w,a5)
  6881. move.b d1,($0001,a5)
  6882. move.b d0,($0002,a5)
  6883. move.b d2,($000d,a5)
  6884. move.w (a6)+,($0012,a5)
  6885. move.l (a6),($000e,a5)
  6886. bsr.w L00cba6
  6887. clr.l d0
  6888. lea.l ($001a,sp),sp
  6889. rts
  6890. L00b0a0:
  6891. bsr.w L00a8ba
  6892. bmi.s L00b0d8
  6893. movea.l d0,a1
  6894. L00b0a8:
  6895. movea.l a1,a2
  6896. movea.l ($0002,a2),a1
  6897. btst.b #$06,($0005,a1)
  6898. beq.s L00b0d6
  6899. btst.b #$05,($0004,a1)
  6900. bne.s L00b0c8
  6901. move.b ($0001,a2),d1
  6902. move.b ($001a,a2),d2
  6903. bra.s L00b072
  6904. L00b0c8:
  6905. movea.l a2,a0
  6906. move.w (a6)+,d2
  6907. swap.w d2
  6908. move.l (a6),d1
  6909. bsr.w L00d984
  6910. rts
  6911. L00b0d6:
  6912. moveq.l #$ef,d0
  6913. L00b0d8:
  6914. rts
  6915. Call_DISKRED:
  6916. movea.l (a6)+,a2
  6917. L00b0dc:
  6918. bsr.w L00a8ba
  6919. bmi.s L00b106
  6920. cmpi.b #$40,($0045,a0) ;'@'
  6921. bne.s L00b104
  6922. movea.l d0,a0
  6923. move.l a2,d2
  6924. bmi.s L00b108
  6925. cmpi.w #$0400,($000a,a0)
  6926. bne.s L00b104
  6927. clr.l d1
  6928. clr.l d2
  6929. move.w (a6)+,d1
  6930. move.w (a6),d2
  6931. bra.w L00b7bc
  6932. L00b104:
  6933. moveq.l #$f1,d0
  6934. L00b106:
  6935. rts
  6936. L00b108:
  6937. move.l (a6)+,d1
  6938. move.l (a6),d2
  6939. tst.w ($000a,a0)
  6940. beq.w L00cb52
  6941. bra.w L00b7bc
  6942. Call_DISKWRT:
  6943. movea.l (a6)+,a2
  6944. L00b11a:
  6945. bsr.w L00a8ba
  6946. bmi.s L00b148
  6947. cmpi.b #$40,($0045,a0) ;'@'
  6948. bne.s L00b146
  6949. movea.l d0,a0
  6950. move.l a2,d2
  6951. bmi.s L00b14a
  6952. cmpi.w #$0400,($000a,a0)
  6953. bne.s L00b146
  6954. clr.l d1
  6955. clr.l d2
  6956. bsr.w L00cbe2
  6957. move.w (a6)+,d1
  6958. move.w (a6),d2
  6959. bra.w L00b7a6
  6960. L00b146:
  6961. moveq.l #$f1,d0
  6962. L00b148:
  6963. rts
  6964. L00b14a:
  6965. move.l (a6)+,d1
  6966. move.l (a6),d2
  6967. tst.w ($000a,a0)
  6968. beq.w L00cb32
  6969. bra.w L00b7a6
  6970. Call_FATCHK:
  6971. movea.l (a6)+,a1
  6972. moveq.l #$fe,d7
  6973. move.l (a6)+,d6
  6974. bpl.s L00b16c
  6975. and.l #$00ffffff,d6
  6976. clr.l d7
  6977. move.w (a6),d7
  6978. L00b16c:
  6979. movea.l d6,a6
  6980. lea.l (-$0058,sp),sp
  6981. movea.l sp,a2
  6982. bsr.w L00b352
  6983. tst.l d0
  6984. bmi.w L00b20a
  6985. tst.b (a2)
  6986. bne.w L00b208
  6987. subq.w #2,d7
  6988. bcs.s L00b200
  6989. clr.l d0
  6990. move.b ($0001,a2),d0
  6991. bsr.w L00a8be
  6992. bmi.s L00b20a
  6993. movea.l a0,a1
  6994. movea.l d0,a0
  6995. bsr.w L00b24e
  6996. bmi.s L00b20a
  6997. clr.l d0
  6998. move.b ($0001,a2),d0
  6999. bsr.w L00a728
  7000. move.w d0,(a6)
  7001. addq.w #1,(a6)+
  7002. tst.w ($000a,a0)
  7003. beq.s L00b204
  7004. bsr.w L00bcec
  7005. tst.l d0
  7006. bmi.s L00b20a
  7007. move.w #$0002,d3
  7008. move.w ($001a,a1),d1
  7009. beq.s L00b1f4
  7010. ror.w #8,d1
  7011. L00b1c6:
  7012. move.w d1,d2
  7013. bsr.w L00b22e
  7014. bsr.s L00b210
  7015. bcs.s L00b200
  7016. move.w d2,d1
  7017. move.w #$ffff,d2
  7018. bsr.w L00cc94
  7019. tst.l d0
  7020. bmi.s L00b20a
  7021. clr.l d1
  7022. move.w d2,d1
  7023. move.b ($000d,a0),d2
  7024. asl.l d2,d1
  7025. bsr.s L00b210
  7026. bcs.s L00b200
  7027. move.w d0,d1
  7028. cmp.w #$ffff,d1
  7029. bne.s L00b1c6
  7030. L00b1f4:
  7031. clr.l d1
  7032. bsr.s L00b210
  7033. bcs.s L00b200
  7034. clr.l d0
  7035. move.w d3,d0
  7036. bra.s L00b20a
  7037. L00b200:
  7038. moveq.l #$f2,d0
  7039. bra.s L00b20a
  7040. L00b204:
  7041. moveq.l #$f1,d0
  7042. bra.s L00b20a
  7043. L00b208:
  7044. moveq.l #$f3,d0
  7045. L00b20a:
  7046. lea.l ($0058,sp),sp
  7047. rts
  7048. L00b210:
  7049. tst.l d7
  7050. bmi.s L00b21c
  7051. move.l d1,(a6)+
  7052. addq.w #4,d3
  7053. subq.w #4,d7
  7054. rts
  7055. L00b21c:
  7056. cmp.l #$00010000,d1
  7057. bcs.s L00b226
  7058. moveq.l #$ff,d1
  7059. L00b226:
  7060. move.w d1,(a6)+
  7061. addq.w #2,d3
  7062. subq.w #2,d7
  7063. rts
  7064. L00b22e:
  7065. clr.l d0
  7066. move.w d1,d0
  7067. beq.s L00b246
  7068. subq.w #2,d0
  7069. move.b ($000d,a0),d1
  7070. lsl.l d1,d0
  7071. clr.l d1
  7072. move.w ($0014,a0),d1
  7073. add.l d0,d1
  7074. rts
  7075. L00b246:
  7076. clr.l d1
  7077. move.w ($0018,a0),d1
  7078. rts
  7079. L00b24e:
  7080. movem.l d1-d2/a1/a3-a5,-(sp)
  7081. L00b252:
  7082. cmpi.b #$50,($0045,a1) ;'P'
  7083. bne.s L00b29c
  7084. move.b (a1),d0
  7085. and.b #$1f,d0
  7086. subq.b #1,d0
  7087. move.b d0,($0001,a2)
  7088. move.w ($004c,a1),d1
  7089. lea.l (a1,d1.w),a3
  7090. subq.w #2,d1
  7091. beq.s L00b29c
  7092. lea.l ($0002,a2),a4
  7093. clr.l d2
  7094. L00b278:
  7095. addq.w #1,d2
  7096. tst.b (a4)+
  7097. bne.s L00b278
  7098. move.w d2,d0
  7099. add.w d1,d0
  7100. cmp.w #$0041,d0 ;'A'
  7101. bcc.s L00b2f2
  7102. lea.l (a4,d1.w),a5
  7103. subq.w #1,d2
  7104. L00b28e:
  7105. move.b -(a4),-(a5)
  7106. dbra.w d2,L00b28e
  7107. subq.w #1,d1
  7108. L00b296:
  7109. move.b -(a3),-(a5)
  7110. dbra.w d1,L00b296
  7111. L00b29c:
  7112. move.w (a2),d2
  7113. move.b d2,d0
  7114. add.b #$41,d0 ;'A'
  7115. move.b d0,(a2)
  7116. move.b #$3a,($0001,a2) ;':'
  7117. movea.l ($1c38),a4
  7118. clr.w d1
  7119. move.b ($1c73),d1
  7120. L00b2b6:
  7121. bsr.s L00b2fa
  7122. beq.s L00b2c8
  7123. lea.l ($004e,a4),a4
  7124. dbra.w d1,L00b2b6
  7125. move.w d2,(a2)
  7126. clr.l d0
  7127. bra.s L00b2f4
  7128. L00b2c8:
  7129. move.w #$ffff,($004a,a1)
  7130. movea.l ($0046,a4),a0
  7131. bsr.w L00d428
  7132. move.b ($0000.w,a0),d2
  7133. move.w ($004c,a4),d1
  7134. lea.l ($0002,a2),a5
  7135. lea.l (a2,d1.w),a3
  7136. L00b2e6:
  7137. move.b (a3)+,(a5)+
  7138. bne.s L00b2e6
  7139. movea.w a4,a1
  7140. move.w d2,(a2)
  7141. bra.w L00b252
  7142. L00b2f2:
  7143. moveq.l #$f3,d0
  7144. L00b2f4:
  7145. movem.l (sp)+,d1-d2/a1/a3-a5
  7146. rts
  7147. L00b2fa:
  7148. cmpi.b #$60,($0045,a4) ;'`'
  7149. bne.s L00b320
  7150. movem.l d0-d2/a4-a5,-(sp)
  7151. movea.l a4,a5
  7152. moveq.l #$fe,d0
  7153. L00b30a:
  7154. addq.l #1,d0
  7155. tst.b (a5)+
  7156. bne.s L00b30a
  7157. movea.l a2,a5
  7158. bsr.w L00f27c
  7159. bne.s L00b31c
  7160. cmpi.b #$09,(a5)
  7161. L00b31c:
  7162. movem.l (sp)+,d0-d2/a4-a5
  7163. L00b320:
  7164. rts
  7165. L00b322:
  7166. sub.b #$20,d0 ;' '
  7167. move.b d0,(-$0001,a0)
  7168. L00b32a:
  7169. move.b (a0)+,d0
  7170. beq.s L00b350
  7171. cmp.b #$61,d0 ;'a'
  7172. bcs.s L00b32a
  7173. cmp.b #$7b,d0 ;'{'
  7174. bcs.s L00b322
  7175. cmp.b #$80,d0
  7176. bcs.s L00b32a
  7177. cmp.b #$a0,d0
  7178. bcs.s L00b34c
  7179. cmp.b #$e0,d0
  7180. bcs.s L00b32a
  7181. L00b34c:
  7182. move.b (a0)+,d0
  7183. bne.s L00b32a
  7184. L00b350:
  7185. rts
  7186. L00b352:
  7187. movem.l a0,-(sp)
  7188. bsr.w L00ad68
  7189. move.l d0,-(sp)
  7190. bmi.s L00b36a
  7191. bsr.w L00f1b4
  7192. bmi.s L00b36a
  7193. move.l #$fffffff3,(sp)
  7194. L00b36a:
  7195. move.l (sp)+,d0
  7196. movem.l (sp)+,a0
  7197. rts
  7198. L00b372:
  7199. clr.l d0
  7200. move.w ($0014,a0),d0
  7201. sub.l d0,d1
  7202. bcs.s L00b386
  7203. move.b ($000d,a0),d0
  7204. lsr.l d0,d1
  7205. addq.l #2,d1
  7206. rts
  7207. L00b386:
  7208. clr.l d1
  7209. rts
  7210. L00b38a:
  7211. bsr.w L00e8b2
  7212. bpl.s L00b3a8
  7213. move.w ($0002,a2),d0
  7214. cmp.w #$0900,d0
  7215. bne.s L00b3ac
  7216. clr.l d1
  7217. move.w ($0018,a0),d1
  7218. move.w ($0014,a0),d2
  7219. sub.w d1,d2
  7220. subq.w #1,d2
  7221. L00b3a8:
  7222. clr.l d0
  7223. rts
  7224. L00b3ac:
  7225. movem.l a4-a5,-(sp)
  7226. clr.w d2
  7227. move.b ($000c,a0),d2
  7228. move.w ($004a,a1),d1
  7229. beq.s L00b3e0
  7230. cmp.w #$ffff,d1
  7231. beq.s L00b3e0
  7232. bsr.w L00b22e
  7233. lea.l ($0002,a2),a5
  7234. lea.l ($0002,a1),a4
  7235. L00b3ce:
  7236. move.b (a4)+,d0
  7237. beq.s L00b3d8
  7238. cmp.b (a5)+,d0
  7239. beq.s L00b3ce
  7240. bra.s L00b3e0
  7241. L00b3d8:
  7242. move.b (a5)+,d0
  7243. cmp.b #$09,d0
  7244. beq.s L00b3f2
  7245. L00b3e0:
  7246. lea.l ($0003,a2),a5
  7247. clr.l d1
  7248. move.w ($0018,a0),d1
  7249. move.w ($0014,a0),d2
  7250. sub.w d1,d2
  7251. subq.w #1,d2
  7252. L00b3f2:
  7253. bsr.s L00b40a
  7254. bmi.s L00b404
  7255. bne.s L00b3f2
  7256. clr.l d2
  7257. move.b ($000c,a0),d2
  7258. bsr.w L00e8c8
  7259. clr.l d0
  7260. L00b404:
  7261. movem.l (sp)+,a4-a5
  7262. rts
  7263. L00b40a:
  7264. movem.l d3/a1-a2,-(sp)
  7265. lea.l (-$0018,sp),sp
  7266. movea.l sp,a1
  7267. clr.l d0
  7268. tst.b (a5)
  7269. beq.s L00b46a
  7270. move.b #$09,(a1)+
  7271. moveq.l #$15,d3
  7272. L00b420:
  7273. move.b (a5)+,d0
  7274. cmp.b #$09,d0
  7275. beq.s L00b432
  7276. move.b d0,(a1)+
  7277. dbra.w d3,L00b420
  7278. moveq.l #$f3,d0
  7279. bra.s L00b46a
  7280. L00b432:
  7281. clr.b (a1)
  7282. movea.l sp,a1
  7283. lea.l (-$0058,sp),sp
  7284. movea.l sp,a2
  7285. movem.l d1-d2/a0-a4,-(sp)
  7286. bsr.w L00ae1e
  7287. movem.l (sp)+,d1-d2/a0-a4
  7288. tst.l d0
  7289. bmi.s L00b466
  7290. lea.l ($0043,sp),a2
  7291. bsr.w L00b476
  7292. bmi.s L00b466
  7293. move.b ($000b,a1),d0
  7294. and.b #$10,d0
  7295. beq.s L00b464
  7296. moveq.l #$01,d0
  7297. bra.s L00b466
  7298. L00b464:
  7299. moveq.l #$fd,d0
  7300. L00b466:
  7301. lea.l ($0058,sp),sp
  7302. L00b46a:
  7303. lea.l ($0018,sp),sp
  7304. movem.l (sp)+,d3/a1-a2
  7305. tst.l d0
  7306. rts
  7307. L00b476:
  7308. bsr.s L00b48c
  7309. bmi.s L00b48a
  7310. beq.s L00b482
  7311. bsr.s L00b4de
  7312. bmi.s L00b48a
  7313. bra.s L00b476
  7314. L00b482:
  7315. clr.w d2
  7316. move.b ($000c,a0),d2
  7317. moveq.l #$01,d0
  7318. L00b48a:
  7319. rts
  7320. L00b48c:
  7321. movem.l d2-d3/a2,-(sp)
  7322. move.l d1,-(sp)
  7323. bsr.w L00b71a
  7324. move.w ($000a,a0),d3
  7325. lsr.w #5,d3
  7326. subq.w #1,d3
  7327. L00b49e:
  7328. move.b (a1),d0
  7329. beq.s L00b4d2
  7330. cmp.b #$e5,d0
  7331. beq.s L00b4b6
  7332. cmp.b #$05,d0
  7333. bne.s L00b4b0
  7334. moveq.l #$e5,d0
  7335. L00b4b0:
  7336. bsr.w L00f1ca
  7337. beq.s L00b4c2
  7338. L00b4b6:
  7339. lea.l ($0020,a1),a1
  7340. dbra.w d3,L00b49e
  7341. moveq.l #$01,d1
  7342. bra.s L00b4d4
  7343. L00b4c2:
  7344. addq.l #4,sp
  7345. move.w ($001a,a1),d1
  7346. rol.w #8,d1
  7347. bsr.w L00b22e
  7348. clr.l d0
  7349. bra.s L00b4d8
  7350. L00b4d2:
  7351. moveq.l #$fd,d0
  7352. L00b4d4:
  7353. movem.l (sp)+,d1
  7354. L00b4d8:
  7355. movem.l (sp)+,d2-d3/a2
  7356. rts
  7357. L00b4de:
  7358. addq.l #1,d1
  7359. dbra.w d2,L00b4f0
  7360. subq.l #1,d1
  7361. bsr.s L00b4f4
  7362. bmi.s L00b4f2
  7363. clr.w d2
  7364. move.b ($000c,a0),d2
  7365. L00b4f0:
  7366. clr.l d0
  7367. L00b4f2:
  7368. rts
  7369. L00b4f4:
  7370. bsr.w L00b372
  7371. bne.s L00b4fe
  7372. L00b4fa:
  7373. moveq.l #$fd,d0
  7374. rts
  7375. L00b4fe:
  7376. move.w d1,d0
  7377. bsr.w L00cd26
  7378. tst.w d0
  7379. beq.s L00b518
  7380. cmp.w #$ffff,d0
  7381. beq.s L00b4fa
  7382. move.w d0,d1
  7383. bsr.w L00b22e
  7384. tst.l d1
  7385. rts
  7386. L00b518:
  7387. move.w #$1005,d7
  7388. trap #14
  7389. bra.s L00b518
  7390. L00b520:
  7391. movem.l a0-a1,-(sp)
  7392. move.l a0,($0002,a3)
  7393. clr.l ($0006,a3)
  7394. move.b d0,($000e,a3)
  7395. move.b d1,($002f,a3)
  7396. move.b ($0001,a2),d0
  7397. and.w #$001f,d0
  7398. tst.w ($000a,a0)
  7399. bne.s L00b546
  7400. or.w #$0020,d0
  7401. L00b546:
  7402. or.w #$0100,d0
  7403. move.w d0,(a3)
  7404. lea.l ($0043,a2),a0
  7405. lea.l ($0024,a3),a1
  7406. moveq.l #$07,d1
  7407. L00b556:
  7408. move.b (a0)+,(a1)+
  7409. dbra.w d1,L00b556
  7410. lea.l ($004e,a2),a0
  7411. lea.l ($0030,a3),a1
  7412. moveq.l #$09,d1
  7413. L00b566:
  7414. move.b (a0)+,(a1)+
  7415. dbra.w d1,L00b566
  7416. lea.l ($004b,a2),a0
  7417. lea.l ($002c,a3),a1
  7418. moveq.l #$02,d1
  7419. L00b576:
  7420. move.b (a0)+,(a1)+
  7421. dbra.w d1,L00b576
  7422. lea.l ($000f,a3),a0
  7423. clr.b (a0)+
  7424. clr.l (a0)+
  7425. clr.l (a0)+
  7426. clr.l (a0)+
  7427. clr.l (a0)+
  7428. clr.l (a0)
  7429. lea.l ($003a,a3),a0
  7430. bsr.w L00a400
  7431. move.w d0,(a0)+
  7432. bsr.w L00a3b2
  7433. move.w d0,(a0)+
  7434. clr.w (a0)+
  7435. clr.l (a0)+
  7436. movem.l (sp)+,a0-a1
  7437. rts
  7438. Call_GETDPB:
  7439. bsr.w L00a780
  7440. move.w d0,d1
  7441. bsr.w L00a792
  7442. bmi.s L00b628
  7443. movea.l d0,a0
  7444. cmpi.b #$40,($0045,a0) ;'@'
  7445. bne.s L00b626
  7446. movea.l ($0046,a0),a1
  7447. movea.l (a6),a2
  7448. move.w (a1)+,(a2)
  7449. move.w d1,d0
  7450. bsr.w L00a728
  7451. move.b d0,(a2)
  7452. move.l (a1)+,($0012,a2)
  7453. move.l (a1)+,($0018,a2)
  7454. tst.w (a1)
  7455. beq.s L00b634
  7456. lea.l ($0002,a2),a3
  7457. move.w #$000f,d0
  7458. L00b5e0:
  7459. move.b (a1)+,(a3)+
  7460. dbra.w d0,L00b5e0
  7461. move.w (a1)+,($0016,a2)
  7462. clr.l d0
  7463. cmpi.w #$0002,(a1)
  7464. bne.s L00b5f4
  7465. subq.b #1,d0
  7466. L00b5f4:
  7467. move.b d0,($0017,a2)
  7468. move.w ($004a,a0),($001c,a2)
  7469. L00b5fe:
  7470. lea.l ($001e,a2),a1
  7471. movem.l a1,-(sp)
  7472. moveq.l #$09,d1
  7473. move.b d1,(a1)+
  7474. bsr.w L00a768
  7475. cmp.b (-$0002,a1),d1
  7476. beq.s L00b61a
  7477. move.b d1,(-$0001,a1)
  7478. clr.b (a1)
  7479. L00b61a:
  7480. movem.l (sp)+,a1
  7481. bsr.w L00a7d6
  7482. clr.l d0
  7483. rts
  7484. L00b626:
  7485. moveq.l #$f1,d0
  7486. L00b628:
  7487. movea.l (a6),a2
  7488. add.w #$0041,d1
  7489. move.w d1,($0002,a2)
  7490. rts
  7491. L00b634:
  7492. movea.l ($0046,a0),a1
  7493. lea.l ($0002,a2),a3
  7494. bsr.w L00d920
  7495. tst.l d0
  7496. bmi.s L00b628
  7497. move.b d1,d0
  7498. add.b #$61,d0 ;'a'
  7499. move.b d0,($0016,a2)
  7500. clr.b ($0017,a2)
  7501. clr.w ($001c,a2)
  7502. bra.s L00b5fe
  7503. L00b658:
  7504. movem.l d0-d1,-(sp)
  7505. moveq.l #$14,d1
  7506. move.b (a4)+,d0
  7507. cmp.b #$e5,d0
  7508. bne.s L00b66a
  7509. move.b #$05,d0
  7510. L00b66a:
  7511. move.b d0,(a1)+
  7512. L00b66c:
  7513. move.b (a4)+,(a1)+
  7514. dbra.w d1,L00b66c
  7515. moveq.l #$02,d1
  7516. L00b674:
  7517. move.w (a4)+,d0
  7518. rol.w #8,d0
  7519. move.w d0,(a1)+
  7520. dbra.w d1,L00b674
  7521. move.l (a4),d1
  7522. rol.w #8,d1
  7523. swap.w d1
  7524. rol.w #8,d1
  7525. move.l d1,(a1)+
  7526. movem.l (sp)+,d0-d1
  7527. rts
  7528. L00b68e:
  7529. .dc.l L00e9ba
  7530. L00b692:
  7531. jmp (L00cb5c)
  7532. jmp (L00cb46)
  7533. jmp (L00cd3e)
  7534. jmp (L00cd4c)
  7535. L00b6aa:
  7536. .dc.l $00000000
  7537. L00b6ae:
  7538. .dc.l $00000014
  7539. L00b6b2:
  7540. .dc.l $00000400,$00000000
  7541. L00b6ba:
  7542. movem.l a4-a5,-(sp)
  7543. bsr.w L00e858
  7544. bsr.w L00cc2c
  7545. movea.l (L00b68e,pc),a4
  7546. lea.l (L00b692,pc),a5
  7547. jsr ($000c,a4)
  7548. movem.l (sp)+,a4-a5
  7549. rts
  7550. L00b6d8:
  7551. movem.l d0/a4-a5,-(sp)
  7552. L00b6dc:
  7553. bsr.w L00cc44
  7554. movea.l (L00b68e,pc),a4
  7555. lea.l (L00b692,pc),a5
  7556. jsr ($0042,a4)
  7557. movem.l (sp)+,d0/a4-a5
  7558. rts
  7559. L00b6f2:
  7560. movem.l a4-a5,-(sp)
  7561. move.l a0,(L00b6aa)
  7562. move.l d2,(L00b6ae)
  7563. move.l d3,(L00b6b2)
  7564. movea.l (L00b68e,pc),a4
  7565. lea.l (L00b692,pc),a5
  7566. jsr ($0006,a4)
  7567. movem.l (sp)+,a4-a5
  7568. rts
  7569. L00b71a:
  7570. movem.l a4-a5,-(sp)
  7571. movea.l (L00b68e,pc),a4
  7572. lea.l (L00b692,pc),a5
  7573. jsr ($0018,a4)
  7574. movem.l (sp)+,a4-a5
  7575. rts
  7576. L00b730:
  7577. movem.l a4-a5,-(sp)
  7578. movea.l (L00b68e,pc),a4
  7579. lea.l (L00b692,pc),a5
  7580. jsr ($001e,a4)
  7581. movem.l (sp)+,a4-a5
  7582. rts
  7583. L00b746:
  7584. movem.l a4-a5,-(sp)
  7585. movea.l (L00b68e,pc),a4
  7586. lea.l (L00b692,pc),a5
  7587. jsr ($0012,a4)
  7588. movem.l (sp)+,a4-a5
  7589. rts
  7590. L00b75c:
  7591. movem.l a4-a5,-(sp)
  7592. tst.w ($000a,a0)
  7593. beq.s L00b78a
  7594. bsr.w L00e864
  7595. bsr.w L00cc38
  7596. movea.l (L00b68e,pc),a4
  7597. lea.l (L00b692,pc),a5
  7598. jsr ($0048,a4)
  7599. tst.b (L01120a)
  7600. beq.s L00b78a
  7601. clr.l ($001e,a0)
  7602. clr.l ($002a,a0)
  7603. L00b78a:
  7604. movem.l (sp)+,a4-a5
  7605. rts
  7606. L00b790:
  7607. movem.l a4-a5,-(sp)
  7608. movea.l (L00b68e,pc),a4
  7609. lea.l (L00b692,pc),a5
  7610. jsr ($0036,a4)
  7611. movem.l (sp)+,a4-a5
  7612. rts
  7613. L00b7a6:
  7614. movem.l a4-a5,-(sp)
  7615. movea.l (L00b68e,pc),a4
  7616. lea.l (L00b692,pc),a5
  7617. jsr ($0054,a4)
  7618. movem.l (sp)+,a4-a5
  7619. rts
  7620. L00b7bc:
  7621. movem.l a4-a5,-(sp)
  7622. movea.l (L00b68e,pc),a4
  7623. lea.l (L00b692,pc),a5
  7624. jsr ($004e,a4)
  7625. movem.l (sp)+,a4-a5
  7626. rts
  7627. L00b7d2:
  7628. movem.l a4-a5,-(sp)
  7629. movea.l (L00b68e,pc),a4
  7630. lea.l (L00b692,pc),a5
  7631. jsr ($0024,a4)
  7632. bra.s L00b814
  7633. L00b7e4:
  7634. movem.l a4-a5,-(sp)
  7635. movea.l (L00b68e,pc),a4
  7636. lea.l (L00b692,pc),a5
  7637. move.l ($0018,a3),d0
  7638. beq.s L00b7fe
  7639. movea.l d0,a1
  7640. jsr ($0030,a4)
  7641. beq.s L00b814
  7642. L00b7fe:
  7643. jsr ($0024,a4)
  7644. move.l a1,($0018,a3)
  7645. bra.s L00b814
  7646. L00b808:
  7647. movem.l a4-a5,-(sp)
  7648. movea.l (L00b68e,pc),a4
  7649. lea.l (L00b692,pc),a5
  7650. L00b814:
  7651. jsr ($003c,a4)
  7652. movem.l (sp)+,a4-a5
  7653. rts
  7654. L00b81e:
  7655. movem.l a4-a5,-(sp)
  7656. movea.l (L00b68e,pc),a4
  7657. lea.l (L00b692,pc),a5
  7658. move.l ($0018,a3),d0
  7659. beq.s L00b838
  7660. movea.l d0,a1
  7661. jsr ($0030,a4)
  7662. beq.s L00b840
  7663. L00b838:
  7664. jsr ($0024,a4)
  7665. move.l a1,($0018,a3)
  7666. L00b840:
  7667. clr.l d0
  7668. movem.l (sp)+,a4-a5
  7669. rts
  7670. L00b848:
  7671. clr.b (L011208)
  7672. L00b84e:
  7673. movem.l d2-d7/a2-a4,-(sp)
  7674. bsr.w L00b38a
  7675. bmi.s L00b8b4
  7676. tst.b (L01120a)
  7677. beq.s L00b87e
  7678. cmp.l ($001e,a0),d1
  7679. beq.s L00b876
  7680. move.l d1,($001e,a0)
  7681. move.l d1,($0024,a0)
  7682. move.w d2,($0022,a0)
  7683. move.w d2,($0028,a0)
  7684. L00b876:
  7685. move.l ($0024,a0),d1
  7686. move.w ($0028,a0),d2
  7687. L00b87e:
  7688. move.w ($000a,a0),d3
  7689. lsr.w #5,d3
  7690. subq.w #1,d3
  7691. L00b886:
  7692. bsr.w L00b71a
  7693. move.w d3,d6
  7694. L00b88c:
  7695. clr.l d0
  7696. move.b (a1),d0
  7697. beq.s L00b8ba
  7698. cmp.b #$e5,d0
  7699. beq.s L00b8ba
  7700. adda.l #$00000020,a1
  7701. dbra.w d6,L00b88c
  7702. bsr.s L00b8e2
  7703. bne.s L00b886
  7704. tst.b (L01120a)
  7705. beq.s L00b8b2
  7706. clr.l ($001e,a0)
  7707. L00b8b2:
  7708. moveq.l #$e8,d0
  7709. L00b8b4:
  7710. movem.l (sp)+,d2-d7/a2-a4
  7711. rts
  7712. L00b8ba:
  7713. tst.b (L01120a)
  7714. beq.s L00b8ca
  7715. move.l d1,($0024,a0)
  7716. move.w d2,($0028,a0)
  7717. L00b8ca:
  7718. sub.w d6,d3
  7719. tst.b (L011208)
  7720. bne.s L00b8dc
  7721. move.w d3,d4
  7722. lsl.w #5,d4
  7723. bsr.w L00e886
  7724. L00b8dc:
  7725. clr.l d0
  7726. move.b d3,d0
  7727. bra.s L00b8b4
  7728. L00b8e2:
  7729. move.w ($0014,a0),d0
  7730. cmp.w d0,d1
  7731. bcc.s L00b8f0
  7732. addq.w #1,d1
  7733. cmp.w d0,d1
  7734. rts
  7735. L00b8f0:
  7736. addq.l #1,d1
  7737. dbra.w d2,L00b902
  7738. subq.l #1,d1
  7739. bsr.s L00b906
  7740. beq.s L00b904
  7741. clr.w d2
  7742. move.b ($000c,a0),d2
  7743. L00b902:
  7744. tst.l d1
  7745. L00b904:
  7746. rts
  7747. L00b906:
  7748. bsr.w L00b372
  7749. move.w d1,d0
  7750. bsr.w L00cd26
  7751. tst.w d0
  7752. beq.w L00b518
  7753. cmp.w #$ffff,d0
  7754. beq.s L00b926
  7755. move.w d0,d1
  7756. bsr.w L00b22e
  7757. tst.l d1
  7758. rts
  7759. L00b926:
  7760. bsr.w L00ccae
  7761. bmi.s L00b940
  7762. move.w d0,-(sp)
  7763. bsr.w L00cd0e
  7764. move.w (sp)+,d1
  7765. bsr.w L00b22e
  7766. bsr.w L00bb1a
  7767. tst.l d1
  7768. rts
  7769. L00b940:
  7770. cmp.l d0,d0
  7771. rts
  7772. Call_CHDIR:
  7773. movea.l (a6),a1
  7774. lea.l (-$0058,sp),sp
  7775. movea.l sp,a2
  7776. L00b94c:
  7777. bsr.w L00b352
  7778. tst.l d0
  7779. bmi.s L00b9be
  7780. tst.b (a2)
  7781. bmi.s L00b960
  7782. bne.s L00b9bc
  7783. bsr.w L00b9e0
  7784. bmi.s L00b9be
  7785. L00b960:
  7786. clr.l d0
  7787. move.b ($0001,a2),d0
  7788. bsr.w L00a8be
  7789. bmi.s L00b9be
  7790. movea.l a0,a1
  7791. movea.l d0,a0
  7792. lea.l (-$0042,sp),sp
  7793. lea.l ($0002,a2),a3
  7794. movea.l sp,a4
  7795. moveq.l #$41,d0 ;'A'
  7796. L00b97c:
  7797. move.b (a3)+,(a4)+
  7798. dbra.w d0,L00b97c
  7799. bsr.w L00b24e
  7800. bmi.s L00b9b6
  7801. movem.l a1,-(sp)
  7802. bsr.s L00b9c4
  7803. movem.l (sp)+,a1
  7804. tst.l d0
  7805. bmi.s L00b9b6
  7806. move.w d1,($004a,a1)
  7807. movea.l sp,a3
  7808. move.w ($004c,a1),d0
  7809. lea.l (a1,d0.w),a4
  7810. lea.l ($0002,a4),a2
  7811. L00b9a8:
  7812. move.b (a3)+,(a4)+
  7813. bne.s L00b9a8
  7814. clr.l d0
  7815. cmpa.l a2,a4
  7816. beq.s L00b9b6
  7817. clr.b (-$0002,a4)
  7818. L00b9b6:
  7819. lea.l ($0042,sp),sp
  7820. bra.s L00b9be
  7821. L00b9bc:
  7822. moveq.l #$f3,d0
  7823. L00b9be:
  7824. lea.l ($0058,sp),sp
  7825. rts
  7826. L00b9c4:
  7827. tst.w ($000a,a0)
  7828. beq.s L00b9d8
  7829. bsr.w L00b38a
  7830. move.l d0,-(sp)
  7831. bsr.w L00b372
  7832. move.l (sp)+,d0
  7833. rts
  7834. L00b9d8:
  7835. bsr.w L00d910
  7836. moveq.l #$ff,d1
  7837. rts
  7838. L00b9e0:
  7839. moveq.l #$3f,d7 ;'?'
  7840. lea.l ($0002,a2),a3
  7841. L00b9e6:
  7842. subq.w #1,d7
  7843. tst.b (a3)+
  7844. bne.s L00b9e6
  7845. tst.w d7
  7846. bmi.s L00ba1c
  7847. addq.w #1,d7
  7848. subq.l #1,a3
  7849. movem.l a1-a3,-(sp)
  7850. lea.l ($0043,a2),a1
  7851. movea.l a3,a2
  7852. clr.l d1
  7853. bsr.w L00f292
  7854. move.b #$09,(a2)+
  7855. clr.b (a2)
  7856. movem.l (sp)+,a1-a3
  7857. L00ba0e:
  7858. subq.w #1,d7
  7859. tst.b (a3)+
  7860. bne.s L00ba0e
  7861. tst.w d7
  7862. bmi.s L00ba1c
  7863. clr.l d0
  7864. rts
  7865. L00ba1c:
  7866. moveq.l #$f3,d0
  7867. rts
  7868. Call_MKDIR:
  7869. movea.l (a6)+,a1
  7870. lea.l (-$0058,sp),sp
  7871. movea.l sp,a2
  7872. L00ba28:
  7873. bsr.w L00b352
  7874. tst.l d0
  7875. bmi.s L00ba6e
  7876. tst.b (a2)
  7877. bne.s L00ba6c
  7878. movea.l sp,a1
  7879. lea.l (-$0058,sp),sp
  7880. movea.l sp,a2
  7881. moveq.l #$57,d0 ;'W'
  7882. L00ba3e:
  7883. move.b (a1)+,(a2)+
  7884. dbra.w d0,L00ba3e
  7885. movea.l sp,a2
  7886. bsr.w L00b9e0
  7887. lea.l ($0058,sp),sp
  7888. bmi.s L00ba6e
  7889. movea.l sp,a2
  7890. clr.l d0
  7891. move.b ($0001,a2),d0
  7892. bsr.w L00a8be
  7893. bmi.s L00ba6e
  7894. movea.l a0,a1
  7895. movea.l d0,a0
  7896. bsr.w L00b24e
  7897. bmi.s L00ba6e
  7898. bsr.s L00ba74
  7899. bra.s L00ba6e
  7900. L00ba6c:
  7901. moveq.l #$f3,d0
  7902. L00ba6e:
  7903. lea.l ($0058,sp),sp
  7904. rts
  7905. L00ba74:
  7906. tst.w ($000a,a0)
  7907. beq.w L00bb14
  7908. lea.l (-$0060,sp),sp
  7909. movea.l sp,a3
  7910. moveq.l #$04,d0
  7911. moveq.l #$10,d1
  7912. move.l a1,-(sp)
  7913. bsr.w L00b520
  7914. bsr.w L00cbe2
  7915. bsr.w L00b38a
  7916. movea.l (sp)+,a1
  7917. bmi.s L00bb0e
  7918. movem.l d1-d2/a1-a2,-(sp)
  7919. lea.l ($0043,a2),a2
  7920. bsr.w L00b476
  7921. movem.l (sp)+,d1-d2/a1-a2
  7922. bpl.s L00bb0c
  7923. cmp.l #$fffffffd,d0
  7924. bne.s L00bb0e
  7925. movem.l d1,-(sp)
  7926. bsr.w L00c058
  7927. movem.l (sp)+,d2
  7928. bmi.s L00bb0e
  7929. move.w ($003e,a3),d1
  7930. bsr.w L00b22e
  7931. bsr.w L00b730
  7932. move.l a1,-(sp)
  7933. bsr.w L00bb56
  7934. bsr.s L00bb34
  7935. bsr.w L00bb66
  7936. move.b #$2e,($0024,a3) ;'.'
  7937. lea.l ($0024,a3),a4
  7938. bsr.w L00b658
  7939. move.w #$2e2e,($0024,a3) ;'..'
  7940. move.l d2,d1
  7941. bsr.w L00b372
  7942. move.w d1,($003e,a3)
  7943. lea.l ($0024,a3),a4
  7944. bsr.w L00b658
  7945. movea.l (sp)+,a1
  7946. bsr.w L00b808
  7947. bsr.w L00b6d8
  7948. clr.l d0
  7949. bra.s L00bb0e
  7950. L00bb0c:
  7951. moveq.l #$ec,d0
  7952. L00bb0e:
  7953. lea.l ($0060,sp),sp
  7954. rts
  7955. L00bb14:
  7956. bsr.w L00d8ec
  7957. rts
  7958. L00bb1a:
  7959. movem.l d0-d7/a0-a6,-(sp)
  7960. bsr.w L00b730
  7961. move.l a1,-(sp)
  7962. bsr.s L00bb56
  7963. bsr.s L00bb34
  7964. movea.l (sp)+,a1
  7965. bsr.w L00b790
  7966. movem.l (sp)+,d0-d7/a0-a6
  7967. rts
  7968. L00bb34:
  7969. clr.w d0
  7970. move.b ($000c,a0),d0
  7971. subq.w #1,d0
  7972. bcs.s L00bb54
  7973. move.l d1,-(sp)
  7974. L00bb40:
  7975. addq.l #1,d1
  7976. movem.l d0-d1/a0-a1,-(sp)
  7977. bsr.w L00acbc
  7978. movem.l (sp)+,d0-d1/a0-a1
  7979. dbra.w d0,L00bb40
  7980. move.l (sp)+,d1
  7981. L00bb54:
  7982. rts
  7983. L00bb56:
  7984. movea.l a1,a4
  7985. move.w ($000a,a0),d0
  7986. subq.w #1,d0
  7987. L00bb5e:
  7988. clr.b (a4)+
  7989. dbra.w d0,L00bb5e
  7990. rts
  7991. L00bb66:
  7992. lea.l ($0024,a3),a4
  7993. moveq.l #$0a,d1
  7994. moveq.l #$20,d0 ;' '
  7995. L00bb6e:
  7996. move.b d0,(a4)+
  7997. dbra.w d1,L00bb6e
  7998. addq.l #1,a4
  7999. moveq.l #$09,d1
  8000. L00bb78:
  8001. clr.b (a4)+
  8002. dbra.w d1,L00bb78
  8003. rts
  8004. Call_FILES:
  8005. movea.l (a6)+,a5
  8006. movea.l (a6)+,a1
  8007. move.w (a6),d2
  8008. move.b d2,(a5)
  8009. suba.l #$00000058,sp
  8010. movea.l sp,a2
  8011. ror.w #8,d2
  8012. cmp.b #$01,d2
  8013. beq.s L00bb9e
  8014. bsr.w L00ad68
  8015. bra.s L00bba2
  8016. L00bb9e:
  8017. bsr.w L00ad64
  8018. L00bba2:
  8019. tst.l d0
  8020. bmi.s L00bbf4
  8021. bsr.s L00bc08
  8022. move.b ($0001,a2),d0
  8023. bsr.w L00a8be
  8024. bmi.s L00bbf4
  8025. movea.l a0,a1
  8026. movea.l d0,a0
  8027. bsr.w L00b24e
  8028. bmi.s L00bbf4
  8029. move.b ($0000.w,a0),($0001,a5)
  8030. tst.w ($000a,a0)
  8031. beq.s L00bc02
  8032. bsr.w L00bce0
  8033. tst.l d0
  8034. bmi.s L00bbf4
  8035. move.l d1,($0002,a5)
  8036. move.w d0,($0008,a5)
  8037. swap.w d0
  8038. move.w d0,($0006,a5)
  8039. bsr.s L00bc48
  8040. bmi.s L00bbf4
  8041. movea.l a5,a1
  8042. bsr.w L00f222
  8043. tst.l d0
  8044. bmi.s L00bbf4
  8045. tst.b (a2)
  8046. bne.s L00bbfa
  8047. bsr.w L00f238
  8048. L00bbf4:
  8049. move.w #$ffff,($0008,a5)
  8050. L00bbfa:
  8051. adda.l #$00000058,sp
  8052. rts
  8053. L00bc02:
  8054. bsr.w L00d932
  8055. bra.s L00bbfa
  8056. L00bc08:
  8057. movem.l a0-a1,-(sp)
  8058. move.l a5,d0
  8059. bpl.s L00bc32
  8060. lea.l ($0001,a2),a0
  8061. lea.l ($0035,a5),a1
  8062. moveq.l #$41,d0 ;'A'
  8063. add.b (a0)+,d0
  8064. move.b d0,(a1)+
  8065. move.b #$3a,(a1)+ ;':'
  8066. moveq.l #$55,d1 ;'U'
  8067. L00bc24:
  8068. move.b (a0)+,(a1)+
  8069. dbra.w d1,L00bc24
  8070. lea.l ($0035,a5),a1
  8071. bsr.w L00a7d6
  8072. L00bc32:
  8073. lea.l ($0043,a2),a0
  8074. lea.l ($000a,a5),a1
  8075. moveq.l #$0a,d0
  8076. L00bc3c:
  8077. move.b (a0)+,(a1)+
  8078. dbra.w d0,L00bc3c
  8079. movem.l (sp)+,a0-a1
  8080. rts
  8081. L00bc48:
  8082. move.b ($000b,a1),($0015,a5)
  8083. move.w ($0016,a1),d0
  8084. rol.w #8,d0
  8085. move.w d0,($0016,a5)
  8086. move.w ($0018,a1),d0
  8087. rol.w #8,d0
  8088. move.w d0,($0018,a5)
  8089. move.l ($001c,a1),d0
  8090. rol.w #8,d0
  8091. swap.w d0
  8092. rol.w #8,d0
  8093. move.l d0,($001a,a5)
  8094. movem.l a2,-(sp)
  8095. lea.l ($001e,a5),a2
  8096. moveq.l #$01,d1
  8097. bsr.w L00f292
  8098. movem.l (sp)+,a2
  8099. bmi.s L00bc86
  8100. rts
  8101. L00bc86:
  8102. move.w #$5007,d7
  8103. trap #14
  8104. moveq.l #$ee,d0
  8105. rts
  8106. Call_NFILES:
  8107. movea.l (a6),a5
  8108. move.b ($0001,a5),d0
  8109. bsr.w L00a8dc
  8110. tst.l d0
  8111. bmi.s L00bcd2
  8112. movea.l d0,a0
  8113. tst.w ($000a,a0)
  8114. beq.s L00bcda
  8115. moveq.l #$ee,d0
  8116. cmpi.w #$ffff,($0008,a5)
  8117. beq.s L00bcd2
  8118. bsr.w L00be48
  8119. tst.l d0
  8120. bmi.s L00bcce
  8121. move.l d1,($0002,a5)
  8122. move.w d0,($0008,a5)
  8123. swap.w d0
  8124. move.w d0,($0006,a5)
  8125. bsr.w L00bc48
  8126. clr.l d0
  8127. rts
  8128. L00bcce:
  8129. bsr.w L00f238
  8130. L00bcd2:
  8131. move.w #$ffff,($0008,a5)
  8132. rts
  8133. L00bcda:
  8134. bsr.w L00d942
  8135. rts
  8136. L00bce0:
  8137. movem.l d2-d7/a2,-(sp)
  8138. clr.w d7
  8139. move.b (a5),d7
  8140. swap.w d7
  8141. bra.s L00bcfa
  8142. L00bcec:
  8143. movem.l d2-d7/a2,-(sp)
  8144. moveq.l #$ff,d7
  8145. bsr.w L00e870
  8146. bpl.w L00be06
  8147. L00bcfa:
  8148. bsr.w L00b38a
  8149. tst.l d0
  8150. bmi.w L00be00
  8151. tst.l d7
  8152. bpl.s L00bd44
  8153. tst.b (L01120a)
  8154. L00bd0e:
  8155. beq.s L00bd44
  8156. cmp.l ($002a,a0),d1
  8157. beq.s L00bd2c
  8158. move.l d1,($002a,a0)
  8159. move.l d1,($0030,a0)
  8160. move.w d2,($002e,a0)
  8161. move.w d2,($0034,a0)
  8162. clr.w ($0036,a0)
  8163. bra.s L00bd44
  8164. L00bd2c:
  8165. move.l ($0030,a0),d1
  8166. move.w ($0034,a0),d2
  8167. clr.l d4
  8168. move.w ($0036,a0),d4
  8169. bsr.w L00be7c
  8170. lea.l ($0043,a2),a2
  8171. bra.s L00bd58
  8172. L00bd44:
  8173. move.w ($000a,a0),d3
  8174. lsr.w #5,d3
  8175. subq.w #1,d3
  8176. lea.l ($0043,a2),a2
  8177. L00bd50:
  8178. bsr.w L00b71a
  8179. move.w d3,d6
  8180. clr.w d4
  8181. L00bd58:
  8182. move.b (a1),d0
  8183. beq.s L00bd6c
  8184. bsr.w L00be12
  8185. beq.s L00bdda
  8186. L00bd62:
  8187. dbra.w d6,L00bd58
  8188. bsr.w L00b4de
  8189. beq.s L00bd50
  8190. L00bd6c:
  8191. tst.l d7
  8192. bpl.s L00bdd6
  8193. tst.b (L01120a)
  8194. L00bd76:
  8195. beq.s L00bdd6
  8196. move.l ($002a,a0),d1
  8197. move.w ($002e,a0),d2
  8198. L00bd80:
  8199. cmp.l ($0030,a0),d1
  8200. beq.s L00bda2
  8201. bsr.w L00b71a
  8202. move.w d3,d6
  8203. clr.w d4
  8204. L00bd8e:
  8205. move.b (a1),d0
  8206. beq.s L00bdd6
  8207. bsr.s L00be12
  8208. beq.s L00bde6
  8209. dbra.w d6,L00bd8e
  8210. bsr.w L00b4de
  8211. beq.s L00bd80
  8212. bra.s L00bdc2
  8213. L00bda2:
  8214. tst.w ($0036,a0)
  8215. beq.s L00bdc2
  8216. bsr.w L00b71a
  8217. move.w d3,d6
  8218. clr.w d4
  8219. L00bdb0:
  8220. cmp.w ($0036,a0),d4
  8221. beq.s L00bdc2
  8222. move.b (a1),d0
  8223. beq.s L00bdc2
  8224. bsr.s L00be12
  8225. beq.s L00bde6
  8226. dbra.w d6,L00bdb0
  8227. L00bdc2:
  8228. move.l ($002a,a0),d0
  8229. move.l d0,($0030,a0)
  8230. move.w ($002e,a0),d0
  8231. move.w d0,($0034,a0)
  8232. clr.w ($0036,a0)
  8233. L00bdd6:
  8234. moveq.l #$fe,d0
  8235. bra.s L00be00
  8236. L00bdda:
  8237. tst.l d7
  8238. bpl.s L00bdfa
  8239. tst.b (L01120a)
  8240. beq.s L00bdf2
  8241. L00bde6:
  8242. move.l d1,($0030,a0)
  8243. move.w d2,($0034,a0)
  8244. move.w d4,($0036,a0)
  8245. L00bdf2:
  8246. lea.l (-$0043,a2),a2
  8247. bsr.w L00e886
  8248. L00bdfa:
  8249. move.w d2,d0
  8250. swap.w d0
  8251. move.w d4,d0
  8252. L00be00:
  8253. movem.l (sp)+,d2-d7/a2
  8254. rts
  8255. L00be06:
  8256. bsr.w L00b71a
  8257. clr.l d0
  8258. move.w d4,d0
  8259. adda.l d0,a1
  8260. bra.s L00bdfa
  8261. L00be12:
  8262. cmp.b #$e5,d0
  8263. beq.s L00be3c
  8264. swap.w d7
  8265. move.b ($000b,a1),d5
  8266. bne.s L00be22
  8267. moveq.l #$20,d5 ;' '
  8268. L00be22:
  8269. and.b d7,d5
  8270. swap.w d7
  8271. tst.b d5
  8272. beq.s L00be3c
  8273. cmp.b #$05,d0
  8274. bne.s L00be34
  8275. move.b #$e5,d0
  8276. L00be34:
  8277. bsr.w L00f1ca
  8278. bne.s L00be3c
  8279. rts
  8280. L00be3c:
  8281. adda.l #$00000020,a1
  8282. add.w #$0020,d4
  8283. rts
  8284. L00be48:
  8285. movem.l d2-d7/a2,-(sp)
  8286. movea.l a5,a2
  8287. bsr.w L00f1e0
  8288. tst.l d0
  8289. bmi.w L00bdd6
  8290. clr.w d7
  8291. move.b (a5),d7
  8292. swap.w d7
  8293. move.l ($0002,a5),d1
  8294. move.w ($0006,a5),d2
  8295. clr.l d4
  8296. move.w ($0008,a5),d4
  8297. bsr.s L00be7c
  8298. add.w #$0020,d4
  8299. adda.l #$00000020,a1
  8300. bra.w L00bd62
  8301. L00be7c:
  8302. move.w ($000a,a0),d3
  8303. bsr.w L00b71a
  8304. adda.l d4,a1
  8305. lsr.w #5,d3
  8306. subq.w #1,d3
  8307. move.l d4,d6
  8308. lsr.w #5,d6
  8309. move.w d3,d0
  8310. sub.w d6,d0
  8311. move.w d0,d6
  8312. rts
  8313. Call_MAKETMP:
  8314. movea.l (a6),a1
  8315. L00be98:
  8316. movea.l a1,a0
  8317. L00be9a:
  8318. move.b (a1)+,d0
  8319. beq.s L00becc
  8320. cmp.b #$5c,d0 ;'\'
  8321. beq.s L00be98
  8322. cmp.b #$3a,d0 ;':'
  8323. beq.s L00be98
  8324. cmp.b #$2f,d0 ;'/'
  8325. beq.s L00be98
  8326. cmp.b #$81,d0
  8327. bcs.s L00be9a
  8328. cmp.b #$a0,d0
  8329. bcs.s L00bec8
  8330. cmp.b #$e0,d0
  8331. bcs.s L00be9a
  8332. cmp.b #$f0,d0
  8333. bcc.s L00be9a
  8334. L00bec8:
  8335. move.b (a1)+,d0
  8336. bne.s L00be9a
  8337. L00becc:
  8338. move.l a1,d5
  8339. sub.l a0,d5
  8340. subq.l #2,d5
  8341. bmi.s L00bf26
  8342. L00bed4:
  8343. move.b (a0)+,d0
  8344. beq.s L00bee6
  8345. cmp.b #$3f,d0 ;'?'
  8346. bne.s L00bed4
  8347. move.b #$30,(-$0001,a0) ;'0'
  8348. bra.s L00bed4
  8349. L00bee6:
  8350. lea.l (-$0001,a0),a5
  8351. L00beea:
  8352. movem.l d5/a5-a6,-(sp)
  8353. bsr.s Call_NEWFILE
  8354. movem.l (sp)+,d5/a5-a6
  8355. cmp.l #$ffffffb0,d0
  8356. bne.s L00bf20
  8357. movea.l a5,a1
  8358. move.l d5,d1
  8359. L00bf00:
  8360. move.b -(a1),d0
  8361. cmp.b #$30,d0 ;'0'
  8362. bcs.s L00bf1a
  8363. cmp.b #$3a,d0 ;':'
  8364. bcc.s L00bf1a
  8365. addq.b #1,d0
  8366. cmp.b #$3a,d0 ;':'
  8367. bcs.s L00bf22
  8368. move.b #$30,(a1) ;'0'
  8369. L00bf1a:
  8370. dbra.w d1,L00bf00
  8371. moveq.l #$b0,d0
  8372. L00bf20:
  8373. rts
  8374. L00bf22:
  8375. move.b d0,(a1)
  8376. bra.s L00beea
  8377. L00bf26:
  8378. moveq.l #$f3,d0
  8379. rts
  8380. Call_NEWFILE:
  8381. clr.l d7
  8382. bra.s L00bf30
  8383. Call_CREATE:
  8384. moveq.l #$01,d7
  8385. L00bf30:
  8386. movea.l (a6)+,a1
  8387. lea.l (-$0058,sp),sp
  8388. movea.l sp,a2
  8389. bsr.w L00b352
  8390. tst.l d0
  8391. bmi.s L00bf60
  8392. tst.b (a2)
  8393. bne.s L00bf5e
  8394. clr.l d0
  8395. move.b ($0001,a2),d0
  8396. bsr.w L00a8be
  8397. bmi.s L00bf60
  8398. movea.l a0,a1
  8399. movea.l d0,a0
  8400. bsr.w L00b24e
  8401. bmi.s L00bf60
  8402. bsr.s L00bf66
  8403. bra.s L00bf60
  8404. L00bf5e:
  8405. moveq.l #$f3,d0
  8406. L00bf60:
  8407. lea.l ($0058,sp),sp
  8408. rts
  8409. L00bf66:
  8410. move.l a0,-(sp)
  8411. moveq.l #$03,d2
  8412. bsr.w L00ab00
  8413. movea.l a0,a3
  8414. movea.l (sp)+,a0
  8415. move.l d0,-(sp)
  8416. bmi.w L00c054
  8417. move.w (a6),d1
  8418. bne.s L00bf7e
  8419. moveq.l #$20,d1 ;' '
  8420. L00bf7e:
  8421. tst.w d7
  8422. beq.s L00bf8a
  8423. swap.w d7
  8424. move.w d1,d7
  8425. clr.b d7
  8426. swap.w d7
  8427. L00bf8a:
  8428. moveq.l #$03,d0
  8429. bsr.w L00b520
  8430. bsr.w L00dc20
  8431. bmi.w L00c036
  8432. tst.w ($000a,a0)
  8433. beq.w L00c04a
  8434. move.l a1,-(sp)
  8435. bsr.w L00cbe2
  8436. tst.l d7
  8437. bmi.s L00bff0
  8438. bsr.w L00bcec
  8439. cmp.l #$fffffffe,d0
  8440. beq.s L00bff0
  8441. tst.l d0
  8442. bmi.s L00c01e
  8443. tst.w d7
  8444. beq.s L00c01c
  8445. bsr.w L00acce
  8446. bmi.s L00c01e
  8447. tst.b (L01120a)
  8448. L00bfca:
  8449. beq.s L00bfec
  8450. move.l ($002a,a0),d0
  8451. move.l d0,($001e,a0)
  8452. move.l ($0030,a0),d0
  8453. move.l d0,($0024,a0)
  8454. move.w ($002e,a0),d0
  8455. move.w d0,($0022,a0)
  8456. move.w ($0034,a0),d0
  8457. move.w d0,($0028,a0)
  8458. L00bfec:
  8459. bsr.w L00e89c
  8460. L00bff0:
  8461. movea.l (sp)+,a1
  8462. bsr.w L00b848
  8463. tst.l d0
  8464. bmi.s L00c024
  8465. move.l d1,($001c,a3)
  8466. move.b d0,($000f,a3)
  8467. clr.w d0
  8468. btst.b #$03,($002f,a3)
  8469. bne.s L00c012
  8470. bsr.w L00ccae
  8471. bmi.s L00c022
  8472. L00c012:
  8473. move.w d0,($003e,a3)
  8474. bsr.s L00c07e
  8475. move.l (sp)+,d0
  8476. rts
  8477. L00c01c:
  8478. moveq.l #$b0,d0
  8479. L00c01e:
  8480. addq.l #4,sp
  8481. bra.s L00c024
  8482. L00c022:
  8483. moveq.l #$e9,d0
  8484. L00c024:
  8485. move.l (sp)+,d1
  8486. move.l d0,-(sp)
  8487. move.l d1,d0
  8488. bsr.w L00aba4
  8489. bsr.w L00dd02
  8490. move.l (sp)+,d0
  8491. rts
  8492. L00c036:
  8493. tst.w d7
  8494. bne.s L00c03c
  8495. moveq.l #$b0,d0
  8496. L00c03c:
  8497. move.l (sp)+,d1
  8498. move.l d0,-(sp)
  8499. move.l d1,d0
  8500. bsr.w L00aba4
  8501. move.l (sp)+,d0
  8502. rts
  8503. L00c04a:
  8504. move.w (a6),d0
  8505. bsr.w L00d8c4
  8506. tst.l d0
  8507. bmi.s L00c024
  8508. L00c054:
  8509. move.l (sp)+,d0
  8510. rts
  8511. L00c058:
  8512. move.b #$01,(L011208)
  8513. bsr.w L00b84e
  8514. tst.l d0
  8515. bmi.s L00c07c
  8516. move.l d1,($001c,a3)
  8517. move.b d0,($000f,a3)
  8518. bsr.w L00ccae
  8519. bmi.s L00c07c
  8520. move.w d0,($003e,a3)
  8521. bsr.s L00c07e
  8522. L00c07c:
  8523. rts
  8524. L00c07e:
  8525. moveq.l #$20,d0 ;' '
  8526. bra.s L00c084
  8527. L00c082:
  8528. moveq.l #$e5,d0
  8529. L00c084:
  8530. move.w d0,-(sp)
  8531. movea.l ($0002,a3),a0
  8532. move.l ($001c,a3),d1
  8533. bsr.w L00b71a
  8534. move.w (sp)+,d0
  8535. move.l a1,-(sp)
  8536. clr.l d2
  8537. move.b ($000f,a3),d2
  8538. asl.w #5,d2
  8539. adda.l d2,a1
  8540. lea.l ($0024,a3),a4
  8541. cmp.b #$e5,d0
  8542. bne.s L00c0ba
  8543. cmp.b (a1),d0
  8544. beq.s L00c0c8
  8545. move.w ($001a,a1),d0
  8546. rol.w #8,d0
  8547. cmp.w ($001a,a4),d0
  8548. bne.s L00c0c8
  8549. L00c0ba:
  8550. bsr.w L00b658
  8551. movea.l (sp)+,a1
  8552. bsr.w L00b790
  8553. clr.l d0
  8554. rts
  8555. L00c0c8:
  8556. movem.l d0-d7/a0-a6,-(sp)
  8557. move.w #$400f,d7
  8558. movea.l ($1c5c),a6
  8559. lea.l ($0038,a6),a6
  8560. trap #14
  8561. movem.l (sp)+,d0-d7/a0-a6
  8562. movea.l (sp)+,a1
  8563. clr.l d0
  8564. rts
  8565. Call_OPEN:
  8566. movea.l (a6)+,a1
  8567. move.w (a6),d2
  8568. move.w d2,d1
  8569. and.w #$000f,d1
  8570. cmp.b #$03,d1
  8571. bcc.s L00c164
  8572. cmp.b #$50,d2 ;'P'
  8573. bcc.s L00c164
  8574. lea.l (-$0058,sp),sp
  8575. movea.l sp,a2
  8576. bsr.w L00ad68
  8577. tst.l d0
  8578. bmi.s L00c15a
  8579. tst.b (a2)
  8580. bne.s L00c160
  8581. bsr.w L00ab00
  8582. move.l d0,-(sp)
  8583. bmi.s L00c158
  8584. movea.l a0,a3
  8585. bsr.w L00f1b4
  8586. bmi.s L00c168
  8587. movea.l d0,a0
  8588. move.l a0,($0002,a3)
  8589. move.b d2,($000e,a3)
  8590. move.w ($0004,a0),d0
  8591. and.b #$3f,d0
  8592. or.b #$c0,d0
  8593. move.b d0,($0001,a3)
  8594. lea.l ($0043,a2),a0
  8595. lea.l ($0024,a3),a1
  8596. moveq.l #$07,d1
  8597. L00c140:
  8598. move.b (a0)+,(a1)+
  8599. dbra.w d1,L00c140
  8600. btst.l #$03,d0
  8601. beq.s L00c158
  8602. moveq.l #$f3,d0
  8603. L00c14e:
  8604. move.l (sp)+,d1
  8605. move.l d0,-(sp)
  8606. move.l d1,d0
  8607. bsr.w L00aba4
  8608. L00c158:
  8609. move.l (sp)+,d0
  8610. L00c15a:
  8611. lea.l ($0058,sp),sp
  8612. rts
  8613. L00c160:
  8614. moveq.l #$f3,d0
  8615. bra.s L00c15a
  8616. L00c164:
  8617. moveq.l #$f4,d0
  8618. rts
  8619. L00c168:
  8620. clr.l d0
  8621. move.b ($0001,a2),d0
  8622. bsr.w L00a8be
  8623. bmi.s L00c14e
  8624. movea.l a0,a1
  8625. movea.l d0,a0
  8626. bsr.w L00b24e
  8627. bmi.s L00c14e
  8628. moveq.l #$20,d1 ;' '
  8629. move.w (a6),d0
  8630. bsr.w L00b520
  8631. bsr.w L00dc20
  8632. bmi.s L00c14e
  8633. bsr.s L00c1a0
  8634. bpl.s L00c158
  8635. move.l (sp)+,d1
  8636. move.l d0,-(sp)
  8637. move.l d1,d0
  8638. bsr.w L00aba4
  8639. bsr.w L00dd02
  8640. bra.s L00c158
  8641. L00c1a0:
  8642. tst.w ($000a,a0)
  8643. beq.s L00c1ac
  8644. bsr.s L00c1b4
  8645. tst.l d0
  8646. rts
  8647. L00c1ac:
  8648. bsr.w L00d8b2
  8649. tst.l d0
  8650. rts
  8651. L00c1b4:
  8652. movem.l d1/a0-a1/a4,-(sp)
  8653. L00c1b8:
  8654. bsr.w L00bcec
  8655. tst.l d0
  8656. bmi.s L00c1f8
  8657. move.l d1,($001c,a3)
  8658. lsr.w #5,d0
  8659. move.b d0,($000f,a3)
  8660. lea.l ($0024,a3),a4
  8661. bsr.s L00c1fe
  8662. move.b ($002f,a3),d0
  8663. and.w #$0018,d0
  8664. bne.s L00c1f6
  8665. move.b ($000e,a3),d0
  8666. and.b #$0f,d0
  8667. beq.s L00c1f2
  8668. move.b ($002f,a3),d0
  8669. and.w #$0005,d0
  8670. beq.s L00c1f2
  8671. moveq.l #$ed,d0
  8672. bra.s L00c1f8
  8673. L00c1f2:
  8674. clr.l d0
  8675. bra.s L00c1f8
  8676. L00c1f6:
  8677. moveq.l #$fb,d0
  8678. L00c1f8:
  8679. movem.l (sp)+,d1/a0-a1/a4
  8680. rts
  8681. L00c1fe:
  8682. movem.l d0-d1,-(sp)
  8683. moveq.l #$14,d1
  8684. move.b (a1)+,d0
  8685. cmp.b #$05,d0
  8686. bne.s L00c210
  8687. move.b #$e5,d0
  8688. L00c210:
  8689. move.b d0,(a4)+
  8690. L00c212:
  8691. move.b (a1)+,(a4)+
  8692. dbra.w d1,L00c212
  8693. moveq.l #$02,d1
  8694. L00c21a:
  8695. move.w (a1)+,d0
  8696. rol.w #8,d0
  8697. move.w d0,(a4)+
  8698. dbra.w d1,L00c21a
  8699. move.l (a1),d1
  8700. rol.w #8,d1
  8701. swap.w d1
  8702. rol.w #8,d1
  8703. move.l d1,(a4)
  8704. movem.l (sp)+,d0-d1
  8705. rts
  8706. Call_CLOSE:
  8707. move.w (a6),d0
  8708. L00c236:
  8709. bsr.w L00aba4
  8710. tst.l d0
  8711. bmi.s L00c26c
  8712. clr.l d0
  8713. btst.b #$07,($0001,a0)
  8714. bne.s L00c26c
  8715. tst.b (a0)
  8716. bne.s L00c26e
  8717. bsr.w L00dd02
  8718. btst.b #$05,($0001,a0)
  8719. bne.s L00c278
  8720. L00c258:
  8721. movem.l a0,-(sp)
  8722. movea.l ($0002,a0),a0
  8723. bsr.w L00d428
  8724. movem.l (sp)+,a0
  8725. bmi.s L00c26c
  8726. bsr.s L00c27e
  8727. L00c26c:
  8728. rts
  8729. L00c26e:
  8730. btst.b #$05,($0001,a0)
  8731. beq.s L00c258
  8732. rts
  8733. L00c278:
  8734. bsr.w L00d8d6
  8735. rts
  8736. L00c27e:
  8737. movem.l d1-d7/a0-a4,-(sp)
  8738. clr.l d0
  8739. movea.l a0,a3
  8740. bclr.b #$06,($0001,a0)
  8741. beq.s L00c29e
  8742. DOS _GETTIME
  8743. move.w d0,($003a,a0)
  8744. DOS _GETDATE
  8745. move.w d0,($003c,a0)
  8746. bsr.w L00c082
  8747. L00c29e:
  8748. movea.l ($0002,a3),a0
  8749. bsr.w L00b6d8
  8750. movem.l (sp)+,d1-d7/a0-a4
  8751. rts
  8752. Call_READ:
  8753. clr.l d0
  8754. move.w (a6)+,d1
  8755. movea.l (a6)+,a2
  8756. move.l (a6),d2
  8757. beq.s L00c320
  8758. move.w d1,d0
  8759. bsr.w L00a9d8
  8760. tst.l d0
  8761. bmi.s L00c320
  8762. move.b ($0001,a0),d0
  8763. btst.l #$07,d0
  8764. bne.s L00c326
  8765. L00c2ca:
  8766. bsr.w L00dcb6
  8767. bmi.s L00c320
  8768. move.b ($0001,a0),d0
  8769. btst.l #$05,d0
  8770. bne.s L00c2fa
  8771. movem.l a0,-(sp)
  8772. movea.l ($0002,a0),a0
  8773. bsr.w L00d428
  8774. movem.l (sp)+,a0
  8775. moveq.l #$fa,d0
  8776. tst.b (a0)
  8777. beq.w L00c3fa
  8778. bsr.w L00c490
  8779. bra.w L00c3fa
  8780. L00c2fa:
  8781. bsr.w L00d888
  8782. bra.w L00c3fa
  8783. L00c302:
  8784. move.w d1,d0
  8785. bsr.w L00a9d8
  8786. tst.l d0
  8787. bmi.s L00c320
  8788. L00c30c:
  8789. move.b ($0001,a0),d0
  8790. btst.l #$07,d0
  8791. beq.s L00c2ca
  8792. btst.l #$02,d0
  8793. bne.s L00c322
  8794. L00c31c:
  8795. bsr.w L00caac
  8796. L00c320:
  8797. rts
  8798. L00c322:
  8799. clr.l d0
  8800. rts
  8801. L00c326:
  8802. btst.l #$02,d0
  8803. bne.s L00c322
  8804. and.w #$0021,d0
  8805. cmp.w #$0001,d0
  8806. beq.s L00c368
  8807. and.w #$0020,d0
  8808. bne.s L00c31c
  8809. clr.l d7
  8810. L00c33e:
  8811. movem.l d2/a2,-(sp)
  8812. moveq.l #$01,d2
  8813. bsr.w L00caac
  8814. movem.l (sp)+,d2/a2
  8815. tst.l d0
  8816. beq.s L00c364
  8817. addq.l #1,d7
  8818. move.b (a2)+,d0
  8819. cmp.b #$1a,d0
  8820. beq.s L00c364
  8821. cmp.b #$0a,d0
  8822. beq.s L00c364
  8823. subq.l #1,d2
  8824. bne.s L00c33e
  8825. L00c364:
  8826. move.l d7,d0
  8827. rts
  8828. L00c368:
  8829. move.w d1,d3
  8830. clr.l d1
  8831. L00c36c:
  8832. movem.l d1-d3/a2,-(sp)
  8833. bsr.w L008db2
  8834. movem.l (sp)+,d1-d3/a2
  8835. move.b d0,(a2)+
  8836. addq.l #1,d1
  8837. and.w #$ff00,d0
  8838. beq.s L00c386
  8839. subq.l #1,d2
  8840. bne.s L00c36c
  8841. L00c386:
  8842. move.l d1,d0
  8843. rts
  8844. Call_WRITE:
  8845. clr.l d0
  8846. move.w (a6)+,d1
  8847. move.w d1,d7
  8848. movea.l (a6)+,a2
  8849. move.l (a6),d2
  8850. move.w d1,d0
  8851. bsr.w L00a9d8
  8852. tst.l d0
  8853. bmi.s L00c412
  8854. move.b ($000e,a0),d0
  8855. and.b #$0f,d0
  8856. beq.w L00c430
  8857. move.b ($0001,a0),d0
  8858. btst.l #$07,d0
  8859. bne.w L00c464
  8860. L00c3b6:
  8861. bsr.w L00dcb6
  8862. bmi.s L00c412
  8863. move.b ($0001,a0),d0
  8864. btst.l #$05,d0
  8865. bne.s L00c424
  8866. movem.l a0,-(sp)
  8867. movea.l ($0002,a0),a0
  8868. bsr.w L00d428
  8869. movem.l (sp)+,a0
  8870. moveq.l #$fa,d0
  8871. tst.b (a0)
  8872. beq.s L00c3fa
  8873. tst.l d2
  8874. beq.s L00c414
  8875. bsr.w L00c72e
  8876. tst.l d0
  8877. bmi.s L00c3fa
  8878. move.l d0,-(sp)
  8879. move.l ($0020,a0),d0
  8880. cmp.l ($0040,a0),d0
  8881. bcs.s L00c3f8
  8882. move.l d0,($0040,a0)
  8883. L00c3f8:
  8884. move.l (sp)+,d0
  8885. L00c3fa:
  8886. cmpi.b #$01,($1c12)
  8887. bne.s L00c412
  8888. move.l d0,-(sp)
  8889. bsr.w L009014
  8890. move.l (sp)+,d0
  8891. cmp.w ($1cbc),d1
  8892. beq.w L0086a4
  8893. L00c412:
  8894. rts
  8895. L00c414:
  8896. bsr.w L00c6c8
  8897. move.l ($0006,a0),d0
  8898. move.l d0,($0040,a0)
  8899. clr.l d0
  8900. bra.s L00c3fa
  8901. L00c424:
  8902. bsr.w L00d874
  8903. bset.b #$06,($0001,a0)
  8904. bra.s L00c3fa
  8905. L00c430:
  8906. moveq.l #$f4,d0
  8907. rts
  8908. L00c434:
  8909. move.l d2,d0
  8910. rts
  8911. L00c438:
  8912. move.w d1,d0
  8913. bsr.w L00a9d8
  8914. tst.l d0
  8915. bmi.s L00c412
  8916. move.b ($000e,a0),d0
  8917. and.b #$0f,d0
  8918. beq.s L00c430
  8919. move.b ($0001,a0),d0
  8920. btst.l #$07,d0
  8921. beq.w L00c3b6
  8922. btst.l #$02,d0
  8923. bne.s L00c434
  8924. L00c45e:
  8925. bsr.w L00caa8
  8926. rts
  8927. L00c464:
  8928. btst.l #$02,d0
  8929. bne.s L00c434
  8930. tst.l d2
  8931. beq.s L00c48c
  8932. and.w #$0020,d0
  8933. bne.s L00c45e
  8934. tst.l d2
  8935. beq.s L00c48c
  8936. move.l d2,-(sp)
  8937. L00c47a:
  8938. clr.w d1
  8939. move.b (a2)+,d1
  8940. move.w d7,d0
  8941. bsr.w L008f54
  8942. subq.l #1,d2
  8943. bne.s L00c47a
  8944. move.l (sp)+,d0
  8945. rts
  8946. L00c48c:
  8947. clr.l d0
  8948. rts
  8949. L00c490:
  8950. movem.l d1-d7/a0-a6,-(sp)
  8951. movea.l a0,a3
  8952. movea.l ($0002,a3),a0
  8953. move.l ($0006,a3),d3
  8954. clr.l d7
  8955. move.l ($0040,a3),d0
  8956. sub.l d3,d0
  8957. beq.w L00c55c
  8958. cmp.l d0,d2
  8959. bcs.s L00c4b0
  8960. move.l d0,d2
  8961. L00c4b0:
  8962. bsr.w L00c576
  8963. bmi.w L00c570
  8964. clr.l d4
  8965. move.w ($000a,a0),d4
  8966. tst.w d3
  8967. beq.s L00c4f0
  8968. bsr.w L00b81e
  8969. move.l d4,d5
  8970. sub.w d3,d5
  8971. clr.l d0
  8972. cmp.l d5,d2
  8973. bcc.s L00c4d4
  8974. move.w d2,d5
  8975. moveq.l #$ff,d0
  8976. L00c4d4:
  8977. adda.l d3,a1
  8978. sub.l d5,d2
  8979. add.l d5,d7
  8980. subq.w #1,d5
  8981. L00c4dc:
  8982. move.b (a1)+,(a2)+
  8983. dbra.w d5,L00c4dc
  8984. tst.w d0
  8985. bne.s L00c564
  8986. bsr.w L00c652
  8987. beq.s L00c55c
  8988. clr.l ($0018,a3)
  8989. L00c4f0:
  8990. cmp.l d4,d2
  8991. bcs.s L00c532
  8992. subq.l #1,d4
  8993. and.l d2,d4
  8994. move.b ($001b,a0),d0
  8995. lsr.l d0,d2
  8996. L00c4fe:
  8997. tst.l d1
  8998. beq.s L00c564
  8999. move.l d2,-(sp)
  9000. bsr.w L00c69c
  9001. move.l d0,-(sp)
  9002. bsr.w L00b7bc
  9003. clr.l ($0018,a3)
  9004. move.l (sp)+,d1
  9005. move.l (sp)+,d5
  9006. tst.l d0
  9007. bmi.s L00c570
  9008. move.l d2,d0
  9009. sub.l d2,d5
  9010. move.l d5,d2
  9011. clr.l d5
  9012. move.b ($001b,a0),d5
  9013. lsl.l d5,d0
  9014. add.l d0,d7
  9015. adda.l d0,a2
  9016. tst.l d2
  9017. bne.s L00c4fe
  9018. move.l d4,d2
  9019. L00c532:
  9020. tst.l d2
  9021. beq.s L00c564
  9022. tst.l d1
  9023. beq.s L00c564
  9024. bsr.w L00b81e
  9025. add.l d2,d7
  9026. clr.l d0
  9027. cmp.w ($000a,a0),d2
  9028. beq.s L00c54a
  9029. moveq.l #$ff,d0
  9030. L00c54a:
  9031. subq.w #1,d2
  9032. L00c54c:
  9033. move.b (a1)+,(a2)+
  9034. dbra.w d2,L00c54c
  9035. tst.l d0
  9036. bne.s L00c564
  9037. bsr.w L00c652
  9038. bne.s L00c564
  9039. L00c55c:
  9040. clr.l ($0014,a3)
  9041. clr.l ($0018,a3)
  9042. L00c564:
  9043. move.l d7,d0
  9044. add.l d0,($0006,a3)
  9045. move.l ($0006,a3),($0020,a3)
  9046. L00c570:
  9047. movem.l (sp)+,d1-d7/a0-a6
  9048. rts
  9049. L00c576:
  9050. move.l ($0020,a3),d1
  9051. eor.l d3,d1
  9052. clr.l d0
  9053. move.w ($000a,a0),d0
  9054. cmp.l d0,d1
  9055. bcc.s L00c5a0
  9056. move.l ($0014,a3),d1
  9057. beq.s L00c5a0
  9058. cmp.l #$ffffffff,d1
  9059. beq.s L00c59c
  9060. subq.l #1,d0
  9061. and.l d0,d3
  9062. clr.l d0
  9063. rts
  9064. L00c59c:
  9065. moveq.l #$e9,d0
  9066. rts
  9067. L00c5a0:
  9068. clr.l ($0018,a3)
  9069. move.w ($0012,a3),d1
  9070. bne.s L00c5c4
  9071. move.w ($003e,a3),d1
  9072. beq.s L00c61e
  9073. move.w d1,($0012,a3)
  9074. clr.b ($0010,a3)
  9075. bsr.w L00b22e
  9076. move.l d1,($0014,a3)
  9077. clr.l ($0020,a3)
  9078. L00c5c4:
  9079. clr.l d0
  9080. move.w ($000a,a0),d0
  9081. move.b ($000d,a0),d1
  9082. asl.l d1,d0
  9083. move.l ($0020,a3),d1
  9084. eor.l d3,d1
  9085. cmp.l d0,d1
  9086. bcc.s L00c622
  9087. move.l ($0014,a3),d1
  9088. beq.s L00c622
  9089. cmp.l #$ffffffff,d1
  9090. beq.s L00c59c
  9091. move.l d3,d1
  9092. move.b ($001b,a0),d0
  9093. lsr.l d0,d1
  9094. move.l d1,-(sp)
  9095. clr.l d0
  9096. move.w ($000a,a0),d0
  9097. subq.l #1,d0
  9098. and.l d0,d3
  9099. move.w ($0012,a3),d1
  9100. L00c600:
  9101. bsr.w L00b22e
  9102. move.l (sp)+,d0
  9103. and.b ($000c,a0),d0
  9104. move.b d0,($0010,a3)
  9105. and.l #$000000ff,d0
  9106. add.l d0,d1
  9107. move.l d1,($0014,a3)
  9108. clr.l d0
  9109. rts
  9110. L00c61e:
  9111. moveq.l #$e7,d0
  9112. rts
  9113. L00c622:
  9114. move.l d3,d1
  9115. move.b ($001b,a0),d0
  9116. lsr.l d0,d1
  9117. move.l d1,-(sp)
  9118. clr.l d0
  9119. move.w ($000a,a0),d0
  9120. subq.l #1,d0
  9121. and.l d0,d3
  9122. move.l d1,d0
  9123. move.b ($000d,a0),d1
  9124. lsr.l d1,d0
  9125. move.w ($003e,a3),d1
  9126. bsr.w L00cc50
  9127. bmi.s L00c64e
  9128. move.w d1,($0012,a3)
  9129. bra.s L00c600
  9130. L00c64e:
  9131. addq.l #4,sp
  9132. rts
  9133. L00c652:
  9134. move.b ($0010,a3),d0
  9135. cmp.b ($000c,a0),d0
  9136. bne.s L00c68a
  9137. move.w ($0012,a3),d0
  9138. bsr.w L00cd26
  9139. bmi.s L00c686
  9140. cmp.w #$ffff,d0
  9141. beq.s L00c686
  9142. tst.w d0
  9143. beq.w L00b518
  9144. move.w d0,d1
  9145. move.w d0,($0012,a3)
  9146. bsr.w L00b22e
  9147. clr.b ($0010,a3)
  9148. move.l d1,($0014,a3)
  9149. rts
  9150. L00c686:
  9151. clr.l d1
  9152. rts
  9153. L00c68a:
  9154. addq.b #1,d0
  9155. move.b d0,($0010,a3)
  9156. move.l ($0014,a3),d1
  9157. addq.l #1,d1
  9158. move.l d1,($0014,a3)
  9159. rts
  9160. L00c69c:
  9161. movem.l d1/d3,-(sp)
  9162. move.l d2,d3
  9163. L00c6a2:
  9164. subq.l #1,d3
  9165. move.l d1,-(sp)
  9166. bsr.s L00c652
  9167. movem.l (sp)+,d0
  9168. beq.s L00c6be
  9169. sub.l d1,d0
  9170. addq.l #1,d0
  9171. bne.s L00c6ba
  9172. tst.l d3
  9173. bne.s L00c6a2
  9174. clr.l d3
  9175. L00c6ba:
  9176. move.l d1,d0
  9177. bra.s L00c6c0
  9178. L00c6be:
  9179. clr.l d0
  9180. L00c6c0:
  9181. sub.l d3,d2
  9182. movem.l (sp)+,d1/d3
  9183. rts
  9184. L00c6c8:
  9185. movem.l d1-d7/a0-a6,-(sp)
  9186. movea.l a0,a3
  9187. movea.l ($0002,a3),a0
  9188. move.l ($0006,a3),d3
  9189. move.w ($003e,a3),d1
  9190. clr.l d0
  9191. move.b ($001b,a0),d0
  9192. lsr.l d0,d3
  9193. move.b ($000d,a0),d0
  9194. lsr.l d0,d3
  9195. move.w d1,d0
  9196. L00c6ea:
  9197. bsr.w L00cd26
  9198. bmi.w L00c816
  9199. tst.w d0
  9200. beq.w L00b518
  9201. cmp.w #$ffff,d0
  9202. beq.s L00c724
  9203. tst.w d3
  9204. beq.s L00c708
  9205. move.w d0,d1
  9206. subq.w #1,d3
  9207. bra.s L00c6ea
  9208. L00c708:
  9209. move.w d0,-(sp)
  9210. moveq.l #$ff,d0
  9211. bsr.w L00cd0e
  9212. move.w (sp)+,d0
  9213. bsr.w L00ccde
  9214. lea.l ($0044,a3),a5
  9215. moveq.l #$06,d1
  9216. moveq.l #$ff,d0
  9217. L00c71e:
  9218. move.l d0,(a5)+
  9219. dbra.w d1,L00c71e
  9220. L00c724:
  9221. bset.b #$06,($0001,a3)
  9222. bra.w L00c816
  9223. L00c72e:
  9224. movem.l d1-d7/a0-a6,-(sp)
  9225. movea.l a0,a3
  9226. movea.l ($0002,a3),a0
  9227. move.l ($0006,a3),d3
  9228. clr.l d7
  9229. bsr.w L00c83c
  9230. bmi.w L00c820
  9231. clr.l d4
  9232. move.w ($000a,a0),d4
  9233. tst.w d3
  9234. beq.s L00c780
  9235. bsr.w L00b7e4
  9236. move.l d4,d5
  9237. sub.w d3,d5
  9238. clr.l d0
  9239. cmp.l d5,d2
  9240. bcc.s L00c762
  9241. move.w d2,d5
  9242. moveq.l #$ff,d0
  9243. L00c762:
  9244. adda.l d3,a1
  9245. sub.l d5,d2
  9246. add.l d5,d7
  9247. subq.w #1,d5
  9248. L00c76a:
  9249. move.b (a2)+,(a1)+
  9250. dbra.w d5,L00c76a
  9251. tst.w d0
  9252. bne.s L00c7f2
  9253. bsr.w L00c918
  9254. beq.w L00c81c
  9255. clr.l ($0018,a3)
  9256. L00c780:
  9257. cmp.l d2,d4
  9258. bcc.s L00c7c4
  9259. move.l d4,d0
  9260. subq.l #1,d4
  9261. and.l d2,d4
  9262. move.b ($001b,a0),d0
  9263. lsr.l d0,d2
  9264. L00c790:
  9265. tst.l d1
  9266. beq.s L00c7f2
  9267. move.l d2,-(sp)
  9268. bsr.w L00c974
  9269. move.l d0,-(sp)
  9270. bsr.w L00b7a6
  9271. clr.l ($0018,a3)
  9272. move.l (sp)+,d1
  9273. move.l (sp)+,d5
  9274. tst.l d0
  9275. bmi.s L00c816
  9276. move.l d2,d0
  9277. sub.l d2,d5
  9278. move.l d5,d2
  9279. clr.l d5
  9280. move.b ($001b,a0),d5
  9281. lsl.l d5,d0
  9282. add.l d0,d7
  9283. adda.l d0,a2
  9284. tst.l d2
  9285. bne.s L00c790
  9286. move.l d4,d2
  9287. L00c7c4:
  9288. tst.l d2
  9289. beq.s L00c7f2
  9290. tst.l d1
  9291. beq.s L00c7f2
  9292. bsr.w L00b7e4
  9293. add.l d2,d7
  9294. clr.l d0
  9295. cmp.w ($000a,a0),d2
  9296. beq.s L00c7dc
  9297. moveq.l #$ff,d0
  9298. L00c7dc:
  9299. subq.w #1,d2
  9300. L00c7de:
  9301. move.b (a2)+,(a1)+
  9302. dbra.w d2,L00c7de
  9303. tst.l d0
  9304. bne.s L00c7f2
  9305. bsr.w L00c918
  9306. beq.s L00c81c
  9307. clr.l ($0018,a3)
  9308. L00c7f2:
  9309. move.l d7,d0
  9310. beq.s L00c806
  9311. add.l d0,($0006,a3)
  9312. move.l ($0006,a3),($0020,a3)
  9313. bset.b #$06,($0001,a3)
  9314. L00c806:
  9315. tst.l d1
  9316. bne.s L00c816
  9317. move.l #$ffffffff,($0014,a3)
  9318. clr.l ($0018,a3)
  9319. L00c816:
  9320. movem.l (sp)+,d1-d7/a0-a6
  9321. rts
  9322. L00c81c:
  9323. clr.l d1
  9324. bra.s L00c7f2
  9325. L00c820:
  9326. clr.l ($0014,a3)
  9327. clr.l ($0018,a3)
  9328. cmp.l #$ffffffe9,d0
  9329. bne.s L00c816
  9330. move.l #$ffffffff,($0014,a3)
  9331. clr.l d0
  9332. bra.s L00c816
  9333. L00c83c:
  9334. move.l ($0020,a3),d1
  9335. eor.l d3,d1
  9336. clr.l d0
  9337. move.w ($000a,a0),d0
  9338. cmp.l d0,d1
  9339. bcc.s L00c866
  9340. move.l ($0014,a3),d1
  9341. beq.s L00c866
  9342. cmp.l #$ffffffff,d1
  9343. beq.s L00c862
  9344. subq.l #1,d0
  9345. and.l d0,d3
  9346. clr.l d0
  9347. rts
  9348. L00c862:
  9349. moveq.l #$e9,d0
  9350. rts
  9351. L00c866:
  9352. clr.l ($0018,a3)
  9353. move.w ($0012,a3),d1
  9354. bne.s L00c88a
  9355. move.w ($003e,a3),d1
  9356. beq.s L00c8e4
  9357. move.w d1,($0012,a3)
  9358. clr.b ($0010,a3)
  9359. bsr.w L00b22e
  9360. move.l d1,($0014,a3)
  9361. clr.l ($0020,a3)
  9362. L00c88a:
  9363. clr.l d0
  9364. move.w ($000a,a0),d0
  9365. move.b ($000d,a0),d1
  9366. asl.l d1,d0
  9367. move.l ($0020,a3),d1
  9368. eor.l d3,d1
  9369. cmp.l d0,d1
  9370. bcc.s L00c8e8
  9371. move.l ($0014,a3),d1
  9372. beq.s L00c8e8
  9373. cmp.l #$ffffffff,d1
  9374. beq.s L00c862
  9375. move.l d3,d1
  9376. move.b ($001b,a0),d0
  9377. lsr.l d0,d1
  9378. move.l d1,-(sp)
  9379. clr.l d0
  9380. move.w ($000a,a0),d0
  9381. subq.l #1,d0
  9382. and.l d0,d3
  9383. move.w ($0012,a3),d1
  9384. L00c8c6:
  9385. bsr.w L00b22e
  9386. move.l (sp)+,d0
  9387. and.b ($000c,a0),d0
  9388. move.b d0,($0010,a3)
  9389. and.l #$000000ff,d0
  9390. add.l d0,d1
  9391. move.l d1,($0014,a3)
  9392. clr.l d0
  9393. rts
  9394. L00c8e4:
  9395. moveq.l #$e7,d0
  9396. rts
  9397. L00c8e8:
  9398. move.l d3,d1
  9399. move.b ($001b,a0),d0
  9400. lsr.l d0,d1
  9401. move.l d1,-(sp)
  9402. clr.l d0
  9403. move.w ($000a,a0),d0
  9404. subq.l #1,d0
  9405. and.l d0,d3
  9406. move.l d1,d0
  9407. move.b ($000d,a0),d1
  9408. lsr.l d1,d0
  9409. move.w ($003e,a3),d1
  9410. bsr.w L00cc72
  9411. bmi.s L00c914
  9412. move.w d1,($0012,a3)
  9413. bra.s L00c8c6
  9414. L00c914:
  9415. addq.l #4,sp
  9416. rts
  9417. L00c918:
  9418. move.b ($0010,a3),d0
  9419. cmp.b ($000c,a0),d0
  9420. bne.s L00c952
  9421. move.w ($0012,a3),d1
  9422. move.w d1,d0
  9423. bsr.w L00cd26
  9424. bmi.s L00c94e
  9425. cmp.w #$ffff,d0
  9426. beq.s L00c964
  9427. tst.w d0
  9428. beq.w L00b518
  9429. move.w d0,d1
  9430. L00c93c:
  9431. move.w d1,($0012,a3)
  9432. bsr.w L00b22e
  9433. clr.b ($0010,a3)
  9434. move.l d1,($0014,a3)
  9435. rts
  9436. L00c94e:
  9437. clr.l d1
  9438. rts
  9439. L00c952:
  9440. addq.b #1,d0
  9441. move.b d0,($0010,a3)
  9442. move.l ($0014,a3),d1
  9443. addq.l #1,d1
  9444. move.l d1,($0014,a3)
  9445. rts
  9446. L00c964:
  9447. bsr.w L00ccae
  9448. bmi.s L00c94e
  9449. move.w d0,-(sp)
  9450. bsr.w L00cd0e
  9451. move.w (sp)+,d1
  9452. bra.s L00c93c
  9453. L00c974:
  9454. movem.l d1/d3-d4,-(sp)
  9455. move.l d2,d3
  9456. L00c97a:
  9457. subq.l #1,d3
  9458. movem.l d1,-(sp)
  9459. bsr.s L00c918
  9460. movem.l (sp)+,d0
  9461. beq.s L00c998
  9462. sub.l d1,d0
  9463. addq.l #1,d0
  9464. bne.s L00c994
  9465. tst.l d3
  9466. bne.s L00c97a
  9467. clr.l d3
  9468. L00c994:
  9469. move.l d1,d0
  9470. bra.s L00c99a
  9471. L00c998:
  9472. clr.l d0
  9473. L00c99a:
  9474. sub.l d3,d2
  9475. movem.l (sp)+,d1/d3-d4
  9476. rts
  9477. Call_SEEK:
  9478. move.w (a6)+,d0
  9479. bsr.w L00a9d8
  9480. tst.l d0
  9481. bmi.s L00c9ec
  9482. move.l (a6)+,d1
  9483. move.w (a6),d3
  9484. clr.l d0
  9485. btst.b #$07,($0001,a0)
  9486. bne.s L00c9e4
  9487. btst.b #$05,($0001,a0)
  9488. bne.s L00c9ee
  9489. move.l ($0040,a0),d2
  9490. tst.w d3
  9491. beq.s L00c9d8
  9492. move.l ($0006,a0),d0
  9493. subq.w #1,d3
  9494. beq.s L00c9d8
  9495. subq.w #1,d3
  9496. bne.s L00c9ea
  9497. move.l d2,d0
  9498. L00c9d8:
  9499. add.l d1,d0
  9500. bmi.s L00c9e6
  9501. cmp.l d0,d2
  9502. bcs.s L00c9e6
  9503. move.l d0,($0006,a0)
  9504. L00c9e4:
  9505. rts
  9506. L00c9e6:
  9507. moveq.l #$e7,d0
  9508. rts
  9509. L00c9ea:
  9510. moveq.l #$f2,d0
  9511. L00c9ec:
  9512. rts
  9513. L00c9ee:
  9514. bsr.w L00d89c
  9515. rts
  9516. Call_FILEDATE:
  9517. move.w (a6)+,d0
  9518. bsr.w L00a9d8
  9519. tst.l d0
  9520. bmi.s L00ca4a
  9521. move.l (a6),d2
  9522. tst.l d2
  9523. beq.s L00ca12
  9524. move.b ($000e,a0),d0
  9525. and.b #$0f,d0
  9526. bne.s L00ca12
  9527. moveq.l #$f4,d0
  9528. rts
  9529. L00ca12:
  9530. clr.l d0
  9531. btst.b #$07,($0001,a0)
  9532. bne.s L00ca4a
  9533. btst.b #$05,($0001,a0)
  9534. bne.s L00ca4c
  9535. tst.l d2
  9536. beq.s L00ca40
  9537. move.w d2,($003a,a0)
  9538. swap.w d2
  9539. move.w d2,($003c,a0)
  9540. movea.l a0,a3
  9541. bsr.w L00c082
  9542. bclr.b #$06,($0001,a3)
  9543. rts
  9544. L00ca40:
  9545. move.w ($003c,a0),d0
  9546. swap.w d0
  9547. move.w ($003a,a0),d0
  9548. L00ca4a:
  9549. rts
  9550. L00ca4c:
  9551. bsr.w L00d952
  9552. rts
  9553. Call_DSKFRE:
  9554. bsr.w L00a780
  9555. move.w d0,d1
  9556. bsr.w L00a792
  9557. bmi.s L00ca9e
  9558. movea.l d0,a0
  9559. movea.l ($0046,a0),a0
  9560. tst.w ($000a,a0)
  9561. beq.s L00caa0
  9562. bsr.w L00ccc6
  9563. bmi.s L00ca9e
  9564. movea.l (a6),a5
  9565. clr.l d3
  9566. move.w d0,d3
  9567. move.w ($0016,a0),d2
  9568. subq.w #3,d2
  9569. clr.w d1
  9570. move.b ($000c,a0),d1
  9571. addq.w #1,d1
  9572. move.w ($000a,a0),d0
  9573. move.w d3,(a5)+
  9574. move.w d2,(a5)+
  9575. move.w d1,(a5)+
  9576. move.w d0,(a5)
  9577. move.b ($000d,a0),d1
  9578. lsl.l d1,d3
  9579. move.b ($001b,a0),d1
  9580. lsl.l d1,d3
  9581. move.l d3,d0
  9582. L00ca9e:
  9583. rts
  9584. L00caa0:
  9585. movea.l (a6),a2
  9586. L00caa2:
  9587. bsr.w L00d964
  9588. rts
  9589. L00caa8:
  9590. moveq.l #$08,d0
  9591. bra.s L00caae
  9592. L00caac:
  9593. moveq.l #$04,d0
  9594. L00caae:
  9595. movem.l a1/a4-a5,-(sp)
  9596. lea.l (-$001a,sp),sp
  9597. movea.l sp,a5
  9598. move.b #$1a,($0000.w,a5)
  9599. move.b d0,($0002,a5)
  9600. move.l a2,($000e,a5)
  9601. move.l d2,($0012,a5)
  9602. movea.l ($0002,a0),a1
  9603. bsr.w L00cba6
  9604. move.l ($0012,a5),d0
  9605. lea.l ($001a,sp),sp
  9606. movem.l (sp)+,a1/a4-a5
  9607. rts
  9608. L00cae0:
  9609. lea.l (-$001a,sp),sp
  9610. movea.l sp,a5
  9611. move.b #$1a,($0000.w,a5)
  9612. move.b d1,($0001,a5)
  9613. move.b d7,($0002,a5)
  9614. move.b d2,($000d,a5)
  9615. move.l (a6)+,($000e,a5)
  9616. move.l (a6)+,($0012,a5)
  9617. bsr.w L00cba6
  9618. lea.l ($001a,sp),sp
  9619. rts
  9620. L00cb0a:
  9621. lea.l (-$001a,sp),sp
  9622. movea.l sp,a5
  9623. move.b #$1a,($0000.w,a5)
  9624. move.b d1,($0001,a5)
  9625. move.b d7,($0002,a5)
  9626. bsr.w L00defa
  9627. clr.l d0
  9628. tst.b ($0003,a5)
  9629. bne.s L00cb2c
  9630. moveq.l #$ff,d0
  9631. L00cb2c:
  9632. lea.l ($001a,sp),sp
  9633. rts
  9634. L00cb32: