home *** CD-ROM | disk | FTP | other *** search
-
-
-
- January 11, 1986
- This is the READ-ME file from the Z80DIS.LBR package, version 2.1
- ------------------------------------------------------===========
-
- Version 2.1 change note:
-
- Versioε 2.░ addeΣ artificia∞ intelligencσ t∩ Z80DIS«
-
- Versioεá 2.▒ correct≤ ß smal∞ buτ iε thσ processinτ oµá INC¼ ì
- áááááDEC¼á anΣá L─ usinτ inde° register≤ I╪ anΣ IY«á Versioεá 2.▒ ì
- áááááals∩á significantl∙ enhance≤ thσ abilitie≤ oµ thσá disassem-ì
- áááááble≥á t∩á distinguisΦ betweeε ASCI╔ blanδ (2░ hex⌐á anΣá thσ ì
- áááááinstructioεá "J╥ NZ,xxxxó (als∩ 2░ hex⌐ whicΦ lead≤ t∩á lot≤ ì
- áááááanΣ lot≤ oµ phon∙ instructioε jum≡ references«á Versioεá 2.░ ì
- áááááworkeΣ wel∞ iε determinatioε oµ correc⌠ breaδ type≤ fo≥ 808░ ì
- ááááácode«á WitΦ versioε 2.1¼á yo⌡ no≈ havσ tha⌠ reliabilit∙ witΦ ì
- áááááZ8░ codσ a≤ well.
-
- Z80DI╙á i≤á aε entirel∙ ne≈ disassemble≥ fo≥ Z8░ baseΣ CP/═á sys-ì
- tems«á Z80DI╙ i≤ writteε iε TURB╧ PASCAL«á Z80DI╙ generate≤á Z8░ ì
- mnemonic≤á anΣ prepare≤ aε assembl∙ languagσ filσ witΦ man∙á spe-ì
- cia∞á feature≤ fo≥ easσ oµ understandinτ thσ inten⌠ oµ thσ disas-ì
- sembleΣ code« Thσ sourcσ fo≥ Z80DI╙ ha≤ grown¼ witΦ thi≤ version¼ ì
- u≡ t∩ 580░ line≤ oµ coding«
-
- WitΦ version≤ 2.░ anΣ higher¼ yo⌡ neeΣ kno≈ ver∙ littlσ abou⌠ thσ ì
- forma⌠ oµ thσ *.CO═ filσ t∩ producσ ß nearl∙ finisheΣ sourcσ filσ ì
- iε mos⌠ cases« Iε additioε ß largσ numbe≥ oµ conveniencσ feature≤ ì
- anΣ default≤ havσ beeε addeΣ tha⌠ werσ no⌠ presen⌠ iε versioεá 1« ì
- ┴ ful∞ synopsi≤ oµ thσ version≤ oµ thσ prograφ iε curren⌠ distri-ì
- butioεá i≤ includeΣ iε thσ Z80DIS20.DO├ file«á Highlight≤ oµá thσ ì
- curren⌠ change≤ follo≈ a⌠ thσ enΣ oµ thi≤ paper.
-
- BotΦá thσá Z80DI╙ prograφ anΣ thσ Z80DI╙á documentatioεá arσá (C⌐ ì
- Copyrigh⌠á 198╡ anΣ 198╢ b∙ KennetΦ Gielow╗á Al∞ Right≤ Reserved« ì
- Whilσá ╔á aφ freel∙ distributinτ thσ binar∙ codσá fo≥á non-profi⌠ ì
- use¼ ╔ aφ reservinτ thσ sourcσ codσ a≤ ß tradσ secret.
-
- Thi≤á prograφ require≤ ß Z8░ baseΣ compute≥ runninτ CP/═á versioε ì
- 2.▓á o≥á higher«á Thσ codσ wa≤ compileΣ fo≥ ß 50╦á TPA╗á thσá to≡ ì
- addres≤ i≤ C7FF« Thi≤ slightl∙ smal∞ sizσ wa≤ donσ fo≥ compatibi-ì
- lit∙ witΦ CP/═ 3.░ anΣ ZCPR3.
-
- Thσ followinτ file≤ wil∞ bσ founΣ oε Z80DIS21.LB╥ fo≥ thi≤á prog-ì
- raφ distributioε librar∙ package:
-
- Z80DIS.COM - thσ disassembler program
- Z80DIS.000 - overla∙ file fo≥ Z80DIS
- Z80DIS.00▒ - overlay file for Z80DIS
-
- ZDINSTAL.COM - a terminal command installatioε program
- ZDINSTAL.MSG - contain≤ tex⌠ oµ ZDINSTA╠ message≤
- ZDINSTAL.DTA - contain≤ termina∞ characteristic≤ data
-
- Z80DIS20.DOC - aε abbreviateΣ use≥ manua∞ iε read∙ t∩ prin⌠ ì
- áááááááááááááááááááááformat« (Seσ documentatioε noticσ ⌐
-
- è
-
-
-
-
-
- Z80DIS 2.1 01/11/86
-
-
- Thσ Z80DI╙ binar∙ i≤ iε threσ files« Thσ ZDINSTA╠ file≤ arσ baseΣ ì
- oεá thσ TURB╧ Toolbo° GINS╘ prograφ anΣ wil∞ tailo≥ thσá interac-ì
- tivσ display≤ t∩ you≥ terminal.
-
- Thσá prograφá i≤ eas∙ t∩ usσ witΦ interactivσ display≤ fo≥á para-ì
- mete≥ specification«á Al∞ contro∞ parameter≤ havσ default≤ prese⌠ ì
- t∩á thσ mos⌠ likel∙ values«á Thσ DO├ filσ i≤ thσ tex⌠ oµ ßá shor⌠ ì
- use≥ manua∞ whicΦ explain≤ mos⌠ oµ thσ importan⌠ point≤ needeΣ t∩ ì
- ge⌠ going.
- DOCUMENTATIO╬ NOTIC┼
- --------------------
- Thσ original¼ forty-plu≤ pagσ use≥ manua∞ gavσ extensivσ example≤ ì
- anΣá useΣá disassembl∙ oµ thσ publiπ domaiε prograφ D.CO═á a≤á aε ì
- example«á Unfortunately¼ witΦ thσ addition≤ t∩ documen⌠ thσ newe≥ ì
- feature≤á anΣá givσ additiona∞ suggestion≤á fo≥á use¼á tha⌠á use≥ ì
- manua∞á anΣ expandeΣ prograφ togethe≥ havσ botΦ gotteε s∩á largσ ì
- tha⌠á mos⌠ systeφ operator≤ woulΣ no⌠ carr∙ thσ completσ library« ì
- Somethinτá haΣ t∩ give«á ╔ fee∞ tha⌠ thσ prograφ i≤ largel∙á selµ ì
- explanator∙á s∩á tha⌠ yo⌡ caε ge⌠ starteΣ ver∙ wel∞ witΦá onl∙á ß ì
- shorteneΣ manual«á Thi≤ abbreviateΣ manua∞ i≤ includeΣ here«á Thσ ì
- shor⌠ use≥ manua∞ deal≤ mainl∙ witΦ installinτ thσ Z80DI╙ prograφ ì
- anΣ doinτ ß simplσ disassembly«á Thi≤ shor⌠ manua∞ i≤ al∞ tha⌠á ß ì
- casua∞ use≥ woulΣ probabl∙ need.
-
- Thσá longe≥ manua∞ expand≤ oε thσ discussioε oµ thσ feature≤á anΣ ì
- explain≤á thσá step-wisσá approacΦ t∩ dealinτá witΦá mucΦá large≥ ì
- sourcσ codes« Thσ manua∞ als∩ deal≤ witΦ disassemblinτ codσ whicΦ ì
- relocate≤á itself«á Extensivσá example≤ arσ included«á Al∞á erro≥ ì
- message≤ anΣ secondar∙ option≤ arσ discusseΣ iε detail.
-
- Thσ ful∞ Z80DI╙ USE╥ MANUA╠ i≤ availablσ b∙ mail«á ╔ aφ askinτá ß ì
- nomina∞á chargσá oµ ñ 20.0░ whicΦ include≤ thσá manual¼á postage¼ ì
- handling¼ anΣ aε updatσ notificatioε service« Yo⌡ arσ granteΣ thσ ì
- righ⌠á t∩ makσ not-for-profi⌠ copie≤ oµ thσ manual«á Thσá prograφ ì
- itselµá i≤á no⌠á availablσ b∙ mai∞ a≤ ╔ d∩á no⌠á havσá extensive¼ ì
- multi-forma⌠ disδ cop∙ capability«á Thσ notificatioε servicσ wil∞ ì
- consis⌠á oµ ß lette≥ t∩ yo⌡ anytimσ ß ne≈ versioε i≤ releaseΣá s∩ ì
- tha⌠ yo⌡ ma∙ bσ oε thσ lookou⌠ fo≥ it.
-
- T∩á orde≥ ß cop∙ oµ thσ Z80DI╙ USE╥ MANUAL¼á senΣ ß reques⌠á witΦ ì
- you≥ name¼ address¼ anΣ ß checδ fo≥ ñ 20.0░ t∩ --
-
- KennetΦ Gielow
- 7╣ Tuli≡ Lane
- Pal∩ Alto¼ C┴ 94303
-
- -----------------------------------------------------------------
-
- FEATURE╙ O╞ Z80DIS
- ------------------
- Thσá majo≥á featurσá oµ Z80DI╙ i≤ aε extensivσá analysi≤á oµá thσ ì
- memor∙á usagσ b∙ thσ prograφ unde≥ investigation«á Thi≤á analysi≤ ì
- capabilit∙á form≤ thσ basi≤ fo≥ aε automatiπ partitioninτ oµá thσ ì
- codσ t∩ generatσ thσ breaδ table«á Thi≤ analysi≤ als∩ produce≤á ß ì
- fully-annotateΣ cros≤ referencσ oµ al∞ addresses.
-
- ┴á disassemble≥á mus⌠ kno≈ whethe≥ thσ byte≤ arσ instruction≤á o≥ ìè
-
- 2
-
-
-
- Z80DIS 2.1 01/11/86
-
-
- datßá iε orde≥ t∩ proceed«á Z80DI╙ i≤ thσ firs⌠á disassemble≥á t∩ ì
- producσá it≤á owεá breaδ tablσ fo≥ thi≤á purpose«á Somσá previou≤ ì
- programs¼ sucΦ a≤ RESOURCE¼ havσ includeΣ ß searcΦ fo≥ ASCI╔ tex⌠ ì
- regions¼á bu⌠ havσ lef⌠ thσ verificatioε anΣ interpretatioε u≡ t∩ ì
- thσá user«á Mos⌠ othe≥ disassembler≤ arσ fooleΣ b∙ thσá tricδá oµ ì
- addinτá nonsensσ byte≤ afte≥ jump≤ t∩ causσ thσ analysi≤ t∩á fal∞ ì
- ou⌠ oµ synchronizatioε witΦ instructioε codσ interpretation«
-
- Z80DI╙á produce≤ aε outpu⌠ listinτ whicΦ itemize≤ al∞á addresse≤ ì
- referenceΣ b∙ thσ code¼á distinguishe≤ type≤ oµ labe∞ references¼ ì
- mark≤á subroutine≤á anΣá jump≤ anΣ produce≤ aεá annotateΣá cross-ì
- reference«á Thi≤ listinτ show≤ thσ exac⌠ modσ oµ usagσ fo≥á ever∙ ì
- reference║á Jum≡ absolute¼ Jum≡ relative¼ Call¼ Restart¼ LoaΣ 16-ì
- bit¼á Storσ 16-bit¼ Immediatσ 16-bit¼ LoaΣ 8-bit¼ Storσ 8-bit« Iε ì
- versioεá 2.1¼á thi≤ listinτ als∩ show≤ thσ breaδ tablσ regioεá oµ ì
- residenc∙á fo≥á eacΦ labe∞ s∩ tha⌠ yo⌡ ma∙ inspec⌠ thσá lis⌠á fo≥ ì
- inconsistencies.
-
- Aεá addres≤ labelinτ conventioε assist≤ iε understandinτ thσ ì
- assembl∙á codσ generated«á EacΦ labe∞ generateΣ oεá thσá assembl∙ ì
- listinτá indicates¼á b∙ format¼á no⌠ onl∙ thσ generiπ typσ (Jump¼ ì
- Call¼ Data¼ Other⌐ oµ an∙ references¼ bu⌠ als∩ thσ singularit∙ oµ ì
- thσ reference.
-
- Fo≥á example¼á J#02E│ useΣ a⌠ addres≤ 02E│á indi-ì
- áááááááááácate≤ tha⌠ onl∙ onσ referencσ wa≤ madσ t∩ addres≤ ì
- áááááááááá02E│ anΣ tha⌠ tha⌠ referencσ wa≤ ß JUMP.
-
- Iεá additioε t∩ helpinτ yo⌡ b∙ automatiπ analysi≤ oµ memor∙á use¼ ì
- Z80DI╙ als∩ assist≤ yo⌡ b∙ stylinτ thσ presentatioε oµ thσ disas-ì
- sembleΣ code«á Thσ disassembleΣ codσ i≤ outpu⌠ iε tw∩ forms║ BotΦ ì
- thσ usua∞ *.MA├ filσ anΣ ß printe≥ formatteΣ *.PR╬ file.
-
- Thσ *.PR╬ filσ i≤ styleΣ t∩ looδ likσ thσ outpu⌠ oµ aεá assemble≥ ì
- witΦ botΦ thσ instruction≤ anΣ assembleΣ byte≤ shown«á Thσ juxta-ì
- positioεá oµá thσá hexadecima∞ byte≤ anΣ thσá assembl∙á mnemonic≤ ì
- allow≤á thσá use≥ t∩ recognizσ error≤ causeΣá b∙á aεá incorrectl∙ ì
- defineΣ breaδ table«
-
- -----------------------------------------------------------------
-
- ┴ persona∞ note:
-
- ╔á wrotσ thi≤ disassemble≥ becausσ ╔ coulΣ no⌠ finΣá anothe≥ ì
- tha⌠á woulΣá reall∙á opeε u≡ ß foreigεá prograφá fo≥á inspection« ì
- RESOURC┼á anΣá it≤ spin-off≤ givσ yo⌡ onl∙ ß pin-holσ looδá a⌠á ß ì
- prograφá withou⌠ indicatinτ thσ importan⌠ interaction≤ witΦ othe≥ ì
- part≤á oµá thσ code«á Z80DI╙ rectifie≤ tha⌠ lacδ vißá thσá cross-ì
- reference¼á disassembl∙ comments¼á anΣ automatiπ structurσ analy-ì
- sis« ╔ hopσ tha⌠ yo⌡ wil∞ finΣ i⌠ a≤ usefu∞ a≤ ╔ have«
-
- Kenneth Gielow
-
-
-
-
-
-
-
- 3
-
-
-
- Z80DIS 2.1 01/11/86
-
-
- Significant Changes in Version 2.1
- ----------------------------------
-
- 1⌐ BU╟ CORRECTION║á Durinτ automatiπ breaδ tablσ creatioε iε ì
- versioε 2.0¼á thσ code≤ DD34¼á DD35¼á DD36¼ FD34¼ FD35¼ FD3╢ werσ ì
- no⌠á correctl∙á recognized«á Thi≤ resulteΣ iεá falsσá assumption≤ ì
- abou⌠á thσá legalit∙á oµ somσ Z8░ codσ region≤á whicΦá werσá theε ì
- though⌠ t∩ bσ datß region≤ rathe≥ thaε instructioε regions«á Thi≤ ì
- ha≤ beeε correcteΣ iε versioε 2.1.
-
- 2⌐ IMPROVEMEN╘ I╬ HANDLIN╟ J╥ REFERENCES║á Iεá disassemblinτ ì
- 808░á coding¼á instructioε jump≤ anΣ call≤ usσ 3-bytσ addressing╗ ì
- tha⌠ i≤ unambiguou≤ anΣ no⌠ easil∙ misinterpreted« WitΦ Z8░ code¼ ì
- ASCI╔ tex⌠ block≤ contaiε code≤ tha⌠ arσ easil∙ mistakeε fo≥á Z8░ ì
- relativσá jumps╗á tha⌠á create≤ apparen⌠ jum≡ reference≤ t∩á codσ ì
- withiεá 12╕ byte≤ beforσ o≥ afte≥ thσá misinterpreteΣá byte«á Thσ ì
- ASCI╔ blanδ (2░ hex⌐ i≤ especiall∙ baΣ a≤ i⌠ look≤ exactl∙ likσ ß ì
- "J╥ NZ,xxxxó code« Versioε 2.▒ ha≤ beeε mucΦ improveΣ t∩ distrus⌠ ì
- relativσá jum≡ reference≤ a≤ ß basi≤ fo≥ declarinτ ß regioε t∩ bσ ì
- instructions«á Versioεá 2.▒á examine≤ corroborativσá evidencσá t∩ ì
- distinguisΦ ASCI╔ datß froφ instructioε codes«
-
- 3⌐ OTHE╥ IMPROVEMENTS║á Thσ entirσ Exper⌠ systeφá comprisinτ ì
- thσ Automatiπ Breaδ Determinatioε featurσ wa≤ enhanceΣ t∩ yielΣ ß ì
- morσ completσ analysi≤ oµ thσ codσ structure.
-
- Highlight≤ oµ Change≤ iε Versioε 2.0
- ------------------------------------
-
- 1⌐ AUTOMATI├ BREA╦ TABL┼ CREATION║ Wheε thσ prograφ ask≤ fo≥ ì
- breaδá tablσ inputs¼á yo⌡ ma∙ no≈ ente≥ '*º whicΦ wil∞ trigge≥á ß ì
- detaileΣ analysi≤ oµ thσ structurσ anΣ relationship≤ oµ thσ inpu⌠ ì
- code.
-
- 2⌐ Thσ CO═ filσ anΣ overla∙ file≤ fo≥ Z80DI╙ n∩ longe≥á neeΣ ì
- t∩ bσ oε you≥ defaul⌠ disδ drive«
-
- 3⌐á Thσá cross-referencσ listinτ no≈ show≤ thσá breaδá tablσ ì
- regioε oµ residenc∙ fo≥ eacΦ label.
-
- 4⌐á Overflo≈ oµ memor∙ o≥ disδ spacσ durinτ pas≤ ▒ wil∞á no⌠ ì
- abor⌠ execution.
-
- 5⌐á Yo⌡ ma∙ no≈ disassemblσ direc⌠ t∩ you≥ printe≥ b∙ speci-ì
- fyinτ LST║ a≤ thσ lis⌠ filσ name.
-
- 6⌐á Yo⌡á ma∙á no≈ suppres≤ creatioε oµ eithe≥ .PR╬á o≥á .MA├ ì
- outpu⌠ files.
-
- 7⌐ Thσ defaul⌠ namσ fo≥ thσ breaδ tablσ savσ filσ i≤ no≈ thσ ì
- samσ namσ a≤ tha⌠ oµ you≥ inpu⌠ file«
-
- _________________________________________________________________
- CP/M is a registered trademark of Digital Research Inc.,
- TURB╧ PASCA╠ i≤ ß trademarδ oµ BorlanΣ International,
- Z-80 is a trademark of Zilog Corp.
-
-
-
- 4
-
-
-