home *** CD-ROM | disk | FTP | other *** search
-
-
-
- MONITOR.ASM
-
- Version 2.3
-
- Gary M. Morin
- MTX Corp.
- 941 Ironwood #273
- Rochester, MI 48063
-
-
- INTRODUCTION
-
- MONITO╥á i≤á ß systeφ monito≥ prograφ designeΣ t∩ si⌠á u≡á iε ì
- higΦá memor∙á providinτ facilitie≤ fo≥á performinτá basiπá systeφ ì
- functions«áá Thesσáá includσá memor∙áá manipulation¼áá Subroutinσ ì
- execution¼á He° math¼ por⌠ inpu⌠ anΣ output« Thσ prograφ use≤ thσ ì
- monito≥á prograφ presenteΣ iε Alaε R«á Miller'≤ 8080/Z8░ Assembl∙ ì
- Language¼á Technique≤ fo≥ ImproveΣ Programminτ a≤ ß basσ anΣ theε ì
- add≤á thσ facilitie≤ t∩ makσ i⌠ practica∞ a≤ ß programminτá tool« ì
- Thesσá includσá ßá hel≡ facility¼á redirectioεá oµá outpu⌠á t∩á ß ì
- printe≥á anΣ gentlσ exit«á I⌠ include≤ man∙ oµ thσ facilitie≤á oµ ì
- DD╘á o≥á SI─ bu⌠ i≤ smal∞ anΣ caε bσ alloweΣ t∩ residσ iεá memor∙ ì
- durinτá thσá wholσ debugginτ process«á Sincσ i⌠ ha≤ it≤á owεá I/╧ ì
- driver≤ i⌠ work≤ wel∞ wheε messinτ witΦ CP/═ itself«
-
- Thi≤ prograφ als∩ work≤ ver∙ wel∞ witΦ thσ facilitie≤ oµ ZCP═ ì
- anΣá it≤á JUM╨ function«á ┴ programme≥ caε jum≡á bacδá anΣá fortΦ ì
- betweeε thσ monito≥ anΣ thσ operatinτ systeφ usinτ thσ facilitie≤ ì
- oµ both«
-
- Thσá tota∞ prograφ lengtΦ wheε installeΣ iε higΦ memor∙á les≤ ì
- thaεáá 2δá anΣá caεá easil∙á bσá modifieΣá duσá t∩á it≤áá modula≥ ì
- construction.
-
- INSTALLATION
-
- Versioε 2.┤ i≤ designeΣ t∩ ruε oε ß NortΦ Sta≥ Horizoε witΦ ß ì
- freσá "windowó oµ memor∙ abovσ thσ memor∙ mappeΣ disδá controlle≥ ì
- a⌠ EC00h« Fo≥ thi≤ typσ oµ machinσ yo⌡ caε jus⌠ assemblσ thσ codσ ì
- anΣá ruε it«á Iµ yo⌡ desirσ thσ monito≥ t∩ ruε belo≈ CC╨ o≥ abovσ ì
- FDO╙ yo⌡ wil∞ havσ t∩ relocatσ thσ fina∞ addresse≤ iε thσá prope≥ ì
- places« Yo⌡ wil∞ als∩ havσ t∩ assigε thσ correc⌠ inpu⌠ anΣ outpu⌠ ì
- port≤ anΣ thσ statu≤ bytes.
-
- Remembe≥á tha⌠ program≤ likσ MBASI├ usσ al∞ oµ thσ memor∙á u≡ ì
- t∩ FDO╙ unles≤ specificall∙ tolΣ t∩ d∩ otherwise«á The∙ wil∞ kil∞ ì
- an∙ prograφ belo≈ CC╨ iµ yo⌡ don'⌠ protec⌠ it.
-
- EXECUTION
-
- Thσ monito≥ i≤ evokeΣ initiall∙ b∙ typing:
-
- MONITOR
-
- froφá tha⌠á poin⌠ iµ yo⌡ havσ ZCP╥ installeΣ yo⌡ simpl∙á neeΣá t∩ ìè
-
- 1
-
-
-
-
-
-
-
-
- jum≡ t∩ thσ runninτ addres≤ oµ thσ code.
-
- JUMP F800
-
- to return to CP/M use the ^C or B commands.
-
-
-
- COMMANDS
-
- The following commands are available in the monitor:
-
- ASCII LOAD, DUMP -->A[ L D S ] [1ST ADR] [2ND ADR]
- or SEARCH
- BACK GENTLY -->B
- CALL SUBROUTINE -->C[ADR]
- DUMP MEMORY -->D[1ST ADR] [2ND ADR]
- FILL MEMORY -->F[1ST ADR] [2ND ADR] [HEX BYTE]
- -->F[1ST ADR] [2ND ADR] ''[ASCII]
- GO ANYWHERE -->G[ADR]
- HEX MATH + - -->H[1ST HEX] [2ND HEX]
- INPUT FROM PORT -->I[PORT NUMBER]
- LOAD MEMORY -->L[START ADR]
- ADR BYTE [NEW BYTE] ^X HALT
- MOVE MEMORY -->M[1ST ADR] [2ND ADR] [NEW START]
- OUTPUT TO PORT -->O[PORT NUMBER] [BYTE]
- PRINTER TOGGLE -->P
- REPLACE MEMORY -->R[1ST ADR] [2ND ADR] [TARGET] [BYTE]
- SEARCH FOR BYTE -->S[1ST ADR] [2ND ADR] [BYTE1] [BYTE2]
- COMMAND TABLE -->T
- COMPARE BLOCKS -->V[1ST ADR] [2ND ADR] [1ST ADR BLOCK2]
- DISP STACK POINT -->X
-
- ASCII LOAD or DUMP
- Typing AL transforms the Load command into an ASCII Input.
- see LOAD
- Typing AD transforms the Dump command into an ASCII dump.
- see DUMP
- Typing AS transforms the Search command into a search for
- one or two ASCII characters.
- see SEARCH
-
- BACK GENTLY
- Typing B will return you to the command level of CP/M.
-
- CALL SUBROUTINE
- Typinτá ├á followeΣ b∙ aε addres≤ wil∞ cal∞á ßá subroutinσ ì
- startinτá a⌠á tha⌠á address«á Contro∞á i≤á returneΣá t∩á thσ ì
- monitor.
-
- Example:
- CF800
-
- DUMP MEMORY
- Typinτá ─á followeΣ b∙ tw∩ addresse≤ wil∞ dum≡ thσá memor∙ ìè
-
- 2
-
-
-
-
-
-
-
-
- between those addresses.
-
- Example:
- D100 200
- AD100 200
-
- FILL MEMORY
- Typinτá ╞ followeΣ b∙ tw∩ addresse≤ anΣ eithe≥ ß he°á bytσ ì
- o≥ aε ASCI╔ characte≥ iε singlσ quote≤ wil∞ fil∞ thσá memor∙ ì
- blocδ defined by the addresses with the indicated byte.
-
- Example:
- F100 200 FF
- FF000 F800 '7'
-
- GO ANYWHERE
- Typinτ ╟ followeΣ b∙ aε addres≤ cause≤ aε unconditiona∞ ì
- branch to the code at that location.
-
- Example:
- G100
-
- HEX MATH + -
- Typinτ ╚ followeΣ b∙ tw∩ hexadecima∞ number≤ wil∞ generatσ ì
- two values, the sum and the difference.
-
- Example:
- H3401 5677
-
- INPUT FROM PORT
- Typinτá ╔á followeΣá b∙á ßá por⌠á numbe≥á wil∞á displa∙á ß ì
- character retrieved from that port on the screen
-
- Example:
- I02
-
- LOAD MEMORY
- Typinτá ╠ followeΣ b∙ aε addres≤ wil∞ star⌠ displayinτá ß ì
- sequencσ oµ addresse≤ anΣ thσ byte≤ the∙ contain« Afte≥ eacΦ ì
- bytσá i≤ displayeΣ yo⌡ ma∙ loaΣ tha⌠ addres≤ witΦ ß ne≈ bytσ ì
- by typing that byte in. To terminate the process type ^X.
-
- Example:
- L500
- 500 6F 70
- 501 4E ^X
-
- AL This goes into memory <cr> <lf>
- including the cr lf <cr> <lf>
- ^X
-
- MOVE MEMORY
- Typinτá ═ followeΣ b∙ threσ addresse≤ wil∞ movσ thσá blocδ ì
- defineΣá b∙á thσ firs⌠ tw∩ addresse≤á t∩á thσá blocδ ì
- beginninτ a⌠ ìè
-
- 3
-
-
-
-
-
-
-
-
- the third address.
-
- Example:
- M100 200 A00
-
- OUTPUT TO PORT
- Typinτá ╧á followeΣ b∙ ß por⌠ numbe≥ anΣ ß bytσ wil∞á senΣ ì
- the indicated byte out the port.
- Example:
- O04 1A
-
- PRINTER TOGGLE
- Typing P will toggle the list device
-
- REPLACE MEMORY
- Typinτá ╥á followeΣ b∙ tw∩ addresse≤ ß targe⌠ bytσá anΣá ß ì
- replacemen⌠á bytσ wil∞ substitutσ al∞ thσ occurence≤ oµá thσ ì
- target between the two addresses with the replacement byte.
-
- Example:
- R100 200 1A 1B
-
- SEARCH FOR BYTE
- Typinτá ╙ followeΣ b∙ tw∩ addresse≤ anΣ onσ o≥á tw∩á byte≤ ì
- wil∞á displa∙ thσ thσ addres≤ oµ thσ firs⌠ occurencσ oµ tha⌠ ì
- byte which is located between the two addresses.
-
- Example:
- S500 A000 1D
- S100 300 1D 1F
- AS100 500 AB
-
- COMMAND TABLE
- Typinτá ╘á wil∞ generatσ ß cop∙ oµ thσ commanΣ hel≡ filσá oε ì
- the user's terminal
-
- COMPARE BLOCKS
- Typinτá ╓ followeΣ b∙ threσ addresse≤ wil∞ displa∙ oεá thσ ì
- screeεá difference≤ betweeε tw∩ block≤ oµ memor∙ defineΣá b∙ ì
- thσ addresses« Thσ firs⌠ tw∩ addresse≤ definσ thσ basσ blocδ ì
- thσá thirΣ addres≤ define≤ thσ beginninτ oµ thσ blocδá t∩á bσ ì
- compared.
-
- Example:
- V100 200 FF0 1000
-
- DISP STACK POINT
- Typing X will display the stack pointer on the screen
-
-
-
- DISCLAIMER
-
- Thσá MT╪ Coprporatioε doe≤ no⌠ suppor⌠ thi≤ codσ no≥ makσ an∙ ì
- guaranteσá a≤ t∩ thσ suitabilit∙ o≥ applicabilit∙ oµ thi≤ prograφ ìè
-
- 4
-
-
-
-
-
-
-
-
- fo≥ ß particula≥ applicatioε o≥ compute≥ system.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
-
-
-
-
-