Home » Archimedes archive » Acorn User » Acorn User - Shareware Collection (1993).adf » Zap » !Zap/Docs/E-Library

!Zap/Docs/E-Library

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Archimedes archive » Acorn User » Acorn User - Shareware Collection (1993).adf » Zap
Filename: !Zap/Docs/E-Library
Read OK:
File size: 3A89 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM
   11REM Library defining Zap labels.
   20REM code% should point to some area of workspace.
   30REM
   40
   50DEF PROCset_up_file_blk_vars
   80FOR pass=%1100 TO %1110 STEP 2:P%=0:O%=code%:[OPTpass
   90
  100\L File block variables
  110
  120.f_ptr              EQUD 0    \ pointer to file buffer / -1 if deleted
  130.f_bufl             EQUD 0    \ length of file buffer
  140.f_len              EQUD 0    \ length of file
  150.f_name             EQUD 0    \ pointer to filename
  160.f_load             EQUD 0    \ load address of file
  170.f_exec             EQUD 0    \ exec address of file
  180.f_flags            EQUD 0    \ file flags
  190.f_uptr             EQUD 0    \ pointer to undo buffer
  200.f_ubufl            EQUD 0    \ length of undo buffer
  210.f_ulen             EQUD 0    \ length of valid data in undo buffer (l)
  220.f_undo             EQUD 0    \ offset of main undo pointer (u)
  230.f_undop            EQUD 0    \ offset of undo block sub-pointer (p)
  240.f_yank             EQUD 0    \ -1 if not in yank / off of yank pointer
  250.f_splito           EQUD 0    \ offset in file (&buf) of start of split
  260.f_splite           EQUD 0    \ offset in buf of end of split
  270.f_splits           EQUD 0    \ size  of split=splite-splito
  280.f_mptr             EQUD 0    \ pointer to marker buffer
  290.f_mbufl            EQUD 0    \ length of marker buffer
  300.f_mlen             EQUD 0    \ length of valid data in marker buffer
  310.f_mark             EQUD 0    \ current offset in marker buffer (EA)
  320.f_res0             EQUD 0    \ reserved
  330.f_source           EQUD 0    \ source word corresponding to create type
  340.f_res1             EQUD 0    \ reserved
  350.f_res2             EQUD 0    \ reserved
  360.f_altered          EQUD 0    \ first altered offset in file /-1
  370.f_shiftable        EQUD 0    \ first shiftable offset in file /-1
  380.f_change           EQUD 0    \ signed change of shiftable offset
  390.f_depth            EQUD 0    \ multiple operation depth / 0
  400.f_links            EQUD 0    \ v links to other files
  410.f_cmode            EQUD 0    \ mode which 'owns' file / -1
  420
  430\L
  440
  450]:NEXT
  470ENDPROC
  480
  490DEF PROCset_up_wind_blk_vars
  500FOR pass=%1100 TO %1110 STEP 2:P%=0:O%=code%:[OPTpass
  510
  520\L Window block variables
  530
  540.w_handle           EQUD 0    \ window handle / -1 if deleted
  550.w_minx             EQUD 0    \ min scn x
  560.w_miny             EQUD 0    \ min scn y
  570.w_maxx             EQUD 0    \ max scn x
  580.w_maxy             EQUD 0    \ max scn y
  590.w_scrollx          EQUD 0    \ x scroll
  600.w_scrolly          EQUD 0    \ y scroll
  610.w_infront          EQUD 0    \ window handle of window in front
  620.w_windowflags      EQUD 0    \ wimp window flags
  630.w_file             EQUD 0    \ offset in file_list of file showing
  640.w_format           EQUD 0    \ display format
  650.w_width            EQUD 0    \ width of work area in chars
  660.w_height           EQUD 0    \ height of work area in chars
  670.w_txt              EQUD 0    \ pointer to cached text buffer
  680.w_txth             EQUD 0    \ height of cached txt buf in lines
  690.w_txtw             EQUD 0    \ width of cached txt buf in chars (mult 8)
  700.w_txtn             EQUD 0    \ number of lines cached
  710.w_coff             EQUD 0    \ offset in text of first cached line
  720.w_cline            EQUD 0    \ line number in text of first cached line
  730.w_clogl            EQUD 0    \ logical line number of first cached line
  740.w_tab              EQUD 0    \ coltab width
  750.w_tabc             EQUD 0    \ actual tab character code (x4)
  760.w_cr               EQUD 0    \ code of return/line feed
  770.w_flags            EQUD 0    \ (my) window flags
  780.w_title            EQUD 0    \ pointer to window title buffer
  790.w_bpl              EQUD 0    \ bytes per line (for mzap) / width of text
  800.w_margin           EQUD 0    \ actual width of margin (inc line nos)
  810.w_rl               EQUD 0    \ height in raster lines of each character
  820.w_rw               EQUD 0    \ width in pixels of each character
  830.w_rh               EQUD 0    \ text height in pixels (not inc spacing)
  840.w_addr             EQUD 0    \ address of first byte in display
  850.w_stline           EQUD 0    \ line number of first line in display
  860.w_titlelen         EQUD 0    \ title length (excluding 0)
  870.w_titbuf           EQUD 0    \ address of title showing buffer
  880.w_titlen           EQUD 0    \ length of title showing string
  890.w_mwidth           EQUD 0    \ user required margin width (no line nos)
  900.w_tabchar          EQUD 0    \ user required tab char code (x4)
  910.w_linesp           EQUD 0    \ user required line spacing
  920.w_savedo           EQUD 0    \ fixed off / fixed line off before
  930.w_savedl           EQUD 0    \ pixs from top / phy line of off
  940.w_savedc           EQUD 0    \ change in phy line for shiftable
  950.w_savedh           EQUD 0    \ w_height at multiop start
  960.w_savedlc          EQUD 0    \ phy line of fixed for one op
  970.w_wrapwidth        EQUD 0    \ wordwrap width
  980.w_togminx          EQUD 0    \ toggle size min x
  990.w_togminy          EQUD 0    \ toggle size min y
 1000.w_togmaxx          EQUD 0    \ toggle size max x
 1010.w_togmaxy          EQUD 0    \ toggle size max y
 1020.w_res0             EQUD 0    \ reserved word 0
 1030.w_res1             EQUD 0    \ reserved word 1
 1040.w_res2             EQUD 0    \ reserved word 2
 1050.w_res3             EQUD 0    \ reserved word 3
 1060.w_res4             EQUD 0    \ reserved word 4
 1070.w_res5             EQUD 0    \ reserved word 5
 1080.w_res6             EQUD 0    \ reserved word 6
 1090.w_res7             EQUD 0    \ reserved word 7
 1100.w_res8             EQUD 0    \ reserved word 8
 1110.w_res9             EQUD 0    \ reserved word 9
 1120.w_res10            EQUD 0    \ reserved word 10
 1130.w_res11            EQUD 0    \ reserved word 11
 1140.w_res12            EQUD 0    \ reserved word 12
 1150.w_res13            EQUD 0    \ reserved word 13
 1160.w_res14            EQUD 0    \ reserved word 14
 1170.w_res15            EQUD 0    \ reserved word 15
 1180.w_res16            EQUD 0    \ reserved word 16
 1190.w_mode0            EQUD 0    \ user required text line width
 1200.w_mode1            EQUD 0    \ user required byte line width
 1210.w_mode2            EQUD 0    \ user required word line width
 1220.w_mode3            EQUD 0    \ user required ascii line width
 1230.w_mode4            EQUD 0    \ user required code line width
 1240.w_mode5            EQUD 0
 1250.w_mode6            EQUD 0
 1260.w_mode7            EQUD 0
 1270.w_mode8            EQUD 0
 1280.w_mode9            EQUD 0
 1290.w_mode10           EQUD 0
 1300.w_mode11           EQUD 0
 1310.w_mode12           EQUD 0
 1320.w_mode13           EQUD 0
 1330.w_mode14           EQUD 0
 1340.w_mode15           EQUD 0    \ user required status mode 15
 1350
 1360\L
 1370
 1380]:NEXT
 1400ENDPROC
 1410
 1420DEF PROCset_up_cusr_blk_vars
 1430FOR pass=%1100 TO %1110 STEP 2:P%=0:O%=code%:[OPTpass
 1440
 1450\L Cursor block variables
 1460
 1470.c_wind             EQUD 0    \ offset of window with this caret
 1480.c_line             EQUD 0    \ line of caret in work area
 1490.c_col              EQUD 0    \ column of caret in work area
 1500.c_off              EQUD 0    \ offset of caret in text
 1510.c_loff             EQUD 0    \ start of line offset
 1520.c_width            EQUD 0    \ width of cursor in chars
 1530.c_owind            EQUD 0    \ old window / -1 if none
 1540.c_oline            EQUD 0    \ old plotted line
 1550.c_ocol             EQUD 0    \ old plotted col
 1560.c_owidth           EQUD 0    \ old width / offset for selected regions
 1570
 1580\L
 1590
 1600]:NEXT
 1620ENDPROC
 1630
 1640DEF PROCset_up_entry_vars
 1650FOR pass=%1100 TO %1110 STEP 2:P%=0:O%=code%:[OPTpass
 1660
 1670\L Entry block vars
 1680
 1690.e_module           EQUD 0    \ table offset from module start
 1700.e_title            EQUD 0    \ title offset (max 10)
 1710.e_author           EQUD 0    \ author offset
 1720.e_basemode         EQUD 0    \ mode to call for 0 offsets
 1730.e_mode             EQUD 0    \ mode you would like to be
 1740.e_init             EQUD 0    \ startup code
 1750.e_menu             EQUD 0    \ extension menu
 1760.e_len              EQUD 0    \ length of this table
 1770.e_postload         EQUD 0    \ called after being loaded/created
 1780.e_presave          EQUD 0    \ called before being saved
 1790.e_loading          EQUD 0    \ file being loaded/created
 1800.e_start            EQUD 0    \ window entering this mode
 1810.e_end              EQUD 0    \ window leaving this mode
 1820.e_width            EQUD 0    \ find work area width
 1830.e_linecol          EQUD 0    \ column offset to file offset
 1840.e_lineoff          EQUD 0    \ file offset to column offset
 1850.e_clnlog           EQUD 0    \ log to file off
 1860.e_clnphy           EQUD 0    \ phy to file off
 1870.e_clnoff           EQUD 0    \ file off to phy/log
 1880.e_nextline         EQUD 0    \ find next line which can be shifted down
 1890.e_minus            EQUD 0    \ perform cursor left
 1900.e_plus             EQUD 0    \ perform cursor right
 1910.e_sminus           EQUD 0    \ perform shift left
 1920.e_splus            EQUD 0    \ perform shift right
 1930.e_cminus           EQUD 0    \ perform ctrl minus
 1940.e_cplus            EQUD 0    \ perform ctrl plus
 1950.e_redrawline       EQUD 0    \ redraw a line of the display
 1960.e_redrawlnum       EQUD 0    \ find logical line number
 1970.e_char             EQUD 0    \ insert characters as if typed
 1980.e_delete           EQUD 0    \ delete characters from text
 1990.e_tab              EQUD 0    \ tab key pressed
 2000.e_return           EQUD 0    \ return key pressed
 2010.e_renumber         EQUD 0    \ please renumber
 2020.e_saveandrun       EQUD 0    \ save file and run/compile
 2030.e_linestart        EQUD 0    \ find start of line
 2040.e_lineend          EQUD 0    \ find end of line
 2050.e_linenext         EQUD 0    \ find actual end of line
 2060.e_lineprev         EQUD 0    \ find actual start of line
 2070.e_copy             EQUD 0    \ copy key data
 2080.e_joinline         EQUD 0    \ join this line with the next
 2090.e_splitline        EQUD 0    \ split this line at the cursor
 2100.e_aligncaret       EQUD 0    \ put caret in sensible posn before command
 2110.e_command          EQUD 0    \ someone wants to alter the text
 2120.e_compile          EQUD 0    \ compile / run and don't exit
 2130.e_formattext       EQUD 0    \ format the text from this point
 2140.e_run              EQUD 0    \ run the program being edited
 2150.e_runandquit       EQUD 0    \ as above but then quits
 2160.e_basic            EQUD 0    \ drops into basic (or language)
 2170.e_search           EQUD 0    \ called before a search
 2180.e_replace          EQUD 0    \ replace a string
 2190.e_selection        EQUD 0    \ start/end a selection
 2200.e_click            EQUD 0    \ double/treble click etc
 2210.e_message          EQUD 0    \ unrecognised wimp messages
 2220
 2230\L
 2240
 2250]:NEXT
 2260FOR pass=%1100 TO %1110 STEP 2:P%=0:O%=code%:[OPTpass
 2270
 2280\L zap entry point offsets
 2290
 2300.Zap_AddMode        EQUD 0    \ add new mode to zap
 2310.Zap_Claim          EQUD 0    \ claim heap block
 2320.Zap_Ensure         EQUD 0    \ ensure heap block
 2330.Zap_Free           EQUD 0    \ free heap block
 2340.Zap_MoveBytes      EQUD 0    \ move data
 2350.Zap_SplitBuffer    EQUD 0    \ split text buffer at given point
 2360.Zap_NewTxtStatus   EQUD 0    \ refresh screen after file changed
 2370.Zap_SaveTxtStatus  EQUD 0    \ save info before file changed
 2380.Zap_Command        EQUD 0    \ execute insert/delete command
 2390.Zap_NewWinStatus   EQUD 0    \ recreate window after change
 2400.Zap_SaveWinStatus  EQUD 0    \ save window status before change
 2410.Zap_ReplaceArea    EQUD 0    \ replace one string by another
 2420.Zap_PlotCaret      EQUD 0    \ plot caret at given position
 2430.Zap_ReflectCaret   EQUD 0    \ plot caret at posn only using c_off
 2440.Zap_SetCaret       EQUD 0    \ draw caret
 2450.Zap_ClearCaret     EQUD 0    \ draw old caret position (remove caret)
 2460.Zap_DoCommand      EQUD 0    \ perform the command
 2470.Zap_ShowCursor     EQUD 0    \ make sure given cursor is visible
 2480.Zap_ReadVar        EQUD 0    \ read a zap variable
 2490.Zap_WriteVar       EQUD 0    \ write a zap variable
 2500.Zap_SaveFile       EQUD 0    \ save a file to disc
 2510.Zap_FillWords      EQUD 0    \ fill a given area of memory
 2520.Zap_UpdateLns      EQUD 0    \ update line numbers column
 2530.Zap_EachWindow     EQUD 0    \ call sub for each window on file
 2540.Zap_UpdateCaret    EQUD 0    \ updates caret posn from offset
 2550.Zap_GetWindState   EQUD 0    \ update R8 block with wind posn
 2560.Zap_StartOp        EQUD 0    \ start multiop
 2570.Zap_StopOp         EQUD 0    \ stop multiop
 2580.Zap_CallMode       EQUD 0    \ call a mode entry point using R8
 2590.Zap_CallGivenMode  EQUD 0    \ call mode in R10
 2600.Zap_ReadMode       EQUD 0    \ read info on a mode
 2610.Zap_FindFile       EQUD 0    \ find window on a given file name
 2620.Zap_FindWindow     EQUD 0    \ find window on a loaded file
 2630.Zap_ConvWindOff    EQUD 0    \ convert window off to blk ptr
 2640.Zap_ConvFileOff    EQUD 0    \ convert file off to blk ptr
 2650.Zap_GetWindOff     EQUD 0    \ convert window blk ptr to off
 2660.Zap_GetFileOff     EQUD 0    \ convert file blk ptr to off
 2670.Zap_GotoOffset     EQUD 0    \ move cursor to given posn + mark
 2680.Zap_JumptoOffset   EQUD 0    \ move cursor to given posn nomark
 2690.Zap_FindOffset     EQUD 0    \ find file offset from x,y coord
 2700.Zap_NewFileTitle   EQUD 0    \ update titlebars on a file
 2710.Zap_InsertString   EQUD 0    \ insert string into file
 2720.Zap_CreateFile     EQUD 0    \ create an empty file
 2730.Zap_NewLinkEntry   EQUD 0    \ add an entry to the links table
 2740.Zap_DefaultClick   EQUD 0    \ default mouse click handling
 2750.Zap_PutCaret       EQUD 0    \ put new caret in file
 2760.Zap_DiscardFile    EQUD 0    \ kill file
 2770.Zap_DeleteFile     EQUD 0    \ propmt then kill
 2780.Zap_DiscardWindow  EQUD 0    \ kill window
 2790.Zap_DeleteWindow   EQUD 0    \ prompt then kill window
 2800.Zap_BuildMenu      EQUD 0    \ create a variable length menu
 2810.Zap_ClearSel       EQUD 0    \ clear selected area
 2820.Zap_CreateFileBlk  EQUD 0    \ create a new file block in R9
 2830.Zap_CreateWindBlk  EQUD 0    \ create a new window block in R8
 2840.Zap_GetSel         EQUD 0    \ get info on selected region
 2850.Zap_InsertMark     EQUD 0    \ insert marker at given offset
 2860.Zap_InstallFile    EQUD 0    \ load a file into Zap
 2870.Zap_NewMode        EQUD 0    \ change mode of a file
 2880.Zap_NewTitle       EQUD 0    \ update the title of a window
 2890.Zap_CallBaseMode   EQUD 0    \ call base mode entry point
 2900.Zap_NewView        EQUD 0    \ open a new window on a file
 2910.Zap_ReadSel        EQUD 0    \ read the selected region
 2920.Zap_Replace        EQUD 0    \ perform a search and replace
 2930.Zap_Search         EQUD 0    \ perform a file search
 2940.Zap_Select         EQUD 0    \ select a region
 2950.Zap_AlterSel       EQUD 0    \ alter selected region
 2960.Zap_OffLineCol     EQUD 0    \ convert file offset to X,Y
 2970
 2980\L
 2990
 3000]:NEXT
 3010ENDPROC

�
"� Library defining Zap labels.
3� code% should point to some area of workspace.
�
(
2� �set_up_file_blk_vars
P3� pass=%1100 � %1110 � 2:P%=0:O%=code%:[OPTpass
Z
d\L File block variables
n
xJ.f_ptr              EQUD 0    \ pointer to file buffer / -1 if deleted
�9.f_bufl             EQUD 0    \ length of file buffer
�2.f_len              EQUD 0    \ length of file
�7.f_name             EQUD 0    \ pointer to filename
�8.f_load             EQUD 0    \ load address of file
�8.f_exec             EQUD 0    \ exec address of file
�..f_flags            EQUD 0    \ file flags
�:.f_uptr             EQUD 0    \ pointer to undo buffer
�9.f_ubufl            EQUD 0    \ length of undo buffer
�K.f_ulen             EQUD 0    \ length of valid data in undo buffer (l)
�C.f_undo             EQUD 0    \ offset of main undo pointer (u)
�H.f_undop            EQUD 0    \ offset of undo block sub-pointer (p)
�K.f_yank             EQUD 0    \ -1 if not in yank / off of yank pointer
�K.f_splito           EQUD 0    \ offset in file (&buf) of start of split
A.f_splite           EQUD 0    \ offset in buf of end of split
@.f_splits           EQUD 0    \ size  of split=splite-splito
<.f_mptr             EQUD 0    \ pointer to marker buffer
";.f_mbufl            EQUD 0    \ length of marker buffer
,I.f_mlen             EQUD 0    \ length of valid data in marker buffer
6H.f_mark             EQUD 0    \ current offset in marker buffer (EA)
@,.f_res0             EQUD 0    \ reserved
JL.f_source           EQUD 0    \ source word corresponding to create type
T,.f_res1             EQUD 0    \ reserved
^,.f_res2             EQUD 0    \ reserved
hD.f_altered          EQUD 0    \ first altered offset in file /-1
rF.f_shiftable        EQUD 0    \ first shiftable offset in file /-1
|E.f_change           EQUD 0    \ signed change of shiftable offset
�@.f_depth            EQUD 0    \ multiple operation depth / 0
�:.f_links            EQUD 0    \ v links to other files
�?.f_cmode            EQUD 0    \ mode which 'owns' file / -1
�
�\L
�
�]:�
��
�
�� �set_up_wind_blk_vars
�3� pass=%1100 � %1110 � 2:P%=0:O%=code%:[OPTpass
�
\L Window block variables

A.w_handle           EQUD 0    \ window handle / -1 if deleted
&-.w_minx             EQUD 0    \ min scn x
0-.w_miny             EQUD 0    \ min scn y
:-.w_maxx             EQUD 0    \ max scn x
D-.w_maxy             EQUD 0    \ max scn y
N,.w_scrollx          EQUD 0    \ x scroll
X,.w_scrolly          EQUD 0    \ y scroll
bD.w_infront          EQUD 0    \ window handle of window in front
l5.w_windowflags      EQUD 0    \ wimp window flags
vG.w_file             EQUD 0    \ offset in file_list of file showing
�2.w_format           EQUD 0    \ display format
�?.w_width            EQUD 0    \ width of work area in chars
�@.w_height           EQUD 0    \ height of work area in chars
�A.w_txt              EQUD 0    \ pointer to cached text buffer
�E.w_txth             EQUD 0    \ height of cached txt buf in lines
�M.w_txtw             EQUD 0    \ width of cached txt buf in chars (mult 8)
�:.w_txtn             EQUD 0    \ number of lines cached
�G.w_coff             EQUD 0    \ offset in text of first cached line
�L.w_cline            EQUD 0    \ line number in text of first cached line
�L.w_clogl            EQUD 0    \ logical line number of first cached line
�0.w_tab              EQUD 0    \ coltab width
�B.w_tabc             EQUD 0    \ actual tab character code (x4)
�<.w_cr               EQUD 0    \ code of return/line feed
5.w_flags            EQUD 0    \ (my) window flags
B.w_title            EQUD 0    \ pointer to window title buffer
M.w_bpl              EQUD 0    \ bytes per line (for mzap) / width of text
 I.w_margin           EQUD 0    \ actual width of margin (inc line nos)
*L.w_rl               EQUD 0    \ height in raster lines of each character
4E.w_rw               EQUD 0    \ width in pixels of each character
>K.w_rh               EQUD 0    \ text height in pixels (not inc spacing)
HD.w_addr             EQUD 0    \ address of first byte in display
RH.w_stline           EQUD 0    \ line number of first line in display
\>.w_titlelen         EQUD 0    \ title length (excluding 0)
fC.w_titbuf           EQUD 0    \ address of title showing buffer
pB.w_titlen           EQUD 0    \ length of title showing string
zL.w_mwidth           EQUD 0    \ user required margin width (no line nos)
�D.w_tabchar          EQUD 0    \ user required tab char code (x4)
�>.w_linesp           EQUD 0    \ user required line spacing
�E.w_savedo           EQUD 0    \ fixed off / fixed line off before
�C.w_savedl           EQUD 0    \ pixs from top / phy line of off
�D.w_savedc           EQUD 0    \ change in phy line for shiftable
�=.w_savedh           EQUD 0    \ w_height at multiop start
�@.w_savedlc          EQUD 0    \ phy line of fixed for one op
�2.w_wrapwidth        EQUD 0    \ wordwrap width
�5.w_togminx          EQUD 0    \ toggle size min x
�5.w_togminy          EQUD 0    \ toggle size min y
�5.w_togmaxx          EQUD 0    \ toggle size max x
�5.w_togmaxy          EQUD 0    \ toggle size max y
�3.w_res0             EQUD 0    \ reserved word 0
3.w_res1             EQUD 0    \ reserved word 1
3.w_res2             EQUD 0    \ reserved word 2
3.w_res3             EQUD 0    \ reserved word 3
$3.w_res4             EQUD 0    \ reserved word 4
.3.w_res5             EQUD 0    \ reserved word 5
83.w_res6             EQUD 0    \ reserved word 6
B3.w_res7             EQUD 0    \ reserved word 7
L3.w_res8             EQUD 0    \ reserved word 8
V3.w_res9             EQUD 0    \ reserved word 9
`4.w_res10            EQUD 0    \ reserved word 10
j4.w_res11            EQUD 0    \ reserved word 11
t4.w_res12            EQUD 0    \ reserved word 12
~4.w_res13            EQUD 0    \ reserved word 13
�4.w_res14            EQUD 0    \ reserved word 14
�4.w_res15            EQUD 0    \ reserved word 15
�4.w_res16            EQUD 0    \ reserved word 16
�A.w_mode0            EQUD 0    \ user required text line width
�A.w_mode1            EQUD 0    \ user required byte line width
�A.w_mode2            EQUD 0    \ user required word line width
�B.w_mode3            EQUD 0    \ user required ascii line width
�A.w_mode4            EQUD 0    \ user required code line width
�.w_mode5            EQUD 0
�.w_mode6            EQUD 0
�.w_mode7            EQUD 0
�.w_mode8            EQUD 0
.w_mode9            EQUD 0

.w_mode10           EQUD 0
.w_mode11           EQUD 0
.w_mode12           EQUD 0
(.w_mode13           EQUD 0
2.w_mode14           EQUD 0
<@.w_mode15           EQUD 0    \ user required status mode 15
F
P\L
Z
d]:�
x�
�
�� �set_up_cusr_blk_vars
�3� pass=%1100 � %1110 � 2:P%=0:O%=code%:[OPTpass
�
�\L Cursor block variables
�
�D.c_wind             EQUD 0    \ offset of window with this caret
�>.c_line             EQUD 0    \ line of caret in work area
�@.c_col              EQUD 0    \ column of caret in work area
�;.c_off              EQUD 0    \ offset of caret in text
�8.c_loff             EQUD 0    \ start of line offset
�<.c_width            EQUD 0    \ width of cursor in chars
�;.c_owind            EQUD 0    \ old window / -1 if none
4.c_oline            EQUD 0    \ old plotted line
3.c_ocol             EQUD 0    \ old plotted col
K.c_owidth           EQUD 0    \ old width / offset for selected regions
"
,\L
6
@]:�
T�
^
h� �set_up_entry_vars
r3� pass=%1100 � %1110 � 2:P%=0:O%=code%:[OPTpass
|
�\L Entry block vars
�
�B.e_module           EQUD 0    \ table offset from module start
�9.e_title            EQUD 0    \ title offset (max 10)
�1.e_author           EQUD 0    \ author offset
�>.e_basemode         EQUD 0    \ mode to call for 0 offsets
�=.e_mode             EQUD 0    \ mode you would like to be
�0.e_init             EQUD 0    \ startup code
�2.e_menu             EQUD 0    \ extension menu
�8.e_len              EQUD 0    \ length of this table
�E.e_postload         EQUD 0    \ called after being loaded/created
�=.e_presave          EQUD 0    \ called before being saved
�=.e_loading          EQUD 0    \ file being loaded/created
=.e_start            EQUD 0    \ window entering this mode
<.e_end              EQUD 0    \ window leaving this mode
8.e_width            EQUD 0    \ find work area width
&@.e_linecol          EQUD 0    \ column offset to file offset
0@.e_lineoff          EQUD 0    \ file offset to column offset
:3.e_clnlog           EQUD 0    \ log to file off
D3.e_clnphy           EQUD 0    \ phy to file off
N7.e_clnoff           EQUD 0    \ file off to phy/log
XL.e_nextline         EQUD 0    \ find next line which can be shifted down
b7.e_minus            EQUD 0    \ perform cursor left
l8.e_plus             EQUD 0    \ perform cursor right
v6.e_sminus           EQUD 0    \ perform shift left
�7.e_splus            EQUD 0    \ perform shift right
�6.e_cminus           EQUD 0    \ perform ctrl minus
�5.e_cplus            EQUD 0    \ perform ctrl plus
�@.e_redrawline       EQUD 0    \ redraw a line of the display
�<.e_redrawlnum       EQUD 0    \ find logical line number
�A.e_char             EQUD 0    \ insert characters as if typed
�?.e_delete           EQUD 0    \ delete characters from text
�3.e_tab              EQUD 0    \ tab key pressed
�6.e_return           EQUD 0    \ return key pressed
�3.e_renumber         EQUD 0    \ please renumber
�=.e_saveandrun       EQUD 0    \ save file and run/compile
�6.e_linestart        EQUD 0    \ find start of line
�4.e_lineend          EQUD 0    \ find end of line
;.e_linenext         EQUD 0    \ find actual end of line
=.e_lineprev         EQUD 0    \ find actual start of line
1.e_copy             EQUD 0    \ copy key data
 @.e_joinline         EQUD 0    \ join this line with the next
*A.e_splitline        EQUD 0    \ split this line at the cursor
4M.e_aligncaret       EQUD 0    \ put caret in sensible posn before command
>C.e_command          EQUD 0    \ someone wants to alter the text
H@.e_compile          EQUD 0    \ compile / run and don't exit
RC.e_formattext       EQUD 0    \ format the text from this point
\@.e_run              EQUD 0    \ run the program being edited
f;.e_runandquit       EQUD 0    \ as above but then quits
pB.e_basic            EQUD 0    \ drops into basic (or language)
z:.e_search           EQUD 0    \ called before a search
�4.e_replace          EQUD 0    \ replace a string
�9.e_selection        EQUD 0    \ start/end a selection
�;.e_click            EQUD 0    \ double/treble click etc
�>.e_message          EQUD 0    \ unrecognised wimp messages
�
�\L
�
�]:�
�3� pass=%1100 � %1110 � 2:P%=0:O%=code%:[OPTpass
�
�\L zap entry point offsets
�
�7.Zap_AddMode        EQUD 0    \ add new mode to zap
	4.Zap_Claim          EQUD 0    \ claim heap block
	5.Zap_Ensure         EQUD 0    \ ensure heap block
	3.Zap_Free           EQUD 0    \ free heap block
	$-.Zap_MoveBytes      EQUD 0    \ move data
	.D.Zap_SplitBuffer    EQUD 0    \ split text buffer at given point
	8E.Zap_NewTxtStatus   EQUD 0    \ refresh screen after file changed
	BA.Zap_SaveTxtStatus  EQUD 0    \ save info before file changed
	LA.Zap_Command        EQUD 0    \ execute insert/delete command
	V@.Zap_NewWinStatus   EQUD 0    \ recreate window after change
	`D.Zap_SaveWinStatus  EQUD 0    \ save window status before change
	jA.Zap_ReplaceArea    EQUD 0    \ replace one string by another
	t@.Zap_PlotCaret      EQUD 0    \ plot caret at given position
	~G.Zap_ReflectCaret   EQUD 0    \ plot caret at posn only using c_off
	�..Zap_SetCaret       EQUD 0    \ draw caret
	�J.Zap_ClearCaret     EQUD 0    \ draw old caret position (remove caret)
	�7.Zap_DoCommand      EQUD 0    \ perform the command
	�E.Zap_ShowCursor     EQUD 0    \ make sure given cursor is visible
	�7.Zap_ReadVar        EQUD 0    \ read a zap variable
	�8.Zap_WriteVar       EQUD 0    \ write a zap variable
	�7.Zap_SaveFile       EQUD 0    \ save a file to disc
	�?.Zap_FillWords      EQUD 0    \ fill a given area of memory
	�>.Zap_UpdateLns      EQUD 0    \ update line numbers column
	�D.Zap_EachWindow     EQUD 0    \ call sub for each window on file
	�B.Zap_UpdateCaret    EQUD 0    \ updates caret posn from offset
	�B.Zap_GetWindState   EQUD 0    \ update R8 block with wind posn
1.Zap_StartOp        EQUD 0    \ start multiop

0.Zap_StopOp         EQUD 0    \ stop multiop
D.Zap_CallMode       EQUD 0    \ call a mode entry point using R8
4.Zap_CallGivenMode  EQUD 0    \ call mode in R10
(7.Zap_ReadMode       EQUD 0    \ read info on a mode
2D.Zap_FindFile       EQUD 0    \ find window on a given file name
<@.Zap_FindWindow     EQUD 0    \ find window on a loaded file
FA.Zap_ConvWindOff    EQUD 0    \ convert window off to blk ptr
P?.Zap_ConvFileOff    EQUD 0    \ convert file off to blk ptr
ZA.Zap_GetWindOff     EQUD 0    \ convert window blk ptr to off
d?.Zap_GetFileOff     EQUD 0    \ convert file blk ptr to off
nD.Zap_GotoOffset     EQUD 0    \ move cursor to given posn + mark
xD.Zap_JumptoOffset   EQUD 0    \ move cursor to given posn nomark
�C.Zap_FindOffset     EQUD 0    \ find file offset from x,y coord
�>.Zap_NewFileTitle   EQUD 0    \ update titlebars on a file
�;.Zap_InsertString   EQUD 0    \ insert string into file
�8.Zap_CreateFile     EQUD 0    \ create an empty file
�C.Zap_NewLinkEntry   EQUD 0    \ add an entry to the links table
�@.Zap_DefaultClick   EQUD 0    \ default mouse click handling
�9.Zap_PutCaret       EQUD 0    \ put new caret in file
�-.Zap_DiscardFile    EQUD 0    \ kill file
�4.Zap_DeleteFile     EQUD 0    \ propmt then kill
�/.Zap_DiscardWindow  EQUD 0    \ kill window
�;.Zap_DeleteWindow   EQUD 0    \ prompt then kill window
�A.Zap_BuildMenu      EQUD 0    \ create a variable length menu
�7.Zap_ClearSel       EQUD 0    \ clear selected area
A.Zap_CreateFileBlk  EQUD 0    \ create a new file block in R9
C.Zap_CreateWindBlk  EQUD 0    \ create a new window block in R8
?.Zap_GetSel         EQUD 0    \ get info on selected region
"A.Zap_InsertMark     EQUD 0    \ insert marker at given offset
,8.Zap_InstallFile    EQUD 0    \ load a file into Zap
69.Zap_NewMode        EQUD 0    \ change mode of a file
@@.Zap_NewTitle       EQUD 0    \ update the title of a window
J>.Zap_CallBaseMode   EQUD 0    \ call base mode entry point
T?.Zap_NewView        EQUD 0    \ open a new window on a file
^<.Zap_ReadSel        EQUD 0    \ read the selected region
h@.Zap_Replace        EQUD 0    \ perform a search and replace
r9.Zap_Search         EQUD 0    \ perform a file search
|3.Zap_Select         EQUD 0    \ select a region
�9.Zap_AlterSel       EQUD 0    \ alter selected region
�>.Zap_OffLineCol     EQUD 0    \ convert file offset to X,Y
�
�\L
�
�]:�
��
�
00000000  0d 00 0a 05 f4 0d 00 0b  22 f4 20 4c 69 62 72 61  |........". Libra|
00000010  72 79 20 64 65 66 69 6e  69 6e 67 20 5a 61 70 20  |ry defining Zap |
00000020  6c 61 62 65 6c 73 2e 0d  00 14 33 f4 20 63 6f 64  |labels....3. cod|
00000030  65 25 20 73 68 6f 75 6c  64 20 70 6f 69 6e 74 20  |e% should point |
00000040  74 6f 20 73 6f 6d 65 20  61 72 65 61 20 6f 66 20  |to some area of |
00000050  77 6f 72 6b 73 70 61 63  65 2e 0d 00 1e 05 f4 0d  |workspace.......|
00000060  00 28 04 0d 00 32 1b dd  20 f2 73 65 74 5f 75 70  |.(...2.. .set_up|
00000070  5f 66 69 6c 65 5f 62 6c  6b 5f 76 61 72 73 0d 00  |_file_blk_vars..|
00000080  50 33 e3 20 70 61 73 73  3d 25 31 31 30 30 20 b8  |P3. pass=%1100 .|
00000090  20 25 31 31 31 30 20 88  20 32 3a 50 25 3d 30 3a  | %1110 . 2:P%=0:|
000000a0  4f 25 3d 63 6f 64 65 25  3a 5b 4f 50 54 70 61 73  |O%=code%:[OPTpas|
000000b0  73 0d 00 5a 04 0d 00 64  1b 5c 4c 20 46 69 6c 65  |s..Z...d.\L File|
000000c0  20 62 6c 6f 63 6b 20 76  61 72 69 61 62 6c 65 73  | block variables|
000000d0  0d 00 6e 04 0d 00 78 4a  2e 66 5f 70 74 72 20 20  |..n...xJ.f_ptr  |
000000e0  20 20 20 20 20 20 20 20  20 20 20 20 45 51 55 44  |            EQUD|
000000f0  20 30 20 20 20 20 5c 20  70 6f 69 6e 74 65 72 20  | 0    \ pointer |
00000100  74 6f 20 66 69 6c 65 20  62 75 66 66 65 72 20 2f  |to file buffer /|
00000110  20 2d 31 20 69 66 20 64  65 6c 65 74 65 64 0d 00  | -1 if deleted..|
00000120  82 39 2e 66 5f 62 75 66  6c 20 20 20 20 20 20 20  |.9.f_bufl       |
00000130  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00000140  5c 20 6c 65 6e 67 74 68  20 6f 66 20 66 69 6c 65  |\ length of file|
00000150  20 62 75 66 66 65 72 0d  00 8c 32 2e 66 5f 6c 65  | buffer...2.f_le|
00000160  6e 20 20 20 20 20 20 20  20 20 20 20 20 20 20 45  |n              E|
00000170  51 55 44 20 30 20 20 20  20 5c 20 6c 65 6e 67 74  |QUD 0    \ lengt|
00000180  68 20 6f 66 20 66 69 6c  65 0d 00 96 37 2e 66 5f  |h of file...7.f_|
00000190  6e 61 6d 65 20 20 20 20  20 20 20 20 20 20 20 20  |name            |
000001a0  20 45 51 55 44 20 30 20  20 20 20 5c 20 70 6f 69  | EQUD 0    \ poi|
000001b0  6e 74 65 72 20 74 6f 20  66 69 6c 65 6e 61 6d 65  |nter to filename|
000001c0  0d 00 a0 38 2e 66 5f 6c  6f 61 64 20 20 20 20 20  |...8.f_load     |
000001d0  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
000001e0  20 20 5c 20 6c 6f 61 64  20 61 64 64 72 65 73 73  |  \ load address|
000001f0  20 6f 66 20 66 69 6c 65  0d 00 aa 38 2e 66 5f 65  | of file...8.f_e|
00000200  78 65 63 20 20 20 20 20  20 20 20 20 20 20 20 20  |xec             |
00000210  45 51 55 44 20 30 20 20  20 20 5c 20 65 78 65 63  |EQUD 0    \ exec|
00000220  20 61 64 64 72 65 73 73  20 6f 66 20 66 69 6c 65  | address of file|
00000230  0d 00 b4 2e 2e 66 5f 66  6c 61 67 73 20 20 20 20  |.....f_flags    |
00000240  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00000250  20 20 5c 20 66 69 6c 65  20 66 6c 61 67 73 0d 00  |  \ file flags..|
00000260  be 3a 2e 66 5f 75 70 74  72 20 20 20 20 20 20 20  |.:.f_uptr       |
00000270  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00000280  5c 20 70 6f 69 6e 74 65  72 20 74 6f 20 75 6e 64  |\ pointer to und|
00000290  6f 20 62 75 66 66 65 72  0d 00 c8 39 2e 66 5f 75  |o buffer...9.f_u|
000002a0  62 75 66 6c 20 20 20 20  20 20 20 20 20 20 20 20  |bufl            |
000002b0  45 51 55 44 20 30 20 20  20 20 5c 20 6c 65 6e 67  |EQUD 0    \ leng|
000002c0  74 68 20 6f 66 20 75 6e  64 6f 20 62 75 66 66 65  |th of undo buffe|
000002d0  72 0d 00 d2 4b 2e 66 5f  75 6c 65 6e 20 20 20 20  |r...K.f_ulen    |
000002e0  20 20 20 20 20 20 20 20  20 45 51 55 44 20 30 20  |         EQUD 0 |
000002f0  20 20 20 5c 20 6c 65 6e  67 74 68 20 6f 66 20 76  |   \ length of v|
00000300  61 6c 69 64 20 64 61 74  61 20 69 6e 20 75 6e 64  |alid data in und|
00000310  6f 20 62 75 66 66 65 72  20 28 6c 29 0d 00 dc 43  |o buffer (l)...C|
00000320  2e 66 5f 75 6e 64 6f 20  20 20 20 20 20 20 20 20  |.f_undo         |
00000330  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
00000340  6f 66 66 73 65 74 20 6f  66 20 6d 61 69 6e 20 75  |offset of main u|
00000350  6e 64 6f 20 70 6f 69 6e  74 65 72 20 28 75 29 0d  |ndo pointer (u).|
00000360  00 e6 48 2e 66 5f 75 6e  64 6f 70 20 20 20 20 20  |..H.f_undop     |
00000370  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
00000380  20 5c 20 6f 66 66 73 65  74 20 6f 66 20 75 6e 64  | \ offset of und|
00000390  6f 20 62 6c 6f 63 6b 20  73 75 62 2d 70 6f 69 6e  |o block sub-poin|
000003a0  74 65 72 20 28 70 29 0d  00 f0 4b 2e 66 5f 79 61  |ter (p)...K.f_ya|
000003b0  6e 6b 20 20 20 20 20 20  20 20 20 20 20 20 20 45  |nk             E|
000003c0  51 55 44 20 30 20 20 20  20 5c 20 2d 31 20 69 66  |QUD 0    \ -1 if|
000003d0  20 6e 6f 74 20 69 6e 20  79 61 6e 6b 20 2f 20 6f  | not in yank / o|
000003e0  66 66 20 6f 66 20 79 61  6e 6b 20 70 6f 69 6e 74  |ff of yank point|
000003f0  65 72 0d 00 fa 4b 2e 66  5f 73 70 6c 69 74 6f 20  |er...K.f_splito |
00000400  20 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |          EQUD 0|
00000410  20 20 20 20 5c 20 6f 66  66 73 65 74 20 69 6e 20  |    \ offset in |
00000420  66 69 6c 65 20 28 26 62  75 66 29 20 6f 66 20 73  |file (&buf) of s|
00000430  74 61 72 74 20 6f 66 20  73 70 6c 69 74 0d 01 04  |tart of split...|
00000440  41 2e 66 5f 73 70 6c 69  74 65 20 20 20 20 20 20  |A.f_splite      |
00000450  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00000460  20 6f 66 66 73 65 74 20  69 6e 20 62 75 66 20 6f  | offset in buf o|
00000470  66 20 65 6e 64 20 6f 66  20 73 70 6c 69 74 0d 01  |f end of split..|
00000480  0e 40 2e 66 5f 73 70 6c  69 74 73 20 20 20 20 20  |.@.f_splits     |
00000490  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
000004a0  5c 20 73 69 7a 65 20 20  6f 66 20 73 70 6c 69 74  |\ size  of split|
000004b0  3d 73 70 6c 69 74 65 2d  73 70 6c 69 74 6f 0d 01  |=splite-splito..|
000004c0  18 3c 2e 66 5f 6d 70 74  72 20 20 20 20 20 20 20  |.<.f_mptr       |
000004d0  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
000004e0  5c 20 70 6f 69 6e 74 65  72 20 74 6f 20 6d 61 72  |\ pointer to mar|
000004f0  6b 65 72 20 62 75 66 66  65 72 0d 01 22 3b 2e 66  |ker buffer..";.f|
00000500  5f 6d 62 75 66 6c 20 20  20 20 20 20 20 20 20 20  |_mbufl          |
00000510  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 6c 65  |  EQUD 0    \ le|
00000520  6e 67 74 68 20 6f 66 20  6d 61 72 6b 65 72 20 62  |ngth of marker b|
00000530  75 66 66 65 72 0d 01 2c  49 2e 66 5f 6d 6c 65 6e  |uffer..,I.f_mlen|
00000540  20 20 20 20 20 20 20 20  20 20 20 20 20 45 51 55  |             EQU|
00000550  44 20 30 20 20 20 20 5c  20 6c 65 6e 67 74 68 20  |D 0    \ length |
00000560  6f 66 20 76 61 6c 69 64  20 64 61 74 61 20 69 6e  |of valid data in|
00000570  20 6d 61 72 6b 65 72 20  62 75 66 66 65 72 0d 01  | marker buffer..|
00000580  36 48 2e 66 5f 6d 61 72  6b 20 20 20 20 20 20 20  |6H.f_mark       |
00000590  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
000005a0  5c 20 63 75 72 72 65 6e  74 20 6f 66 66 73 65 74  |\ current offset|
000005b0  20 69 6e 20 6d 61 72 6b  65 72 20 62 75 66 66 65  | in marker buffe|
000005c0  72 20 28 45 41 29 0d 01  40 2c 2e 66 5f 72 65 73  |r (EA)..@,.f_res|
000005d0  30 20 20 20 20 20 20 20  20 20 20 20 20 20 45 51  |0             EQ|
000005e0  55 44 20 30 20 20 20 20  5c 20 72 65 73 65 72 76  |UD 0    \ reserv|
000005f0  65 64 0d 01 4a 4c 2e 66  5f 73 6f 75 72 63 65 20  |ed..JL.f_source |
00000600  20 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |          EQUD 0|
00000610  20 20 20 20 5c 20 73 6f  75 72 63 65 20 77 6f 72  |    \ source wor|
00000620  64 20 63 6f 72 72 65 73  70 6f 6e 64 69 6e 67 20  |d corresponding |
00000630  74 6f 20 63 72 65 61 74  65 20 74 79 70 65 0d 01  |to create type..|
00000640  54 2c 2e 66 5f 72 65 73  31 20 20 20 20 20 20 20  |T,.f_res1       |
00000650  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00000660  5c 20 72 65 73 65 72 76  65 64 0d 01 5e 2c 2e 66  |\ reserved..^,.f|
00000670  5f 72 65 73 32 20 20 20  20 20 20 20 20 20 20 20  |_res2           |
00000680  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 72 65  |  EQUD 0    \ re|
00000690  73 65 72 76 65 64 0d 01  68 44 2e 66 5f 61 6c 74  |served..hD.f_alt|
000006a0  65 72 65 64 20 20 20 20  20 20 20 20 20 20 45 51  |ered          EQ|
000006b0  55 44 20 30 20 20 20 20  5c 20 66 69 72 73 74 20  |UD 0    \ first |
000006c0  61 6c 74 65 72 65 64 20  6f 66 66 73 65 74 20 69  |altered offset i|
000006d0  6e 20 66 69 6c 65 20 2f  2d 31 0d 01 72 46 2e 66  |n file /-1..rF.f|
000006e0  5f 73 68 69 66 74 61 62  6c 65 20 20 20 20 20 20  |_shiftable      |
000006f0  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 66 69  |  EQUD 0    \ fi|
00000700  72 73 74 20 73 68 69 66  74 61 62 6c 65 20 6f 66  |rst shiftable of|
00000710  66 73 65 74 20 69 6e 20  66 69 6c 65 20 2f 2d 31  |fset in file /-1|
00000720  0d 01 7c 45 2e 66 5f 63  68 61 6e 67 65 20 20 20  |..|E.f_change   |
00000730  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00000740  20 20 5c 20 73 69 67 6e  65 64 20 63 68 61 6e 67  |  \ signed chang|
00000750  65 20 6f 66 20 73 68 69  66 74 61 62 6c 65 20 6f  |e of shiftable o|
00000760  66 66 73 65 74 0d 01 86  40 2e 66 5f 64 65 70 74  |ffset...@.f_dept|
00000770  68 20 20 20 20 20 20 20  20 20 20 20 20 45 51 55  |h            EQU|
00000780  44 20 30 20 20 20 20 5c  20 6d 75 6c 74 69 70 6c  |D 0    \ multipl|
00000790  65 20 6f 70 65 72 61 74  69 6f 6e 20 64 65 70 74  |e operation dept|
000007a0  68 20 2f 20 30 0d 01 90  3a 2e 66 5f 6c 69 6e 6b  |h / 0...:.f_link|
000007b0  73 20 20 20 20 20 20 20  20 20 20 20 20 45 51 55  |s            EQU|
000007c0  44 20 30 20 20 20 20 5c  20 76 20 6c 69 6e 6b 73  |D 0    \ v links|
000007d0  20 74 6f 20 6f 74 68 65  72 20 66 69 6c 65 73 0d  | to other files.|
000007e0  01 9a 3f 2e 66 5f 63 6d  6f 64 65 20 20 20 20 20  |..?.f_cmode     |
000007f0  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
00000800  20 5c 20 6d 6f 64 65 20  77 68 69 63 68 20 27 6f  | \ mode which 'o|
00000810  77 6e 73 27 20 66 69 6c  65 20 2f 20 2d 31 0d 01  |wns' file / -1..|
00000820  a4 04 0d 01 ae 06 5c 4c  0d 01 b8 04 0d 01 c2 07  |......\L........|
00000830  5d 3a ed 0d 01 d6 05 e1  0d 01 e0 04 0d 01 ea 1b  |]:..............|
00000840  dd 20 f2 73 65 74 5f 75  70 5f 77 69 6e 64 5f 62  |. .set_up_wind_b|
00000850  6c 6b 5f 76 61 72 73 0d  01 f4 33 e3 20 70 61 73  |lk_vars...3. pas|
00000860  73 3d 25 31 31 30 30 20  b8 20 25 31 31 31 30 20  |s=%1100 . %1110 |
00000870  88 20 32 3a 50 25 3d 30  3a 4f 25 3d 63 6f 64 65  |. 2:P%=0:O%=code|
00000880  25 3a 5b 4f 50 54 70 61  73 73 0d 01 fe 04 0d 02  |%:[OPTpass......|
00000890  08 1d 5c 4c 20 57 69 6e  64 6f 77 20 62 6c 6f 63  |..\L Window bloc|
000008a0  6b 20 76 61 72 69 61 62  6c 65 73 0d 02 12 04 0d  |k variables.....|
000008b0  02 1c 41 2e 77 5f 68 61  6e 64 6c 65 20 20 20 20  |..A.w_handle    |
000008c0  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
000008d0  20 5c 20 77 69 6e 64 6f  77 20 68 61 6e 64 6c 65  | \ window handle|
000008e0  20 2f 20 2d 31 20 69 66  20 64 65 6c 65 74 65 64  | / -1 if deleted|
000008f0  0d 02 26 2d 2e 77 5f 6d  69 6e 78 20 20 20 20 20  |..&-.w_minx     |
00000900  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00000910  20 20 5c 20 6d 69 6e 20  73 63 6e 20 78 0d 02 30  |  \ min scn x..0|
00000920  2d 2e 77 5f 6d 69 6e 79  20 20 20 20 20 20 20 20  |-.w_miny        |
00000930  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00000940  20 6d 69 6e 20 73 63 6e  20 79 0d 02 3a 2d 2e 77  | min scn y..:-.w|
00000950  5f 6d 61 78 78 20 20 20  20 20 20 20 20 20 20 20  |_maxx           |
00000960  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 6d 61  |  EQUD 0    \ ma|
00000970  78 20 73 63 6e 20 78 0d  02 44 2d 2e 77 5f 6d 61  |x scn x..D-.w_ma|
00000980  78 79 20 20 20 20 20 20  20 20 20 20 20 20 20 45  |xy             E|
00000990  51 55 44 20 30 20 20 20  20 5c 20 6d 61 78 20 73  |QUD 0    \ max s|
000009a0  63 6e 20 79 0d 02 4e 2c  2e 77 5f 73 63 72 6f 6c  |cn y..N,.w_scrol|
000009b0  6c 78 20 20 20 20 20 20  20 20 20 20 45 51 55 44  |lx          EQUD|
000009c0  20 30 20 20 20 20 5c 20  78 20 73 63 72 6f 6c 6c  | 0    \ x scroll|
000009d0  0d 02 58 2c 2e 77 5f 73  63 72 6f 6c 6c 79 20 20  |..X,.w_scrolly  |
000009e0  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
000009f0  20 20 5c 20 79 20 73 63  72 6f 6c 6c 0d 02 62 44  |  \ y scroll..bD|
00000a00  2e 77 5f 69 6e 66 72 6f  6e 74 20 20 20 20 20 20  |.w_infront      |
00000a10  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
00000a20  77 69 6e 64 6f 77 20 68  61 6e 64 6c 65 20 6f 66  |window handle of|
00000a30  20 77 69 6e 64 6f 77 20  69 6e 20 66 72 6f 6e 74  | window in front|
00000a40  0d 02 6c 35 2e 77 5f 77  69 6e 64 6f 77 66 6c 61  |..l5.w_windowfla|
00000a50  67 73 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |gs      EQUD 0  |
00000a60  20 20 5c 20 77 69 6d 70  20 77 69 6e 64 6f 77 20  |  \ wimp window |
00000a70  66 6c 61 67 73 0d 02 76  47 2e 77 5f 66 69 6c 65  |flags..vG.w_file|
00000a80  20 20 20 20 20 20 20 20  20 20 20 20 20 45 51 55  |             EQU|
00000a90  44 20 30 20 20 20 20 5c  20 6f 66 66 73 65 74 20  |D 0    \ offset |
00000aa0  69 6e 20 66 69 6c 65 5f  6c 69 73 74 20 6f 66 20  |in file_list of |
00000ab0  66 69 6c 65 20 73 68 6f  77 69 6e 67 0d 02 80 32  |file showing...2|
00000ac0  2e 77 5f 66 6f 72 6d 61  74 20 20 20 20 20 20 20  |.w_format       |
00000ad0  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
00000ae0  64 69 73 70 6c 61 79 20  66 6f 72 6d 61 74 0d 02  |display format..|
00000af0  8a 3f 2e 77 5f 77 69 64  74 68 20 20 20 20 20 20  |.?.w_width      |
00000b00  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00000b10  5c 20 77 69 64 74 68 20  6f 66 20 77 6f 72 6b 20  |\ width of work |
00000b20  61 72 65 61 20 69 6e 20  63 68 61 72 73 0d 02 94  |area in chars...|
00000b30  40 2e 77 5f 68 65 69 67  68 74 20 20 20 20 20 20  |@.w_height      |
00000b40  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00000b50  20 68 65 69 67 68 74 20  6f 66 20 77 6f 72 6b 20  | height of work |
00000b60  61 72 65 61 20 69 6e 20  63 68 61 72 73 0d 02 9e  |area in chars...|
00000b70  41 2e 77 5f 74 78 74 20  20 20 20 20 20 20 20 20  |A.w_txt         |
00000b80  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00000b90  20 70 6f 69 6e 74 65 72  20 74 6f 20 63 61 63 68  | pointer to cach|
00000ba0  65 64 20 74 65 78 74 20  62 75 66 66 65 72 0d 02  |ed text buffer..|
00000bb0  a8 45 2e 77 5f 74 78 74  68 20 20 20 20 20 20 20  |.E.w_txth       |
00000bc0  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00000bd0  5c 20 68 65 69 67 68 74  20 6f 66 20 63 61 63 68  |\ height of cach|
00000be0  65 64 20 74 78 74 20 62  75 66 20 69 6e 20 6c 69  |ed txt buf in li|
00000bf0  6e 65 73 0d 02 b2 4d 2e  77 5f 74 78 74 77 20 20  |nes...M.w_txtw  |
00000c00  20 20 20 20 20 20 20 20  20 20 20 45 51 55 44 20  |           EQUD |
00000c10  30 20 20 20 20 5c 20 77  69 64 74 68 20 6f 66 20  |0    \ width of |
00000c20  63 61 63 68 65 64 20 74  78 74 20 62 75 66 20 69  |cached txt buf i|
00000c30  6e 20 63 68 61 72 73 20  28 6d 75 6c 74 20 38 29  |n chars (mult 8)|
00000c40  0d 02 bc 3a 2e 77 5f 74  78 74 6e 20 20 20 20 20  |...:.w_txtn     |
00000c50  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00000c60  20 20 5c 20 6e 75 6d 62  65 72 20 6f 66 20 6c 69  |  \ number of li|
00000c70  6e 65 73 20 63 61 63 68  65 64 0d 02 c6 47 2e 77  |nes cached...G.w|
00000c80  5f 63 6f 66 66 20 20 20  20 20 20 20 20 20 20 20  |_coff           |
00000c90  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 6f 66  |  EQUD 0    \ of|
00000ca0  66 73 65 74 20 69 6e 20  74 65 78 74 20 6f 66 20  |fset in text of |
00000cb0  66 69 72 73 74 20 63 61  63 68 65 64 20 6c 69 6e  |first cached lin|
00000cc0  65 0d 02 d0 4c 2e 77 5f  63 6c 69 6e 65 20 20 20  |e...L.w_cline   |
00000cd0  20 20 20 20 20 20 20 20  20 45 51 55 44 20 30 20  |         EQUD 0 |
00000ce0  20 20 20 5c 20 6c 69 6e  65 20 6e 75 6d 62 65 72  |   \ line number|
00000cf0  20 69 6e 20 74 65 78 74  20 6f 66 20 66 69 72 73  | in text of firs|
00000d00  74 20 63 61 63 68 65 64  20 6c 69 6e 65 0d 02 da  |t cached line...|
00000d10  4c 2e 77 5f 63 6c 6f 67  6c 20 20 20 20 20 20 20  |L.w_clogl       |
00000d20  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00000d30  20 6c 6f 67 69 63 61 6c  20 6c 69 6e 65 20 6e 75  | logical line nu|
00000d40  6d 62 65 72 20 6f 66 20  66 69 72 73 74 20 63 61  |mber of first ca|
00000d50  63 68 65 64 20 6c 69 6e  65 0d 02 e4 30 2e 77 5f  |ched line...0.w_|
00000d60  74 61 62 20 20 20 20 20  20 20 20 20 20 20 20 20  |tab             |
00000d70  20 45 51 55 44 20 30 20  20 20 20 5c 20 63 6f 6c  | EQUD 0    \ col|
00000d80  74 61 62 20 77 69 64 74  68 0d 02 ee 42 2e 77 5f  |tab width...B.w_|
00000d90  74 61 62 63 20 20 20 20  20 20 20 20 20 20 20 20  |tabc            |
00000da0  20 45 51 55 44 20 30 20  20 20 20 5c 20 61 63 74  | EQUD 0    \ act|
00000db0  75 61 6c 20 74 61 62 20  63 68 61 72 61 63 74 65  |ual tab characte|
00000dc0  72 20 63 6f 64 65 20 28  78 34 29 0d 02 f8 3c 2e  |r code (x4)...<.|
00000dd0  77 5f 63 72 20 20 20 20  20 20 20 20 20 20 20 20  |w_cr            |
00000de0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 63  |   EQUD 0    \ c|
00000df0  6f 64 65 20 6f 66 20 72  65 74 75 72 6e 2f 6c 69  |ode of return/li|
00000e00  6e 65 20 66 65 65 64 0d  03 02 35 2e 77 5f 66 6c  |ne feed...5.w_fl|
00000e10  61 67 73 20 20 20 20 20  20 20 20 20 20 20 20 45  |ags            E|
00000e20  51 55 44 20 30 20 20 20  20 5c 20 28 6d 79 29 20  |QUD 0    \ (my) |
00000e30  77 69 6e 64 6f 77 20 66  6c 61 67 73 0d 03 0c 42  |window flags...B|
00000e40  2e 77 5f 74 69 74 6c 65  20 20 20 20 20 20 20 20  |.w_title        |
00000e50  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
00000e60  70 6f 69 6e 74 65 72 20  74 6f 20 77 69 6e 64 6f  |pointer to windo|
00000e70  77 20 74 69 74 6c 65 20  62 75 66 66 65 72 0d 03  |w title buffer..|
00000e80  16 4d 2e 77 5f 62 70 6c  20 20 20 20 20 20 20 20  |.M.w_bpl        |
00000e90  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00000ea0  5c 20 62 79 74 65 73 20  70 65 72 20 6c 69 6e 65  |\ bytes per line|
00000eb0  20 28 66 6f 72 20 6d 7a  61 70 29 20 2f 20 77 69  | (for mzap) / wi|
00000ec0  64 74 68 20 6f 66 20 74  65 78 74 0d 03 20 49 2e  |dth of text.. I.|
00000ed0  77 5f 6d 61 72 67 69 6e  20 20 20 20 20 20 20 20  |w_margin        |
00000ee0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 61  |   EQUD 0    \ a|
00000ef0  63 74 75 61 6c 20 77 69  64 74 68 20 6f 66 20 6d  |ctual width of m|
00000f00  61 72 67 69 6e 20 28 69  6e 63 20 6c 69 6e 65 20  |argin (inc line |
00000f10  6e 6f 73 29 0d 03 2a 4c  2e 77 5f 72 6c 20 20 20  |nos)..*L.w_rl   |
00000f20  20 20 20 20 20 20 20 20  20 20 20 20 45 51 55 44  |            EQUD|
00000f30  20 30 20 20 20 20 5c 20  68 65 69 67 68 74 20 69  | 0    \ height i|
00000f40  6e 20 72 61 73 74 65 72  20 6c 69 6e 65 73 20 6f  |n raster lines o|
00000f50  66 20 65 61 63 68 20 63  68 61 72 61 63 74 65 72  |f each character|
00000f60  0d 03 34 45 2e 77 5f 72  77 20 20 20 20 20 20 20  |..4E.w_rw       |
00000f70  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00000f80  20 20 5c 20 77 69 64 74  68 20 69 6e 20 70 69 78  |  \ width in pix|
00000f90  65 6c 73 20 6f 66 20 65  61 63 68 20 63 68 61 72  |els of each char|
00000fa0  61 63 74 65 72 0d 03 3e  4b 2e 77 5f 72 68 20 20  |acter..>K.w_rh  |
00000fb0  20 20 20 20 20 20 20 20  20 20 20 20 20 45 51 55  |             EQU|
00000fc0  44 20 30 20 20 20 20 5c  20 74 65 78 74 20 68 65  |D 0    \ text he|
00000fd0  69 67 68 74 20 69 6e 20  70 69 78 65 6c 73 20 28  |ight in pixels (|
00000fe0  6e 6f 74 20 69 6e 63 20  73 70 61 63 69 6e 67 29  |not inc spacing)|
00000ff0  0d 03 48 44 2e 77 5f 61  64 64 72 20 20 20 20 20  |..HD.w_addr     |
00001000  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00001010  20 20 5c 20 61 64 64 72  65 73 73 20 6f 66 20 66  |  \ address of f|
00001020  69 72 73 74 20 62 79 74  65 20 69 6e 20 64 69 73  |irst byte in dis|
00001030  70 6c 61 79 0d 03 52 48  2e 77 5f 73 74 6c 69 6e  |play..RH.w_stlin|
00001040  65 20 20 20 20 20 20 20  20 20 20 20 45 51 55 44  |e           EQUD|
00001050  20 30 20 20 20 20 5c 20  6c 69 6e 65 20 6e 75 6d  | 0    \ line num|
00001060  62 65 72 20 6f 66 20 66  69 72 73 74 20 6c 69 6e  |ber of first lin|
00001070  65 20 69 6e 20 64 69 73  70 6c 61 79 0d 03 5c 3e  |e in display..\>|
00001080  2e 77 5f 74 69 74 6c 65  6c 65 6e 20 20 20 20 20  |.w_titlelen     |
00001090  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
000010a0  74 69 74 6c 65 20 6c 65  6e 67 74 68 20 28 65 78  |title length (ex|
000010b0  63 6c 75 64 69 6e 67 20  30 29 0d 03 66 43 2e 77  |cluding 0)..fC.w|
000010c0  5f 74 69 74 62 75 66 20  20 20 20 20 20 20 20 20  |_titbuf         |
000010d0  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 61 64  |  EQUD 0    \ ad|
000010e0  64 72 65 73 73 20 6f 66  20 74 69 74 6c 65 20 73  |dress of title s|
000010f0  68 6f 77 69 6e 67 20 62  75 66 66 65 72 0d 03 70  |howing buffer..p|
00001100  42 2e 77 5f 74 69 74 6c  65 6e 20 20 20 20 20 20  |B.w_titlen      |
00001110  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00001120  20 6c 65 6e 67 74 68 20  6f 66 20 74 69 74 6c 65  | length of title|
00001130  20 73 68 6f 77 69 6e 67  20 73 74 72 69 6e 67 0d  | showing string.|
00001140  03 7a 4c 2e 77 5f 6d 77  69 64 74 68 20 20 20 20  |.zL.w_mwidth    |
00001150  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
00001160  20 5c 20 75 73 65 72 20  72 65 71 75 69 72 65 64  | \ user required|
00001170  20 6d 61 72 67 69 6e 20  77 69 64 74 68 20 28 6e  | margin width (n|
00001180  6f 20 6c 69 6e 65 20 6e  6f 73 29 0d 03 84 44 2e  |o line nos)...D.|
00001190  77 5f 74 61 62 63 68 61  72 20 20 20 20 20 20 20  |w_tabchar       |
000011a0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 75  |   EQUD 0    \ u|
000011b0  73 65 72 20 72 65 71 75  69 72 65 64 20 74 61 62  |ser required tab|
000011c0  20 63 68 61 72 20 63 6f  64 65 20 28 78 34 29 0d  | char code (x4).|
000011d0  03 8e 3e 2e 77 5f 6c 69  6e 65 73 70 20 20 20 20  |..>.w_linesp    |
000011e0  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
000011f0  20 5c 20 75 73 65 72 20  72 65 71 75 69 72 65 64  | \ user required|
00001200  20 6c 69 6e 65 20 73 70  61 63 69 6e 67 0d 03 98  | line spacing...|
00001210  45 2e 77 5f 73 61 76 65  64 6f 20 20 20 20 20 20  |E.w_savedo      |
00001220  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00001230  20 66 69 78 65 64 20 6f  66 66 20 2f 20 66 69 78  | fixed off / fix|
00001240  65 64 20 6c 69 6e 65 20  6f 66 66 20 62 65 66 6f  |ed line off befo|
00001250  72 65 0d 03 a2 43 2e 77  5f 73 61 76 65 64 6c 20  |re...C.w_savedl |
00001260  20 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |          EQUD 0|
00001270  20 20 20 20 5c 20 70 69  78 73 20 66 72 6f 6d 20  |    \ pixs from |
00001280  74 6f 70 20 2f 20 70 68  79 20 6c 69 6e 65 20 6f  |top / phy line o|
00001290  66 20 6f 66 66 0d 03 ac  44 2e 77 5f 73 61 76 65  |f off...D.w_save|
000012a0  64 63 20 20 20 20 20 20  20 20 20 20 20 45 51 55  |dc           EQU|
000012b0  44 20 30 20 20 20 20 5c  20 63 68 61 6e 67 65 20  |D 0    \ change |
000012c0  69 6e 20 70 68 79 20 6c  69 6e 65 20 66 6f 72 20  |in phy line for |
000012d0  73 68 69 66 74 61 62 6c  65 0d 03 b6 3d 2e 77 5f  |shiftable...=.w_|
000012e0  73 61 76 65 64 68 20 20  20 20 20 20 20 20 20 20  |savedh          |
000012f0  20 45 51 55 44 20 30 20  20 20 20 5c 20 77 5f 68  | EQUD 0    \ w_h|
00001300  65 69 67 68 74 20 61 74  20 6d 75 6c 74 69 6f 70  |eight at multiop|
00001310  20 73 74 61 72 74 0d 03  c0 40 2e 77 5f 73 61 76  | start...@.w_sav|
00001320  65 64 6c 63 20 20 20 20  20 20 20 20 20 20 45 51  |edlc          EQ|
00001330  55 44 20 30 20 20 20 20  5c 20 70 68 79 20 6c 69  |UD 0    \ phy li|
00001340  6e 65 20 6f 66 20 66 69  78 65 64 20 66 6f 72 20  |ne of fixed for |
00001350  6f 6e 65 20 6f 70 0d 03  ca 32 2e 77 5f 77 72 61  |one op...2.w_wra|
00001360  70 77 69 64 74 68 20 20  20 20 20 20 20 20 45 51  |pwidth        EQ|
00001370  55 44 20 30 20 20 20 20  5c 20 77 6f 72 64 77 72  |UD 0    \ wordwr|
00001380  61 70 20 77 69 64 74 68  0d 03 d4 35 2e 77 5f 74  |ap width...5.w_t|
00001390  6f 67 6d 69 6e 78 20 20  20 20 20 20 20 20 20 20  |ogminx          |
000013a0  45 51 55 44 20 30 20 20  20 20 5c 20 74 6f 67 67  |EQUD 0    \ togg|
000013b0  6c 65 20 73 69 7a 65 20  6d 69 6e 20 78 0d 03 de  |le size min x...|
000013c0  35 2e 77 5f 74 6f 67 6d  69 6e 79 20 20 20 20 20  |5.w_togminy     |
000013d0  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
000013e0  20 74 6f 67 67 6c 65 20  73 69 7a 65 20 6d 69 6e  | toggle size min|
000013f0  20 79 0d 03 e8 35 2e 77  5f 74 6f 67 6d 61 78 78  | y...5.w_togmaxx|
00001400  20 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |          EQUD 0|
00001410  20 20 20 20 5c 20 74 6f  67 67 6c 65 20 73 69 7a  |    \ toggle siz|
00001420  65 20 6d 61 78 20 78 0d  03 f2 35 2e 77 5f 74 6f  |e max x...5.w_to|
00001430  67 6d 61 78 79 20 20 20  20 20 20 20 20 20 20 45  |gmaxy          E|
00001440  51 55 44 20 30 20 20 20  20 5c 20 74 6f 67 67 6c  |QUD 0    \ toggl|
00001450  65 20 73 69 7a 65 20 6d  61 78 20 79 0d 03 fc 33  |e size max y...3|
00001460  2e 77 5f 72 65 73 30 20  20 20 20 20 20 20 20 20  |.w_res0         |
00001470  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
00001480  72 65 73 65 72 76 65 64  20 77 6f 72 64 20 30 0d  |reserved word 0.|
00001490  04 06 33 2e 77 5f 72 65  73 31 20 20 20 20 20 20  |..3.w_res1      |
000014a0  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
000014b0  20 5c 20 72 65 73 65 72  76 65 64 20 77 6f 72 64  | \ reserved word|
000014c0  20 31 0d 04 10 33 2e 77  5f 72 65 73 32 20 20 20  | 1...3.w_res2   |
000014d0  20 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |          EQUD 0|
000014e0  20 20 20 20 5c 20 72 65  73 65 72 76 65 64 20 77  |    \ reserved w|
000014f0  6f 72 64 20 32 0d 04 1a  33 2e 77 5f 72 65 73 33  |ord 2...3.w_res3|
00001500  20 20 20 20 20 20 20 20  20 20 20 20 20 45 51 55  |             EQU|
00001510  44 20 30 20 20 20 20 5c  20 72 65 73 65 72 76 65  |D 0    \ reserve|
00001520  64 20 77 6f 72 64 20 33  0d 04 24 33 2e 77 5f 72  |d word 3..$3.w_r|
00001530  65 73 34 20 20 20 20 20  20 20 20 20 20 20 20 20  |es4             |
00001540  45 51 55 44 20 30 20 20  20 20 5c 20 72 65 73 65  |EQUD 0    \ rese|
00001550  72 76 65 64 20 77 6f 72  64 20 34 0d 04 2e 33 2e  |rved word 4...3.|
00001560  77 5f 72 65 73 35 20 20  20 20 20 20 20 20 20 20  |w_res5          |
00001570  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 72  |   EQUD 0    \ r|
00001580  65 73 65 72 76 65 64 20  77 6f 72 64 20 35 0d 04  |eserved word 5..|
00001590  38 33 2e 77 5f 72 65 73  36 20 20 20 20 20 20 20  |83.w_res6       |
000015a0  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
000015b0  5c 20 72 65 73 65 72 76  65 64 20 77 6f 72 64 20  |\ reserved word |
000015c0  36 0d 04 42 33 2e 77 5f  72 65 73 37 20 20 20 20  |6..B3.w_res7    |
000015d0  20 20 20 20 20 20 20 20  20 45 51 55 44 20 30 20  |         EQUD 0 |
000015e0  20 20 20 5c 20 72 65 73  65 72 76 65 64 20 77 6f  |   \ reserved wo|
000015f0  72 64 20 37 0d 04 4c 33  2e 77 5f 72 65 73 38 20  |rd 7..L3.w_res8 |
00001600  20 20 20 20 20 20 20 20  20 20 20 20 45 51 55 44  |            EQUD|
00001610  20 30 20 20 20 20 5c 20  72 65 73 65 72 76 65 64  | 0    \ reserved|
00001620  20 77 6f 72 64 20 38 0d  04 56 33 2e 77 5f 72 65  | word 8..V3.w_re|
00001630  73 39 20 20 20 20 20 20  20 20 20 20 20 20 20 45  |s9             E|
00001640  51 55 44 20 30 20 20 20  20 5c 20 72 65 73 65 72  |QUD 0    \ reser|
00001650  76 65 64 20 77 6f 72 64  20 39 0d 04 60 34 2e 77  |ved word 9..`4.w|
00001660  5f 72 65 73 31 30 20 20  20 20 20 20 20 20 20 20  |_res10          |
00001670  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 72 65  |  EQUD 0    \ re|
00001680  73 65 72 76 65 64 20 77  6f 72 64 20 31 30 0d 04  |served word 10..|
00001690  6a 34 2e 77 5f 72 65 73  31 31 20 20 20 20 20 20  |j4.w_res11      |
000016a0  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
000016b0  5c 20 72 65 73 65 72 76  65 64 20 77 6f 72 64 20  |\ reserved word |
000016c0  31 31 0d 04 74 34 2e 77  5f 72 65 73 31 32 20 20  |11..t4.w_res12  |
000016d0  20 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |          EQUD 0|
000016e0  20 20 20 20 5c 20 72 65  73 65 72 76 65 64 20 77  |    \ reserved w|
000016f0  6f 72 64 20 31 32 0d 04  7e 34 2e 77 5f 72 65 73  |ord 12..~4.w_res|
00001700  31 33 20 20 20 20 20 20  20 20 20 20 20 20 45 51  |13            EQ|
00001710  55 44 20 30 20 20 20 20  5c 20 72 65 73 65 72 76  |UD 0    \ reserv|
00001720  65 64 20 77 6f 72 64 20  31 33 0d 04 88 34 2e 77  |ed word 13...4.w|
00001730  5f 72 65 73 31 34 20 20  20 20 20 20 20 20 20 20  |_res14          |
00001740  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 72 65  |  EQUD 0    \ re|
00001750  73 65 72 76 65 64 20 77  6f 72 64 20 31 34 0d 04  |served word 14..|
00001760  92 34 2e 77 5f 72 65 73  31 35 20 20 20 20 20 20  |.4.w_res15      |
00001770  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00001780  5c 20 72 65 73 65 72 76  65 64 20 77 6f 72 64 20  |\ reserved word |
00001790  31 35 0d 04 9c 34 2e 77  5f 72 65 73 31 36 20 20  |15...4.w_res16  |
000017a0  20 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |          EQUD 0|
000017b0  20 20 20 20 5c 20 72 65  73 65 72 76 65 64 20 77  |    \ reserved w|
000017c0  6f 72 64 20 31 36 0d 04  a6 41 2e 77 5f 6d 6f 64  |ord 16...A.w_mod|
000017d0  65 30 20 20 20 20 20 20  20 20 20 20 20 20 45 51  |e0            EQ|
000017e0  55 44 20 30 20 20 20 20  5c 20 75 73 65 72 20 72  |UD 0    \ user r|
000017f0  65 71 75 69 72 65 64 20  74 65 78 74 20 6c 69 6e  |equired text lin|
00001800  65 20 77 69 64 74 68 0d  04 b0 41 2e 77 5f 6d 6f  |e width...A.w_mo|
00001810  64 65 31 20 20 20 20 20  20 20 20 20 20 20 20 45  |de1            E|
00001820  51 55 44 20 30 20 20 20  20 5c 20 75 73 65 72 20  |QUD 0    \ user |
00001830  72 65 71 75 69 72 65 64  20 62 79 74 65 20 6c 69  |required byte li|
00001840  6e 65 20 77 69 64 74 68  0d 04 ba 41 2e 77 5f 6d  |ne width...A.w_m|
00001850  6f 64 65 32 20 20 20 20  20 20 20 20 20 20 20 20  |ode2            |
00001860  45 51 55 44 20 30 20 20  20 20 5c 20 75 73 65 72  |EQUD 0    \ user|
00001870  20 72 65 71 75 69 72 65  64 20 77 6f 72 64 20 6c  | required word l|
00001880  69 6e 65 20 77 69 64 74  68 0d 04 c4 42 2e 77 5f  |ine width...B.w_|
00001890  6d 6f 64 65 33 20 20 20  20 20 20 20 20 20 20 20  |mode3           |
000018a0  20 45 51 55 44 20 30 20  20 20 20 5c 20 75 73 65  | EQUD 0    \ use|
000018b0  72 20 72 65 71 75 69 72  65 64 20 61 73 63 69 69  |r required ascii|
000018c0  20 6c 69 6e 65 20 77 69  64 74 68 0d 04 ce 41 2e  | line width...A.|
000018d0  77 5f 6d 6f 64 65 34 20  20 20 20 20 20 20 20 20  |w_mode4         |
000018e0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 75  |   EQUD 0    \ u|
000018f0  73 65 72 20 72 65 71 75  69 72 65 64 20 63 6f 64  |ser required cod|
00001900  65 20 6c 69 6e 65 20 77  69 64 74 68 0d 04 d8 1e  |e line width....|
00001910  2e 77 5f 6d 6f 64 65 35  20 20 20 20 20 20 20 20  |.w_mode5        |
00001920  20 20 20 20 45 51 55 44  20 30 0d 04 e2 1e 2e 77  |    EQUD 0.....w|
00001930  5f 6d 6f 64 65 36 20 20  20 20 20 20 20 20 20 20  |_mode6          |
00001940  20 20 45 51 55 44 20 30  0d 04 ec 1e 2e 77 5f 6d  |  EQUD 0.....w_m|
00001950  6f 64 65 37 20 20 20 20  20 20 20 20 20 20 20 20  |ode7            |
00001960  45 51 55 44 20 30 0d 04  f6 1e 2e 77 5f 6d 6f 64  |EQUD 0.....w_mod|
00001970  65 38 20 20 20 20 20 20  20 20 20 20 20 20 45 51  |e8            EQ|
00001980  55 44 20 30 0d 05 00 1e  2e 77 5f 6d 6f 64 65 39  |UD 0.....w_mode9|
00001990  20 20 20 20 20 20 20 20  20 20 20 20 45 51 55 44  |            EQUD|
000019a0  20 30 0d 05 0a 1e 2e 77  5f 6d 6f 64 65 31 30 20  | 0.....w_mode10 |
000019b0  20 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |          EQUD 0|
000019c0  0d 05 14 1e 2e 77 5f 6d  6f 64 65 31 31 20 20 20  |.....w_mode11   |
000019d0  20 20 20 20 20 20 20 20  45 51 55 44 20 30 0d 05  |        EQUD 0..|
000019e0  1e 1e 2e 77 5f 6d 6f 64  65 31 32 20 20 20 20 20  |...w_mode12     |
000019f0  20 20 20 20 20 20 45 51  55 44 20 30 0d 05 28 1e  |      EQUD 0..(.|
00001a00  2e 77 5f 6d 6f 64 65 31  33 20 20 20 20 20 20 20  |.w_mode13       |
00001a10  20 20 20 20 45 51 55 44  20 30 0d 05 32 1e 2e 77  |    EQUD 0..2..w|
00001a20  5f 6d 6f 64 65 31 34 20  20 20 20 20 20 20 20 20  |_mode14         |
00001a30  20 20 45 51 55 44 20 30  0d 05 3c 40 2e 77 5f 6d  |  EQUD 0..<@.w_m|
00001a40  6f 64 65 31 35 20 20 20  20 20 20 20 20 20 20 20  |ode15           |
00001a50  45 51 55 44 20 30 20 20  20 20 5c 20 75 73 65 72  |EQUD 0    \ user|
00001a60  20 72 65 71 75 69 72 65  64 20 73 74 61 74 75 73  | required status|
00001a70  20 6d 6f 64 65 20 31 35  0d 05 46 04 0d 05 50 06  | mode 15..F...P.|
00001a80  5c 4c 0d 05 5a 04 0d 05  64 07 5d 3a ed 0d 05 78  |\L..Z...d.]:...x|
00001a90  05 e1 0d 05 82 04 0d 05  8c 1b dd 20 f2 73 65 74  |........... .set|
00001aa0  5f 75 70 5f 63 75 73 72  5f 62 6c 6b 5f 76 61 72  |_up_cusr_blk_var|
00001ab0  73 0d 05 96 33 e3 20 70  61 73 73 3d 25 31 31 30  |s...3. pass=%110|
00001ac0  30 20 b8 20 25 31 31 31  30 20 88 20 32 3a 50 25  |0 . %1110 . 2:P%|
00001ad0  3d 30 3a 4f 25 3d 63 6f  64 65 25 3a 5b 4f 50 54  |=0:O%=code%:[OPT|
00001ae0  70 61 73 73 0d 05 a0 04  0d 05 aa 1d 5c 4c 20 43  |pass........\L C|
00001af0  75 72 73 6f 72 20 62 6c  6f 63 6b 20 76 61 72 69  |ursor block vari|
00001b00  61 62 6c 65 73 0d 05 b4  04 0d 05 be 44 2e 63 5f  |ables.......D.c_|
00001b10  77 69 6e 64 20 20 20 20  20 20 20 20 20 20 20 20  |wind            |
00001b20  20 45 51 55 44 20 30 20  20 20 20 5c 20 6f 66 66  | EQUD 0    \ off|
00001b30  73 65 74 20 6f 66 20 77  69 6e 64 6f 77 20 77 69  |set of window wi|
00001b40  74 68 20 74 68 69 73 20  63 61 72 65 74 0d 05 c8  |th this caret...|
00001b50  3e 2e 63 5f 6c 69 6e 65  20 20 20 20 20 20 20 20  |>.c_line        |
00001b60  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00001b70  20 6c 69 6e 65 20 6f 66  20 63 61 72 65 74 20 69  | line of caret i|
00001b80  6e 20 77 6f 72 6b 20 61  72 65 61 0d 05 d2 40 2e  |n work area...@.|
00001b90  63 5f 63 6f 6c 20 20 20  20 20 20 20 20 20 20 20  |c_col           |
00001ba0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 63  |   EQUD 0    \ c|
00001bb0  6f 6c 75 6d 6e 20 6f 66  20 63 61 72 65 74 20 69  |olumn of caret i|
00001bc0  6e 20 77 6f 72 6b 20 61  72 65 61 0d 05 dc 3b 2e  |n work area...;.|
00001bd0  63 5f 6f 66 66 20 20 20  20 20 20 20 20 20 20 20  |c_off           |
00001be0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 6f  |   EQUD 0    \ o|
00001bf0  66 66 73 65 74 20 6f 66  20 63 61 72 65 74 20 69  |ffset of caret i|
00001c00  6e 20 74 65 78 74 0d 05  e6 38 2e 63 5f 6c 6f 66  |n text...8.c_lof|
00001c10  66 20 20 20 20 20 20 20  20 20 20 20 20 20 45 51  |f             EQ|
00001c20  55 44 20 30 20 20 20 20  5c 20 73 74 61 72 74 20  |UD 0    \ start |
00001c30  6f 66 20 6c 69 6e 65 20  6f 66 66 73 65 74 0d 05  |of line offset..|
00001c40  f0 3c 2e 63 5f 77 69 64  74 68 20 20 20 20 20 20  |.<.c_width      |
00001c50  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00001c60  5c 20 77 69 64 74 68 20  6f 66 20 63 75 72 73 6f  |\ width of curso|
00001c70  72 20 69 6e 20 63 68 61  72 73 0d 05 fa 3b 2e 63  |r in chars...;.c|
00001c80  5f 6f 77 69 6e 64 20 20  20 20 20 20 20 20 20 20  |_owind          |
00001c90  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 6f 6c  |  EQUD 0    \ ol|
00001ca0  64 20 77 69 6e 64 6f 77  20 2f 20 2d 31 20 69 66  |d window / -1 if|
00001cb0  20 6e 6f 6e 65 0d 06 04  34 2e 63 5f 6f 6c 69 6e  | none...4.c_olin|
00001cc0  65 20 20 20 20 20 20 20  20 20 20 20 20 45 51 55  |e            EQU|
00001cd0  44 20 30 20 20 20 20 5c  20 6f 6c 64 20 70 6c 6f  |D 0    \ old plo|
00001ce0  74 74 65 64 20 6c 69 6e  65 0d 06 0e 33 2e 63 5f  |tted line...3.c_|
00001cf0  6f 63 6f 6c 20 20 20 20  20 20 20 20 20 20 20 20  |ocol            |
00001d00  20 45 51 55 44 20 30 20  20 20 20 5c 20 6f 6c 64  | EQUD 0    \ old|
00001d10  20 70 6c 6f 74 74 65 64  20 63 6f 6c 0d 06 18 4b  | plotted col...K|
00001d20  2e 63 5f 6f 77 69 64 74  68 20 20 20 20 20 20 20  |.c_owidth       |
00001d30  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
00001d40  6f 6c 64 20 77 69 64 74  68 20 2f 20 6f 66 66 73  |old width / offs|
00001d50  65 74 20 66 6f 72 20 73  65 6c 65 63 74 65 64 20  |et for selected |
00001d60  72 65 67 69 6f 6e 73 0d  06 22 04 0d 06 2c 06 5c  |regions.."...,.\|
00001d70  4c 0d 06 36 04 0d 06 40  07 5d 3a ed 0d 06 54 05  |L..6...@.]:...T.|
00001d80  e1 0d 06 5e 04 0d 06 68  18 dd 20 f2 73 65 74 5f  |...^...h.. .set_|
00001d90  75 70 5f 65 6e 74 72 79  5f 76 61 72 73 0d 06 72  |up_entry_vars..r|
00001da0  33 e3 20 70 61 73 73 3d  25 31 31 30 30 20 b8 20  |3. pass=%1100 . |
00001db0  25 31 31 31 30 20 88 20  32 3a 50 25 3d 30 3a 4f  |%1110 . 2:P%=0:O|
00001dc0  25 3d 63 6f 64 65 25 3a  5b 4f 50 54 70 61 73 73  |%=code%:[OPTpass|
00001dd0  0d 06 7c 04 0d 06 86 17  5c 4c 20 45 6e 74 72 79  |..|.....\L Entry|
00001de0  20 62 6c 6f 63 6b 20 76  61 72 73 0d 06 90 04 0d  | block vars.....|
00001df0  06 9a 42 2e 65 5f 6d 6f  64 75 6c 65 20 20 20 20  |..B.e_module    |
00001e00  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
00001e10  20 5c 20 74 61 62 6c 65  20 6f 66 66 73 65 74 20  | \ table offset |
00001e20  66 72 6f 6d 20 6d 6f 64  75 6c 65 20 73 74 61 72  |from module star|
00001e30  74 0d 06 a4 39 2e 65 5f  74 69 74 6c 65 20 20 20  |t...9.e_title   |
00001e40  20 20 20 20 20 20 20 20  20 45 51 55 44 20 30 20  |         EQUD 0 |
00001e50  20 20 20 5c 20 74 69 74  6c 65 20 6f 66 66 73 65  |   \ title offse|
00001e60  74 20 28 6d 61 78 20 31  30 29 0d 06 ae 31 2e 65  |t (max 10)...1.e|
00001e70  5f 61 75 74 68 6f 72 20  20 20 20 20 20 20 20 20  |_author         |
00001e80  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 61 75  |  EQUD 0    \ au|
00001e90  74 68 6f 72 20 6f 66 66  73 65 74 0d 06 b8 3e 2e  |thor offset...>.|
00001ea0  65 5f 62 61 73 65 6d 6f  64 65 20 20 20 20 20 20  |e_basemode      |
00001eb0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 6d  |   EQUD 0    \ m|
00001ec0  6f 64 65 20 74 6f 20 63  61 6c 6c 20 66 6f 72 20  |ode to call for |
00001ed0  30 20 6f 66 66 73 65 74  73 0d 06 c2 3d 2e 65 5f  |0 offsets...=.e_|
00001ee0  6d 6f 64 65 20 20 20 20  20 20 20 20 20 20 20 20  |mode            |
00001ef0  20 45 51 55 44 20 30 20  20 20 20 5c 20 6d 6f 64  | EQUD 0    \ mod|
00001f00  65 20 79 6f 75 20 77 6f  75 6c 64 20 6c 69 6b 65  |e you would like|
00001f10  20 74 6f 20 62 65 0d 06  cc 30 2e 65 5f 69 6e 69  | to be...0.e_ini|
00001f20  74 20 20 20 20 20 20 20  20 20 20 20 20 20 45 51  |t             EQ|
00001f30  55 44 20 30 20 20 20 20  5c 20 73 74 61 72 74 75  |UD 0    \ startu|
00001f40  70 20 63 6f 64 65 0d 06  d6 32 2e 65 5f 6d 65 6e  |p code...2.e_men|
00001f50  75 20 20 20 20 20 20 20  20 20 20 20 20 20 45 51  |u             EQ|
00001f60  55 44 20 30 20 20 20 20  5c 20 65 78 74 65 6e 73  |UD 0    \ extens|
00001f70  69 6f 6e 20 6d 65 6e 75  0d 06 e0 38 2e 65 5f 6c  |ion menu...8.e_l|
00001f80  65 6e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |en              |
00001f90  45 51 55 44 20 30 20 20  20 20 5c 20 6c 65 6e 67  |EQUD 0    \ leng|
00001fa0  74 68 20 6f 66 20 74 68  69 73 20 74 61 62 6c 65  |th of this table|
00001fb0  0d 06 ea 45 2e 65 5f 70  6f 73 74 6c 6f 61 64 20  |...E.e_postload |
00001fc0  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00001fd0  20 20 5c 20 63 61 6c 6c  65 64 20 61 66 74 65 72  |  \ called after|
00001fe0  20 62 65 69 6e 67 20 6c  6f 61 64 65 64 2f 63 72  | being loaded/cr|
00001ff0  65 61 74 65 64 0d 06 f4  3d 2e 65 5f 70 72 65 73  |eated...=.e_pres|
00002000  61 76 65 20 20 20 20 20  20 20 20 20 20 45 51 55  |ave          EQU|
00002010  44 20 30 20 20 20 20 5c  20 63 61 6c 6c 65 64 20  |D 0    \ called |
00002020  62 65 66 6f 72 65 20 62  65 69 6e 67 20 73 61 76  |before being sav|
00002030  65 64 0d 06 fe 3d 2e 65  5f 6c 6f 61 64 69 6e 67  |ed...=.e_loading|
00002040  20 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |          EQUD 0|
00002050  20 20 20 20 5c 20 66 69  6c 65 20 62 65 69 6e 67  |    \ file being|
00002060  20 6c 6f 61 64 65 64 2f  63 72 65 61 74 65 64 0d  | loaded/created.|
00002070  07 08 3d 2e 65 5f 73 74  61 72 74 20 20 20 20 20  |..=.e_start     |
00002080  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
00002090  20 5c 20 77 69 6e 64 6f  77 20 65 6e 74 65 72 69  | \ window enteri|
000020a0  6e 67 20 74 68 69 73 20  6d 6f 64 65 0d 07 12 3c  |ng this mode...<|
000020b0  2e 65 5f 65 6e 64 20 20  20 20 20 20 20 20 20 20  |.e_end          |
000020c0  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
000020d0  77 69 6e 64 6f 77 20 6c  65 61 76 69 6e 67 20 74  |window leaving t|
000020e0  68 69 73 20 6d 6f 64 65  0d 07 1c 38 2e 65 5f 77  |his mode...8.e_w|
000020f0  69 64 74 68 20 20 20 20  20 20 20 20 20 20 20 20  |idth            |
00002100  45 51 55 44 20 30 20 20  20 20 5c 20 66 69 6e 64  |EQUD 0    \ find|
00002110  20 77 6f 72 6b 20 61 72  65 61 20 77 69 64 74 68  | work area width|
00002120  0d 07 26 40 2e 65 5f 6c  69 6e 65 63 6f 6c 20 20  |..&@.e_linecol  |
00002130  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00002140  20 20 5c 20 63 6f 6c 75  6d 6e 20 6f 66 66 73 65  |  \ column offse|
00002150  74 20 74 6f 20 66 69 6c  65 20 6f 66 66 73 65 74  |t to file offset|
00002160  0d 07 30 40 2e 65 5f 6c  69 6e 65 6f 66 66 20 20  |..0@.e_lineoff  |
00002170  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00002180  20 20 5c 20 66 69 6c 65  20 6f 66 66 73 65 74 20  |  \ file offset |
00002190  74 6f 20 63 6f 6c 75 6d  6e 20 6f 66 66 73 65 74  |to column offset|
000021a0  0d 07 3a 33 2e 65 5f 63  6c 6e 6c 6f 67 20 20 20  |..:3.e_clnlog   |
000021b0  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
000021c0  20 20 5c 20 6c 6f 67 20  74 6f 20 66 69 6c 65 20  |  \ log to file |
000021d0  6f 66 66 0d 07 44 33 2e  65 5f 63 6c 6e 70 68 79  |off..D3.e_clnphy|
000021e0  20 20 20 20 20 20 20 20  20 20 20 45 51 55 44 20  |           EQUD |
000021f0  30 20 20 20 20 5c 20 70  68 79 20 74 6f 20 66 69  |0    \ phy to fi|
00002200  6c 65 20 6f 66 66 0d 07  4e 37 2e 65 5f 63 6c 6e  |le off..N7.e_cln|
00002210  6f 66 66 20 20 20 20 20  20 20 20 20 20 20 45 51  |off           EQ|
00002220  55 44 20 30 20 20 20 20  5c 20 66 69 6c 65 20 6f  |UD 0    \ file o|
00002230  66 66 20 74 6f 20 70 68  79 2f 6c 6f 67 0d 07 58  |ff to phy/log..X|
00002240  4c 2e 65 5f 6e 65 78 74  6c 69 6e 65 20 20 20 20  |L.e_nextline    |
00002250  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00002260  20 66 69 6e 64 20 6e 65  78 74 20 6c 69 6e 65 20  | find next line |
00002270  77 68 69 63 68 20 63 61  6e 20 62 65 20 73 68 69  |which can be shi|
00002280  66 74 65 64 20 64 6f 77  6e 0d 07 62 37 2e 65 5f  |fted down..b7.e_|
00002290  6d 69 6e 75 73 20 20 20  20 20 20 20 20 20 20 20  |minus           |
000022a0  20 45 51 55 44 20 30 20  20 20 20 5c 20 70 65 72  | EQUD 0    \ per|
000022b0  66 6f 72 6d 20 63 75 72  73 6f 72 20 6c 65 66 74  |form cursor left|
000022c0  0d 07 6c 38 2e 65 5f 70  6c 75 73 20 20 20 20 20  |..l8.e_plus     |
000022d0  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
000022e0  20 20 5c 20 70 65 72 66  6f 72 6d 20 63 75 72 73  |  \ perform curs|
000022f0  6f 72 20 72 69 67 68 74  0d 07 76 36 2e 65 5f 73  |or right..v6.e_s|
00002300  6d 69 6e 75 73 20 20 20  20 20 20 20 20 20 20 20  |minus           |
00002310  45 51 55 44 20 30 20 20  20 20 5c 20 70 65 72 66  |EQUD 0    \ perf|
00002320  6f 72 6d 20 73 68 69 66  74 20 6c 65 66 74 0d 07  |orm shift left..|
00002330  80 37 2e 65 5f 73 70 6c  75 73 20 20 20 20 20 20  |.7.e_splus      |
00002340  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00002350  5c 20 70 65 72 66 6f 72  6d 20 73 68 69 66 74 20  |\ perform shift |
00002360  72 69 67 68 74 0d 07 8a  36 2e 65 5f 63 6d 69 6e  |right...6.e_cmin|
00002370  75 73 20 20 20 20 20 20  20 20 20 20 20 45 51 55  |us           EQU|
00002380  44 20 30 20 20 20 20 5c  20 70 65 72 66 6f 72 6d  |D 0    \ perform|
00002390  20 63 74 72 6c 20 6d 69  6e 75 73 0d 07 94 35 2e  | ctrl minus...5.|
000023a0  65 5f 63 70 6c 75 73 20  20 20 20 20 20 20 20 20  |e_cplus         |
000023b0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 70  |   EQUD 0    \ p|
000023c0  65 72 66 6f 72 6d 20 63  74 72 6c 20 70 6c 75 73  |erform ctrl plus|
000023d0  0d 07 9e 40 2e 65 5f 72  65 64 72 61 77 6c 69 6e  |...@.e_redrawlin|
000023e0  65 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |e       EQUD 0  |
000023f0  20 20 5c 20 72 65 64 72  61 77 20 61 20 6c 69 6e  |  \ redraw a lin|
00002400  65 20 6f 66 20 74 68 65  20 64 69 73 70 6c 61 79  |e of the display|
00002410  0d 07 a8 3c 2e 65 5f 72  65 64 72 61 77 6c 6e 75  |...<.e_redrawlnu|
00002420  6d 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |m       EQUD 0  |
00002430  20 20 5c 20 66 69 6e 64  20 6c 6f 67 69 63 61 6c  |  \ find logical|
00002440  20 6c 69 6e 65 20 6e 75  6d 62 65 72 0d 07 b2 41  | line number...A|
00002450  2e 65 5f 63 68 61 72 20  20 20 20 20 20 20 20 20  |.e_char         |
00002460  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
00002470  69 6e 73 65 72 74 20 63  68 61 72 61 63 74 65 72  |insert character|
00002480  73 20 61 73 20 69 66 20  74 79 70 65 64 0d 07 bc  |s as if typed...|
00002490  3f 2e 65 5f 64 65 6c 65  74 65 20 20 20 20 20 20  |?.e_delete      |
000024a0  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
000024b0  20 64 65 6c 65 74 65 20  63 68 61 72 61 63 74 65  | delete characte|
000024c0  72 73 20 66 72 6f 6d 20  74 65 78 74 0d 07 c6 33  |rs from text...3|
000024d0  2e 65 5f 74 61 62 20 20  20 20 20 20 20 20 20 20  |.e_tab          |
000024e0  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
000024f0  74 61 62 20 6b 65 79 20  70 72 65 73 73 65 64 0d  |tab key pressed.|
00002500  07 d0 36 2e 65 5f 72 65  74 75 72 6e 20 20 20 20  |..6.e_return    |
00002510  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
00002520  20 5c 20 72 65 74 75 72  6e 20 6b 65 79 20 70 72  | \ return key pr|
00002530  65 73 73 65 64 0d 07 da  33 2e 65 5f 72 65 6e 75  |essed...3.e_renu|
00002540  6d 62 65 72 20 20 20 20  20 20 20 20 20 45 51 55  |mber         EQU|
00002550  44 20 30 20 20 20 20 5c  20 70 6c 65 61 73 65 20  |D 0    \ please |
00002560  72 65 6e 75 6d 62 65 72  0d 07 e4 3d 2e 65 5f 73  |renumber...=.e_s|
00002570  61 76 65 61 6e 64 72 75  6e 20 20 20 20 20 20 20  |aveandrun       |
00002580  45 51 55 44 20 30 20 20  20 20 5c 20 73 61 76 65  |EQUD 0    \ save|
00002590  20 66 69 6c 65 20 61 6e  64 20 72 75 6e 2f 63 6f  | file and run/co|
000025a0  6d 70 69 6c 65 0d 07 ee  36 2e 65 5f 6c 69 6e 65  |mpile...6.e_line|
000025b0  73 74 61 72 74 20 20 20  20 20 20 20 20 45 51 55  |start        EQU|
000025c0  44 20 30 20 20 20 20 5c  20 66 69 6e 64 20 73 74  |D 0    \ find st|
000025d0  61 72 74 20 6f 66 20 6c  69 6e 65 0d 07 f8 34 2e  |art of line...4.|
000025e0  65 5f 6c 69 6e 65 65 6e  64 20 20 20 20 20 20 20  |e_lineend       |
000025f0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 66  |   EQUD 0    \ f|
00002600  69 6e 64 20 65 6e 64 20  6f 66 20 6c 69 6e 65 0d  |ind end of line.|
00002610  08 02 3b 2e 65 5f 6c 69  6e 65 6e 65 78 74 20 20  |..;.e_linenext  |
00002620  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
00002630  20 5c 20 66 69 6e 64 20  61 63 74 75 61 6c 20 65  | \ find actual e|
00002640  6e 64 20 6f 66 20 6c 69  6e 65 0d 08 0c 3d 2e 65  |nd of line...=.e|
00002650  5f 6c 69 6e 65 70 72 65  76 20 20 20 20 20 20 20  |_lineprev       |
00002660  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 66 69  |  EQUD 0    \ fi|
00002670  6e 64 20 61 63 74 75 61  6c 20 73 74 61 72 74 20  |nd actual start |
00002680  6f 66 20 6c 69 6e 65 0d  08 16 31 2e 65 5f 63 6f  |of line...1.e_co|
00002690  70 79 20 20 20 20 20 20  20 20 20 20 20 20 20 45  |py             E|
000026a0  51 55 44 20 30 20 20 20  20 5c 20 63 6f 70 79 20  |QUD 0    \ copy |
000026b0  6b 65 79 20 64 61 74 61  0d 08 20 40 2e 65 5f 6a  |key data.. @.e_j|
000026c0  6f 69 6e 6c 69 6e 65 20  20 20 20 20 20 20 20 20  |oinline         |
000026d0  45 51 55 44 20 30 20 20  20 20 5c 20 6a 6f 69 6e  |EQUD 0    \ join|
000026e0  20 74 68 69 73 20 6c 69  6e 65 20 77 69 74 68 20  | this line with |
000026f0  74 68 65 20 6e 65 78 74  0d 08 2a 41 2e 65 5f 73  |the next..*A.e_s|
00002700  70 6c 69 74 6c 69 6e 65  20 20 20 20 20 20 20 20  |plitline        |
00002710  45 51 55 44 20 30 20 20  20 20 5c 20 73 70 6c 69  |EQUD 0    \ spli|
00002720  74 20 74 68 69 73 20 6c  69 6e 65 20 61 74 20 74  |t this line at t|
00002730  68 65 20 63 75 72 73 6f  72 0d 08 34 4d 2e 65 5f  |he cursor..4M.e_|
00002740  61 6c 69 67 6e 63 61 72  65 74 20 20 20 20 20 20  |aligncaret      |
00002750  20 45 51 55 44 20 30 20  20 20 20 5c 20 70 75 74  | EQUD 0    \ put|
00002760  20 63 61 72 65 74 20 69  6e 20 73 65 6e 73 69 62  | caret in sensib|
00002770  6c 65 20 70 6f 73 6e 20  62 65 66 6f 72 65 20 63  |le posn before c|
00002780  6f 6d 6d 61 6e 64 0d 08  3e 43 2e 65 5f 63 6f 6d  |ommand..>C.e_com|
00002790  6d 61 6e 64 20 20 20 20  20 20 20 20 20 20 45 51  |mand          EQ|
000027a0  55 44 20 30 20 20 20 20  5c 20 73 6f 6d 65 6f 6e  |UD 0    \ someon|
000027b0  65 20 77 61 6e 74 73 20  74 6f 20 61 6c 74 65 72  |e wants to alter|
000027c0  20 74 68 65 20 74 65 78  74 0d 08 48 40 2e 65 5f  | the text..H@.e_|
000027d0  63 6f 6d 70 69 6c 65 20  20 20 20 20 20 20 20 20  |compile         |
000027e0  20 45 51 55 44 20 30 20  20 20 20 5c 20 63 6f 6d  | EQUD 0    \ com|
000027f0  70 69 6c 65 20 2f 20 72  75 6e 20 61 6e 64 20 64  |pile / run and d|
00002800  6f 6e 27 74 20 65 78 69  74 0d 08 52 43 2e 65 5f  |on't exit..RC.e_|
00002810  66 6f 72 6d 61 74 74 65  78 74 20 20 20 20 20 20  |formattext      |
00002820  20 45 51 55 44 20 30 20  20 20 20 5c 20 66 6f 72  | EQUD 0    \ for|
00002830  6d 61 74 20 74 68 65 20  74 65 78 74 20 66 72 6f  |mat the text fro|
00002840  6d 20 74 68 69 73 20 70  6f 69 6e 74 0d 08 5c 40  |m this point..\@|
00002850  2e 65 5f 72 75 6e 20 20  20 20 20 20 20 20 20 20  |.e_run          |
00002860  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
00002870  72 75 6e 20 74 68 65 20  70 72 6f 67 72 61 6d 20  |run the program |
00002880  62 65 69 6e 67 20 65 64  69 74 65 64 0d 08 66 3b  |being edited..f;|
00002890  2e 65 5f 72 75 6e 61 6e  64 71 75 69 74 20 20 20  |.e_runandquit   |
000028a0  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
000028b0  61 73 20 61 62 6f 76 65  20 62 75 74 20 74 68 65  |as above but the|
000028c0  6e 20 71 75 69 74 73 0d  08 70 42 2e 65 5f 62 61  |n quits..pB.e_ba|
000028d0  73 69 63 20 20 20 20 20  20 20 20 20 20 20 20 45  |sic            E|
000028e0  51 55 44 20 30 20 20 20  20 5c 20 64 72 6f 70 73  |QUD 0    \ drops|
000028f0  20 69 6e 74 6f 20 62 61  73 69 63 20 28 6f 72 20  | into basic (or |
00002900  6c 61 6e 67 75 61 67 65  29 0d 08 7a 3a 2e 65 5f  |language)..z:.e_|
00002910  73 65 61 72 63 68 20 20  20 20 20 20 20 20 20 20  |search          |
00002920  20 45 51 55 44 20 30 20  20 20 20 5c 20 63 61 6c  | EQUD 0    \ cal|
00002930  6c 65 64 20 62 65 66 6f  72 65 20 61 20 73 65 61  |led before a sea|
00002940  72 63 68 0d 08 84 34 2e  65 5f 72 65 70 6c 61 63  |rch...4.e_replac|
00002950  65 20 20 20 20 20 20 20  20 20 20 45 51 55 44 20  |e          EQUD |
00002960  30 20 20 20 20 5c 20 72  65 70 6c 61 63 65 20 61  |0    \ replace a|
00002970  20 73 74 72 69 6e 67 0d  08 8e 39 2e 65 5f 73 65  | string...9.e_se|
00002980  6c 65 63 74 69 6f 6e 20  20 20 20 20 20 20 20 45  |lection        E|
00002990  51 55 44 20 30 20 20 20  20 5c 20 73 74 61 72 74  |QUD 0    \ start|
000029a0  2f 65 6e 64 20 61 20 73  65 6c 65 63 74 69 6f 6e  |/end a selection|
000029b0  0d 08 98 3b 2e 65 5f 63  6c 69 63 6b 20 20 20 20  |...;.e_click    |
000029c0  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
000029d0  20 20 5c 20 64 6f 75 62  6c 65 2f 74 72 65 62 6c  |  \ double/trebl|
000029e0  65 20 63 6c 69 63 6b 20  65 74 63 0d 08 a2 3e 2e  |e click etc...>.|
000029f0  65 5f 6d 65 73 73 61 67  65 20 20 20 20 20 20 20  |e_message       |
00002a00  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 75  |   EQUD 0    \ u|
00002a10  6e 72 65 63 6f 67 6e 69  73 65 64 20 77 69 6d 70  |nrecognised wimp|
00002a20  20 6d 65 73 73 61 67 65  73 0d 08 ac 04 0d 08 b6  | messages.......|
00002a30  06 5c 4c 0d 08 c0 04 0d  08 ca 07 5d 3a ed 0d 08  |.\L........]:...|
00002a40  d4 33 e3 20 70 61 73 73  3d 25 31 31 30 30 20 b8  |.3. pass=%1100 .|
00002a50  20 25 31 31 31 30 20 88  20 32 3a 50 25 3d 30 3a  | %1110 . 2:P%=0:|
00002a60  4f 25 3d 63 6f 64 65 25  3a 5b 4f 50 54 70 61 73  |O%=code%:[OPTpas|
00002a70  73 0d 08 de 04 0d 08 e8  1e 5c 4c 20 7a 61 70 20  |s........\L zap |
00002a80  65 6e 74 72 79 20 70 6f  69 6e 74 20 6f 66 66 73  |entry point offs|
00002a90  65 74 73 0d 08 f2 04 0d  08 fc 37 2e 5a 61 70 5f  |ets.......7.Zap_|
00002aa0  41 64 64 4d 6f 64 65 20  20 20 20 20 20 20 20 45  |AddMode        E|
00002ab0  51 55 44 20 30 20 20 20  20 5c 20 61 64 64 20 6e  |QUD 0    \ add n|
00002ac0  65 77 20 6d 6f 64 65 20  74 6f 20 7a 61 70 0d 09  |ew mode to zap..|
00002ad0  06 34 2e 5a 61 70 5f 43  6c 61 69 6d 20 20 20 20  |.4.Zap_Claim    |
00002ae0  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00002af0  5c 20 63 6c 61 69 6d 20  68 65 61 70 20 62 6c 6f  |\ claim heap blo|
00002b00  63 6b 0d 09 10 35 2e 5a  61 70 5f 45 6e 73 75 72  |ck...5.Zap_Ensur|
00002b10  65 20 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |e         EQUD 0|
00002b20  20 20 20 20 5c 20 65 6e  73 75 72 65 20 68 65 61  |    \ ensure hea|
00002b30  70 20 62 6c 6f 63 6b 0d  09 1a 33 2e 5a 61 70 5f  |p block...3.Zap_|
00002b40  46 72 65 65 20 20 20 20  20 20 20 20 20 20 20 45  |Free           E|
00002b50  51 55 44 20 30 20 20 20  20 5c 20 66 72 65 65 20  |QUD 0    \ free |
00002b60  68 65 61 70 20 62 6c 6f  63 6b 0d 09 24 2d 2e 5a  |heap block..$-.Z|
00002b70  61 70 5f 4d 6f 76 65 42  79 74 65 73 20 20 20 20  |ap_MoveBytes    |
00002b80  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 6d 6f  |  EQUD 0    \ mo|
00002b90  76 65 20 64 61 74 61 0d  09 2e 44 2e 5a 61 70 5f  |ve data...D.Zap_|
00002ba0  53 70 6c 69 74 42 75 66  66 65 72 20 20 20 20 45  |SplitBuffer    E|
00002bb0  51 55 44 20 30 20 20 20  20 5c 20 73 70 6c 69 74  |QUD 0    \ split|
00002bc0  20 74 65 78 74 20 62 75  66 66 65 72 20 61 74 20  | text buffer at |
00002bd0  67 69 76 65 6e 20 70 6f  69 6e 74 0d 09 38 45 2e  |given point..8E.|
00002be0  5a 61 70 5f 4e 65 77 54  78 74 53 74 61 74 75 73  |Zap_NewTxtStatus|
00002bf0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 72  |   EQUD 0    \ r|
00002c00  65 66 72 65 73 68 20 73  63 72 65 65 6e 20 61 66  |efresh screen af|
00002c10  74 65 72 20 66 69 6c 65  20 63 68 61 6e 67 65 64  |ter file changed|
00002c20  0d 09 42 41 2e 5a 61 70  5f 53 61 76 65 54 78 74  |..BA.Zap_SaveTxt|
00002c30  53 74 61 74 75 73 20 20  45 51 55 44 20 30 20 20  |Status  EQUD 0  |
00002c40  20 20 5c 20 73 61 76 65  20 69 6e 66 6f 20 62 65  |  \ save info be|
00002c50  66 6f 72 65 20 66 69 6c  65 20 63 68 61 6e 67 65  |fore file change|
00002c60  64 0d 09 4c 41 2e 5a 61  70 5f 43 6f 6d 6d 61 6e  |d..LA.Zap_Comman|
00002c70  64 20 20 20 20 20 20 20  20 45 51 55 44 20 30 20  |d        EQUD 0 |
00002c80  20 20 20 5c 20 65 78 65  63 75 74 65 20 69 6e 73  |   \ execute ins|
00002c90  65 72 74 2f 64 65 6c 65  74 65 20 63 6f 6d 6d 61  |ert/delete comma|
00002ca0  6e 64 0d 09 56 40 2e 5a  61 70 5f 4e 65 77 57 69  |nd..V@.Zap_NewWi|
00002cb0  6e 53 74 61 74 75 73 20  20 20 45 51 55 44 20 30  |nStatus   EQUD 0|
00002cc0  20 20 20 20 5c 20 72 65  63 72 65 61 74 65 20 77  |    \ recreate w|
00002cd0  69 6e 64 6f 77 20 61 66  74 65 72 20 63 68 61 6e  |indow after chan|
00002ce0  67 65 0d 09 60 44 2e 5a  61 70 5f 53 61 76 65 57  |ge..`D.Zap_SaveW|
00002cf0  69 6e 53 74 61 74 75 73  20 20 45 51 55 44 20 30  |inStatus  EQUD 0|
00002d00  20 20 20 20 5c 20 73 61  76 65 20 77 69 6e 64 6f  |    \ save windo|
00002d10  77 20 73 74 61 74 75 73  20 62 65 66 6f 72 65 20  |w status before |
00002d20  63 68 61 6e 67 65 0d 09  6a 41 2e 5a 61 70 5f 52  |change..jA.Zap_R|
00002d30  65 70 6c 61 63 65 41 72  65 61 20 20 20 20 45 51  |eplaceArea    EQ|
00002d40  55 44 20 30 20 20 20 20  5c 20 72 65 70 6c 61 63  |UD 0    \ replac|
00002d50  65 20 6f 6e 65 20 73 74  72 69 6e 67 20 62 79 20  |e one string by |
00002d60  61 6e 6f 74 68 65 72 0d  09 74 40 2e 5a 61 70 5f  |another..t@.Zap_|
00002d70  50 6c 6f 74 43 61 72 65  74 20 20 20 20 20 20 45  |PlotCaret      E|
00002d80  51 55 44 20 30 20 20 20  20 5c 20 70 6c 6f 74 20  |QUD 0    \ plot |
00002d90  63 61 72 65 74 20 61 74  20 67 69 76 65 6e 20 70  |caret at given p|
00002da0  6f 73 69 74 69 6f 6e 0d  09 7e 47 2e 5a 61 70 5f  |osition..~G.Zap_|
00002db0  52 65 66 6c 65 63 74 43  61 72 65 74 20 20 20 45  |ReflectCaret   E|
00002dc0  51 55 44 20 30 20 20 20  20 5c 20 70 6c 6f 74 20  |QUD 0    \ plot |
00002dd0  63 61 72 65 74 20 61 74  20 70 6f 73 6e 20 6f 6e  |caret at posn on|
00002de0  6c 79 20 75 73 69 6e 67  20 63 5f 6f 66 66 0d 09  |ly using c_off..|
00002df0  88 2e 2e 5a 61 70 5f 53  65 74 43 61 72 65 74 20  |...Zap_SetCaret |
00002e00  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00002e10  5c 20 64 72 61 77 20 63  61 72 65 74 0d 09 92 4a  |\ draw caret...J|
00002e20  2e 5a 61 70 5f 43 6c 65  61 72 43 61 72 65 74 20  |.Zap_ClearCaret |
00002e30  20 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |    EQUD 0    \ |
00002e40  64 72 61 77 20 6f 6c 64  20 63 61 72 65 74 20 70  |draw old caret p|
00002e50  6f 73 69 74 69 6f 6e 20  28 72 65 6d 6f 76 65 20  |osition (remove |
00002e60  63 61 72 65 74 29 0d 09  9c 37 2e 5a 61 70 5f 44  |caret)...7.Zap_D|
00002e70  6f 43 6f 6d 6d 61 6e 64  20 20 20 20 20 20 45 51  |oCommand      EQ|
00002e80  55 44 20 30 20 20 20 20  5c 20 70 65 72 66 6f 72  |UD 0    \ perfor|
00002e90  6d 20 74 68 65 20 63 6f  6d 6d 61 6e 64 0d 09 a6  |m the command...|
00002ea0  45 2e 5a 61 70 5f 53 68  6f 77 43 75 72 73 6f 72  |E.Zap_ShowCursor|
00002eb0  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00002ec0  20 6d 61 6b 65 20 73 75  72 65 20 67 69 76 65 6e  | make sure given|
00002ed0  20 63 75 72 73 6f 72 20  69 73 20 76 69 73 69 62  | cursor is visib|
00002ee0  6c 65 0d 09 b0 37 2e 5a  61 70 5f 52 65 61 64 56  |le...7.Zap_ReadV|
00002ef0  61 72 20 20 20 20 20 20  20 20 45 51 55 44 20 30  |ar        EQUD 0|
00002f00  20 20 20 20 5c 20 72 65  61 64 20 61 20 7a 61 70  |    \ read a zap|
00002f10  20 76 61 72 69 61 62 6c  65 0d 09 ba 38 2e 5a 61  | variable...8.Za|
00002f20  70 5f 57 72 69 74 65 56  61 72 20 20 20 20 20 20  |p_WriteVar      |
00002f30  20 45 51 55 44 20 30 20  20 20 20 5c 20 77 72 69  | EQUD 0    \ wri|
00002f40  74 65 20 61 20 7a 61 70  20 76 61 72 69 61 62 6c  |te a zap variabl|
00002f50  65 0d 09 c4 37 2e 5a 61  70 5f 53 61 76 65 46 69  |e...7.Zap_SaveFi|
00002f60  6c 65 20 20 20 20 20 20  20 45 51 55 44 20 30 20  |le       EQUD 0 |
00002f70  20 20 20 5c 20 73 61 76  65 20 61 20 66 69 6c 65  |   \ save a file|
00002f80  20 74 6f 20 64 69 73 63  0d 09 ce 3f 2e 5a 61 70  | to disc...?.Zap|
00002f90  5f 46 69 6c 6c 57 6f 72  64 73 20 20 20 20 20 20  |_FillWords      |
00002fa0  45 51 55 44 20 30 20 20  20 20 5c 20 66 69 6c 6c  |EQUD 0    \ fill|
00002fb0  20 61 20 67 69 76 65 6e  20 61 72 65 61 20 6f 66  | a given area of|
00002fc0  20 6d 65 6d 6f 72 79 0d  09 d8 3e 2e 5a 61 70 5f  | memory...>.Zap_|
00002fd0  55 70 64 61 74 65 4c 6e  73 20 20 20 20 20 20 45  |UpdateLns      E|
00002fe0  51 55 44 20 30 20 20 20  20 5c 20 75 70 64 61 74  |QUD 0    \ updat|
00002ff0  65 20 6c 69 6e 65 20 6e  75 6d 62 65 72 73 20 63  |e line numbers c|
00003000  6f 6c 75 6d 6e 0d 09 e2  44 2e 5a 61 70 5f 45 61  |olumn...D.Zap_Ea|
00003010  63 68 57 69 6e 64 6f 77  20 20 20 20 20 45 51 55  |chWindow     EQU|
00003020  44 20 30 20 20 20 20 5c  20 63 61 6c 6c 20 73 75  |D 0    \ call su|
00003030  62 20 66 6f 72 20 65 61  63 68 20 77 69 6e 64 6f  |b for each windo|
00003040  77 20 6f 6e 20 66 69 6c  65 0d 09 ec 42 2e 5a 61  |w on file...B.Za|
00003050  70 5f 55 70 64 61 74 65  43 61 72 65 74 20 20 20  |p_UpdateCaret   |
00003060  20 45 51 55 44 20 30 20  20 20 20 5c 20 75 70 64  | EQUD 0    \ upd|
00003070  61 74 65 73 20 63 61 72  65 74 20 70 6f 73 6e 20  |ates caret posn |
00003080  66 72 6f 6d 20 6f 66 66  73 65 74 0d 09 f6 42 2e  |from offset...B.|
00003090  5a 61 70 5f 47 65 74 57  69 6e 64 53 74 61 74 65  |Zap_GetWindState|
000030a0  20 20 20 45 51 55 44 20  30 20 20 20 20 5c 20 75  |   EQUD 0    \ u|
000030b0  70 64 61 74 65 20 52 38  20 62 6c 6f 63 6b 20 77  |pdate R8 block w|
000030c0  69 74 68 20 77 69 6e 64  20 70 6f 73 6e 0d 0a 00  |ith wind posn...|
000030d0  31 2e 5a 61 70 5f 53 74  61 72 74 4f 70 20 20 20  |1.Zap_StartOp   |
000030e0  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
000030f0  20 73 74 61 72 74 20 6d  75 6c 74 69 6f 70 0d 0a  | start multiop..|
00003100  0a 30 2e 5a 61 70 5f 53  74 6f 70 4f 70 20 20 20  |.0.Zap_StopOp   |
00003110  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00003120  5c 20 73 74 6f 70 20 6d  75 6c 74 69 6f 70 0d 0a  |\ stop multiop..|
00003130  14 44 2e 5a 61 70 5f 43  61 6c 6c 4d 6f 64 65 20  |.D.Zap_CallMode |
00003140  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00003150  5c 20 63 61 6c 6c 20 61  20 6d 6f 64 65 20 65 6e  |\ call a mode en|
00003160  74 72 79 20 70 6f 69 6e  74 20 75 73 69 6e 67 20  |try point using |
00003170  52 38 0d 0a 1e 34 2e 5a  61 70 5f 43 61 6c 6c 47  |R8...4.Zap_CallG|
00003180  69 76 65 6e 4d 6f 64 65  20 20 45 51 55 44 20 30  |ivenMode  EQUD 0|
00003190  20 20 20 20 5c 20 63 61  6c 6c 20 6d 6f 64 65 20  |    \ call mode |
000031a0  69 6e 20 52 31 30 0d 0a  28 37 2e 5a 61 70 5f 52  |in R10..(7.Zap_R|
000031b0  65 61 64 4d 6f 64 65 20  20 20 20 20 20 20 45 51  |eadMode       EQ|
000031c0  55 44 20 30 20 20 20 20  5c 20 72 65 61 64 20 69  |UD 0    \ read i|
000031d0  6e 66 6f 20 6f 6e 20 61  20 6d 6f 64 65 0d 0a 32  |nfo on a mode..2|
000031e0  44 2e 5a 61 70 5f 46 69  6e 64 46 69 6c 65 20 20  |D.Zap_FindFile  |
000031f0  20 20 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |     EQUD 0    \|
00003200  20 66 69 6e 64 20 77 69  6e 64 6f 77 20 6f 6e 20  | find window on |
00003210  61 20 67 69 76 65 6e 20  66 69 6c 65 20 6e 61 6d  |a given file nam|
00003220  65 0d 0a 3c 40 2e 5a 61  70 5f 46 69 6e 64 57 69  |e..<@.Zap_FindWi|
00003230  6e 64 6f 77 20 20 20 20  20 45 51 55 44 20 30 20  |ndow     EQUD 0 |
00003240  20 20 20 5c 20 66 69 6e  64 20 77 69 6e 64 6f 77  |   \ find window|
00003250  20 6f 6e 20 61 20 6c 6f  61 64 65 64 20 66 69 6c  | on a loaded fil|
00003260  65 0d 0a 46 41 2e 5a 61  70 5f 43 6f 6e 76 57 69  |e..FA.Zap_ConvWi|
00003270  6e 64 4f 66 66 20 20 20  20 45 51 55 44 20 30 20  |ndOff    EQUD 0 |
00003280  20 20 20 5c 20 63 6f 6e  76 65 72 74 20 77 69 6e  |   \ convert win|
00003290  64 6f 77 20 6f 66 66 20  74 6f 20 62 6c 6b 20 70  |dow off to blk p|
000032a0  74 72 0d 0a 50 3f 2e 5a  61 70 5f 43 6f 6e 76 46  |tr..P?.Zap_ConvF|
000032b0  69 6c 65 4f 66 66 20 20  20 20 45 51 55 44 20 30  |ileOff    EQUD 0|
000032c0  20 20 20 20 5c 20 63 6f  6e 76 65 72 74 20 66 69  |    \ convert fi|
000032d0  6c 65 20 6f 66 66 20 74  6f 20 62 6c 6b 20 70 74  |le off to blk pt|
000032e0  72 0d 0a 5a 41 2e 5a 61  70 5f 47 65 74 57 69 6e  |r..ZA.Zap_GetWin|
000032f0  64 4f 66 66 20 20 20 20  20 45 51 55 44 20 30 20  |dOff     EQUD 0 |
00003300  20 20 20 5c 20 63 6f 6e  76 65 72 74 20 77 69 6e  |   \ convert win|
00003310  64 6f 77 20 62 6c 6b 20  70 74 72 20 74 6f 20 6f  |dow blk ptr to o|
00003320  66 66 0d 0a 64 3f 2e 5a  61 70 5f 47 65 74 46 69  |ff..d?.Zap_GetFi|
00003330  6c 65 4f 66 66 20 20 20  20 20 45 51 55 44 20 30  |leOff     EQUD 0|
00003340  20 20 20 20 5c 20 63 6f  6e 76 65 72 74 20 66 69  |    \ convert fi|
00003350  6c 65 20 62 6c 6b 20 70  74 72 20 74 6f 20 6f 66  |le blk ptr to of|
00003360  66 0d 0a 6e 44 2e 5a 61  70 5f 47 6f 74 6f 4f 66  |f..nD.Zap_GotoOf|
00003370  66 73 65 74 20 20 20 20  20 45 51 55 44 20 30 20  |fset     EQUD 0 |
00003380  20 20 20 5c 20 6d 6f 76  65 20 63 75 72 73 6f 72  |   \ move cursor|
00003390  20 74 6f 20 67 69 76 65  6e 20 70 6f 73 6e 20 2b  | to given posn +|
000033a0  20 6d 61 72 6b 0d 0a 78  44 2e 5a 61 70 5f 4a 75  | mark..xD.Zap_Ju|
000033b0  6d 70 74 6f 4f 66 66 73  65 74 20 20 20 45 51 55  |mptoOffset   EQU|
000033c0  44 20 30 20 20 20 20 5c  20 6d 6f 76 65 20 63 75  |D 0    \ move cu|
000033d0  72 73 6f 72 20 74 6f 20  67 69 76 65 6e 20 70 6f  |rsor to given po|
000033e0  73 6e 20 6e 6f 6d 61 72  6b 0d 0a 82 43 2e 5a 61  |sn nomark...C.Za|
000033f0  70 5f 46 69 6e 64 4f 66  66 73 65 74 20 20 20 20  |p_FindOffset    |
00003400  20 45 51 55 44 20 30 20  20 20 20 5c 20 66 69 6e  | EQUD 0    \ fin|
00003410  64 20 66 69 6c 65 20 6f  66 66 73 65 74 20 66 72  |d file offset fr|
00003420  6f 6d 20 78 2c 79 20 63  6f 6f 72 64 0d 0a 8c 3e  |om x,y coord...>|
00003430  2e 5a 61 70 5f 4e 65 77  46 69 6c 65 54 69 74 6c  |.Zap_NewFileTitl|
00003440  65 20 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |e   EQUD 0    \ |
00003450  75 70 64 61 74 65 20 74  69 74 6c 65 62 61 72 73  |update titlebars|
00003460  20 6f 6e 20 61 20 66 69  6c 65 0d 0a 96 3b 2e 5a  | on a file...;.Z|
00003470  61 70 5f 49 6e 73 65 72  74 53 74 72 69 6e 67 20  |ap_InsertString |
00003480  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 69 6e  |  EQUD 0    \ in|
00003490  73 65 72 74 20 73 74 72  69 6e 67 20 69 6e 74 6f  |sert string into|
000034a0  20 66 69 6c 65 0d 0a a0  38 2e 5a 61 70 5f 43 72  | file...8.Zap_Cr|
000034b0  65 61 74 65 46 69 6c 65  20 20 20 20 20 45 51 55  |eateFile     EQU|
000034c0  44 20 30 20 20 20 20 5c  20 63 72 65 61 74 65 20  |D 0    \ create |
000034d0  61 6e 20 65 6d 70 74 79  20 66 69 6c 65 0d 0a aa  |an empty file...|
000034e0  43 2e 5a 61 70 5f 4e 65  77 4c 69 6e 6b 45 6e 74  |C.Zap_NewLinkEnt|
000034f0  72 79 20 20 20 45 51 55  44 20 30 20 20 20 20 5c  |ry   EQUD 0    \|
00003500  20 61 64 64 20 61 6e 20  65 6e 74 72 79 20 74 6f  | add an entry to|
00003510  20 74 68 65 20 6c 69 6e  6b 73 20 74 61 62 6c 65  | the links table|
00003520  0d 0a b4 40 2e 5a 61 70  5f 44 65 66 61 75 6c 74  |...@.Zap_Default|
00003530  43 6c 69 63 6b 20 20 20  45 51 55 44 20 30 20 20  |Click   EQUD 0  |
00003540  20 20 5c 20 64 65 66 61  75 6c 74 20 6d 6f 75 73  |  \ default mous|
00003550  65 20 63 6c 69 63 6b 20  68 61 6e 64 6c 69 6e 67  |e click handling|
00003560  0d 0a be 39 2e 5a 61 70  5f 50 75 74 43 61 72 65  |...9.Zap_PutCare|
00003570  74 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |t       EQUD 0  |
00003580  20 20 5c 20 70 75 74 20  6e 65 77 20 63 61 72 65  |  \ put new care|
00003590  74 20 69 6e 20 66 69 6c  65 0d 0a c8 2d 2e 5a 61  |t in file...-.Za|
000035a0  70 5f 44 69 73 63 61 72  64 46 69 6c 65 20 20 20  |p_DiscardFile   |
000035b0  20 45 51 55 44 20 30 20  20 20 20 5c 20 6b 69 6c  | EQUD 0    \ kil|
000035c0  6c 20 66 69 6c 65 0d 0a  d2 34 2e 5a 61 70 5f 44  |l file...4.Zap_D|
000035d0  65 6c 65 74 65 46 69 6c  65 20 20 20 20 20 45 51  |eleteFile     EQ|
000035e0  55 44 20 30 20 20 20 20  5c 20 70 72 6f 70 6d 74  |UD 0    \ propmt|
000035f0  20 74 68 65 6e 20 6b 69  6c 6c 0d 0a dc 2f 2e 5a  | then kill.../.Z|
00003600  61 70 5f 44 69 73 63 61  72 64 57 69 6e 64 6f 77  |ap_DiscardWindow|
00003610  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 6b 69  |  EQUD 0    \ ki|
00003620  6c 6c 20 77 69 6e 64 6f  77 0d 0a e6 3b 2e 5a 61  |ll window...;.Za|
00003630  70 5f 44 65 6c 65 74 65  57 69 6e 64 6f 77 20 20  |p_DeleteWindow  |
00003640  20 45 51 55 44 20 30 20  20 20 20 5c 20 70 72 6f  | EQUD 0    \ pro|
00003650  6d 70 74 20 74 68 65 6e  20 6b 69 6c 6c 20 77 69  |mpt then kill wi|
00003660  6e 64 6f 77 0d 0a f0 41  2e 5a 61 70 5f 42 75 69  |ndow...A.Zap_Bui|
00003670  6c 64 4d 65 6e 75 20 20  20 20 20 20 45 51 55 44  |ldMenu      EQUD|
00003680  20 30 20 20 20 20 5c 20  63 72 65 61 74 65 20 61  | 0    \ create a|
00003690  20 76 61 72 69 61 62 6c  65 20 6c 65 6e 67 74 68  | variable length|
000036a0  20 6d 65 6e 75 0d 0a fa  37 2e 5a 61 70 5f 43 6c  | menu...7.Zap_Cl|
000036b0  65 61 72 53 65 6c 20 20  20 20 20 20 20 45 51 55  |earSel       EQU|
000036c0  44 20 30 20 20 20 20 5c  20 63 6c 65 61 72 20 73  |D 0    \ clear s|
000036d0  65 6c 65 63 74 65 64 20  61 72 65 61 0d 0b 04 41  |elected area...A|
000036e0  2e 5a 61 70 5f 43 72 65  61 74 65 46 69 6c 65 42  |.Zap_CreateFileB|
000036f0  6c 6b 20 20 45 51 55 44  20 30 20 20 20 20 5c 20  |lk  EQUD 0    \ |
00003700  63 72 65 61 74 65 20 61  20 6e 65 77 20 66 69 6c  |create a new fil|
00003710  65 20 62 6c 6f 63 6b 20  69 6e 20 52 39 0d 0b 0e  |e block in R9...|
00003720  43 2e 5a 61 70 5f 43 72  65 61 74 65 57 69 6e 64  |C.Zap_CreateWind|
00003730  42 6c 6b 20 20 45 51 55  44 20 30 20 20 20 20 5c  |Blk  EQUD 0    \|
00003740  20 63 72 65 61 74 65 20  61 20 6e 65 77 20 77 69  | create a new wi|
00003750  6e 64 6f 77 20 62 6c 6f  63 6b 20 69 6e 20 52 38  |ndow block in R8|
00003760  0d 0b 18 3f 2e 5a 61 70  5f 47 65 74 53 65 6c 20  |...?.Zap_GetSel |
00003770  20 20 20 20 20 20 20 20  45 51 55 44 20 30 20 20  |        EQUD 0  |
00003780  20 20 5c 20 67 65 74 20  69 6e 66 6f 20 6f 6e 20  |  \ get info on |
00003790  73 65 6c 65 63 74 65 64  20 72 65 67 69 6f 6e 0d  |selected region.|
000037a0  0b 22 41 2e 5a 61 70 5f  49 6e 73 65 72 74 4d 61  |."A.Zap_InsertMa|
000037b0  72 6b 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |rk     EQUD 0   |
000037c0  20 5c 20 69 6e 73 65 72  74 20 6d 61 72 6b 65 72  | \ insert marker|
000037d0  20 61 74 20 67 69 76 65  6e 20 6f 66 66 73 65 74  | at given offset|
000037e0  0d 0b 2c 38 2e 5a 61 70  5f 49 6e 73 74 61 6c 6c  |..,8.Zap_Install|
000037f0  46 69 6c 65 20 20 20 20  45 51 55 44 20 30 20 20  |File    EQUD 0  |
00003800  20 20 5c 20 6c 6f 61 64  20 61 20 66 69 6c 65 20  |  \ load a file |
00003810  69 6e 74 6f 20 5a 61 70  0d 0b 36 39 2e 5a 61 70  |into Zap..69.Zap|
00003820  5f 4e 65 77 4d 6f 64 65  20 20 20 20 20 20 20 20  |_NewMode        |
00003830  45 51 55 44 20 30 20 20  20 20 5c 20 63 68 61 6e  |EQUD 0    \ chan|
00003840  67 65 20 6d 6f 64 65 20  6f 66 20 61 20 66 69 6c  |ge mode of a fil|
00003850  65 0d 0b 40 40 2e 5a 61  70 5f 4e 65 77 54 69 74  |e..@@.Zap_NewTit|
00003860  6c 65 20 20 20 20 20 20  20 45 51 55 44 20 30 20  |le       EQUD 0 |
00003870  20 20 20 5c 20 75 70 64  61 74 65 20 74 68 65 20  |   \ update the |
00003880  74 69 74 6c 65 20 6f 66  20 61 20 77 69 6e 64 6f  |title of a windo|
00003890  77 0d 0b 4a 3e 2e 5a 61  70 5f 43 61 6c 6c 42 61  |w..J>.Zap_CallBa|
000038a0  73 65 4d 6f 64 65 20 20  20 45 51 55 44 20 30 20  |seMode   EQUD 0 |
000038b0  20 20 20 5c 20 63 61 6c  6c 20 62 61 73 65 20 6d  |   \ call base m|
000038c0  6f 64 65 20 65 6e 74 72  79 20 70 6f 69 6e 74 0d  |ode entry point.|
000038d0  0b 54 3f 2e 5a 61 70 5f  4e 65 77 56 69 65 77 20  |.T?.Zap_NewView |
000038e0  20 20 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |       EQUD 0   |
000038f0  20 5c 20 6f 70 65 6e 20  61 20 6e 65 77 20 77 69  | \ open a new wi|
00003900  6e 64 6f 77 20 6f 6e 20  61 20 66 69 6c 65 0d 0b  |ndow on a file..|
00003910  5e 3c 2e 5a 61 70 5f 52  65 61 64 53 65 6c 20 20  |^<.Zap_ReadSel  |
00003920  20 20 20 20 20 20 45 51  55 44 20 30 20 20 20 20  |      EQUD 0    |
00003930  5c 20 72 65 61 64 20 74  68 65 20 73 65 6c 65 63  |\ read the selec|
00003940  74 65 64 20 72 65 67 69  6f 6e 0d 0b 68 40 2e 5a  |ted region..h@.Z|
00003950  61 70 5f 52 65 70 6c 61  63 65 20 20 20 20 20 20  |ap_Replace      |
00003960  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 70 65  |  EQUD 0    \ pe|
00003970  72 66 6f 72 6d 20 61 20  73 65 61 72 63 68 20 61  |rform a search a|
00003980  6e 64 20 72 65 70 6c 61  63 65 0d 0b 72 39 2e 5a  |nd replace..r9.Z|
00003990  61 70 5f 53 65 61 72 63  68 20 20 20 20 20 20 20  |ap_Search       |
000039a0  20 20 45 51 55 44 20 30  20 20 20 20 5c 20 70 65  |  EQUD 0    \ pe|
000039b0  72 66 6f 72 6d 20 61 20  66 69 6c 65 20 73 65 61  |rform a file sea|
000039c0  72 63 68 0d 0b 7c 33 2e  5a 61 70 5f 53 65 6c 65  |rch..|3.Zap_Sele|
000039d0  63 74 20 20 20 20 20 20  20 20 20 45 51 55 44 20  |ct         EQUD |
000039e0  30 20 20 20 20 5c 20 73  65 6c 65 63 74 20 61 20  |0    \ select a |
000039f0  72 65 67 69 6f 6e 0d 0b  86 39 2e 5a 61 70 5f 41  |region...9.Zap_A|
00003a00  6c 74 65 72 53 65 6c 20  20 20 20 20 20 20 45 51  |lterSel       EQ|
00003a10  55 44 20 30 20 20 20 20  5c 20 61 6c 74 65 72 20  |UD 0    \ alter |
00003a20  73 65 6c 65 63 74 65 64  20 72 65 67 69 6f 6e 0d  |selected region.|
00003a30  0b 90 3e 2e 5a 61 70 5f  4f 66 66 4c 69 6e 65 43  |..>.Zap_OffLineC|
00003a40  6f 6c 20 20 20 20 20 45  51 55 44 20 30 20 20 20  |ol     EQUD 0   |
00003a50  20 5c 20 63 6f 6e 76 65  72 74 20 66 69 6c 65 20  | \ convert file |
00003a60  6f 66 66 73 65 74 20 74  6f 20 58 2c 59 0d 0b 9a  |offset to X,Y...|
00003a70  04 0d 0b a4 06 5c 4c 0d  0b ae 04 0d 0b b8 07 5d  |.....\L........]|
00003a80  3a ed 0d 0b c2 05 e1 0d  ff                       |:........|
00003a89