Home » Archimedes archive » Micro User » MU 1991-07.adf » PD-Stuff » Utilities/!ModeInfo/!RunImage

Utilities/!ModeInfo/!RunImage

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 » Micro User » MU 1991-07.adf » PD-Stuff
Filename: Utilities/!ModeInfo/!RunImage
Read OK:
File size: 08EB bytes
Load address: 0000
Exec address: 0000
File contents
   10REM > <ModeInfo$Dir>.!RunImage
   20REM Info about current screen mode
   30REM (C) Walther Schoonenberg 1990
   40LIBRARY "<WimpLib$Dir>.Wimp1"
   50LIBRARY "<WimpLib$Dir>.Wimp2"
   60LIBRARY "<WimpLib$Dir>.Wimp4"
   70LIBRARY "<WimpLib$Dir>.Wimp5"
   80:
   90PROCinit
  100PROCpoll
  110PROCclose_task
  120END
  130:
  140DEF PROCpoll
  150mask%=(1<<9)+(1<<5)+(1<<4)+1
  160quit%=FALSE
  170REPEAT
  180  SYS "Wimp_Poll",mask%,q% TO reason%
  190  CASE reason% OF
  200  WHEN 1: PROCredraw_window(!q%)
  210  WHEN 2: PROCopen_window(!q%,q%!4,q%!8,q%!12,q%!16,q%!20,q%!24,q%!28)
  220  WHEN 3: PROCclose_window(!q%)
  230  WHEN 6: PROCmouse_click(!q%,q%!4,q%!8,q%!12,q%!16,q%!20)
  240  WHEN 9: PROCmenu_select
  250  WHEN 17,18: PROCreceive(q%!16)
  260  ENDCASE
  270UNTIL quit%
  280ENDPROC
  290:
  300DEF PROCmenu(menu$)
  310IF menu%=iconmenu% THEN
  320  IF menu$="Quit" quit%=TRUE
  330ENDIF
  340ENDPROC
  350:
  360DEF PROCmouse(b%,handle%,icon%,ob%)
  370CASE b% OF
  380WHEN 2: REM menu-button clicked
  390  IF handle%=-2 PROCdo_menu(iconmenu%)
  400WHEN 1,4: REM select- or alter-button clicked
  410  IF handle%=-2 PROCfront(main%)
  420ENDCASE
  430ENDPROC
  440:
  450DEF PROCreceive(message%)
  460CASE message% OF
  470WHEN 0: quit%=TRUE
  480WHEN &400C1: PROCgetmodeinfo:PROCgetextramodeinfo
  490ENDCASE
  500ENDPROC
  510:
  520DEF PROCgetextramodeinfo
  530maxcol%=FNreadmodevar(3)
  540IF maxcol%=63 maxcol%=255
  550ENDPROC
  560:
  570DEF FNreadmodevar(n%)
  580LOCAL v%
  590SYS "OS_ReadModeVariable",MODE,n% TO ,,v%
  600=v%
  610:
  620DEF PROCredraw(handle%)
  630IF handle%<>main% ENDPROC
  640PROCset_colour(11)
  650PROCset_line(1)
  660PRINT "Current Mode # ";MODE
  670PROCset_colour(7)
  680PROCset_line(3)
  690PRINT "Resolution:"
  700PROCset_line(4)
  710PRINT "internal: ";STR$(scrx%/dx%);",";STR$(scry%/dy%)
  720PROCset_line(5)
  730PRINT "external: ";STR$(scrx%);",";STR$(scry%)
  740PROCset_line(7)
  750PRINT "Number of colours: ";maxcol%+1
  760ENDPROC
  770:
  780DEF FNcreate_main_window
  790LOCAL x%,y%,w%,h%,flags%,titlef%
  800w%=416:h%=270
  810dummy%=RND(-TIME): REM randomize random-generator
  820x%=(scrx%-w%)/2+RND(200)-100
  830y%=(scry%-h%)/2+RND(200)-100
  840flags%=&87000002: REM dus bit 1 en 24 t/m 26 set
  850titlef%=&3D: REM dus bit 0 en 2 t/m 5 set
  860=FNcreate_window(x%,y%,w%,h%,0,0,w%,h%,flags%,wfcol,wbcol,titlef%,program$)
  870:
  880DEF PROCinit
  890program$="ModeInfo"
  900PROCinit_task(program$,1024)
  910PROCopen_template("<Obey$Dir>.Templates",512)
  920info%=FNload_template("Info")
  930PROCclose_template
  940main%=FNcreate_main_window
  950menublocksize%=268:DIM iconmenu% menublocksize%
  960iconmenu_max%=2
  970PROCcreate_menu(iconmenu%,100,program$+",!Info,Quit")
  980icon%=FNiconbar("!ModeInfo")
  990PROCgetextramodeinfo
 1000ENDPROC

 � > <ModeInfo$Dir>.!RunImage
$� Info about current screen mode
#� (C) Walther Schoonenberg 1990
(ț "<WimpLib$Dir>.Wimp1"
2ț "<WimpLib$Dir>.Wimp2"
<ț "<WimpLib$Dir>.Wimp4"
Fț "<WimpLib$Dir>.Wimp5"
P:
Z	�init
d	�poll
n�close_task
x�
�:
�� �poll
� mask%=(1<<9)+(1<<5)+(1<<4)+1
�quit%=�
��
�'  ș "Wimp_Poll",mask%,q% � reason%
�  Ȏ reason% �
�  � 1: �redraw_window(!q%)
�D  � 2: �open_window(!q%,q%!4,q%!8,q%!12,q%!16,q%!20,q%!24,q%!28)
�  � 3: �close_window(!q%)
�8  � 6: �mouse_click(!q%,q%!4,q%!8,q%!12,q%!16,q%!20)
�  � 9: �menu_select
�  � 17,18: �receive(q%!16)
  �
� quit%
�
":
,� �menu(menu$)
6� menu%=iconmenu% �
@  � menu$="Quit" quit%=�
J�
T�
^:
h"� �mouse(b%,handle%,icon%,ob%)
rȎ b% �
|� 2: � menu-button clicked
�&  � handle%=-2 �do_menu(iconmenu%)
�,� 1,4: � select- or alter-button clicked
�   � handle%=-2 �front(main%)
��
��
�:
�� �receive(message%)
�Ȏ message% �
�� 0: quit%=�
�,� &400C1: �getmodeinfo:�getextramodeinfo
��
��
�:
� �getextramodeinfo
maxcol%=�readmodevar(3)
� maxcol%=63 maxcol%=255
&�
0:
:� �readmodevar(n%)
D� v%
N(ș "OS_ReadModeVariable",�,n% � ,,v%
X=v%
b:
l� �redraw(handle%)
v� handle%<>main% �
��set_colour(11)
��set_line(1)
�� "Current Mode # ";�
��set_colour(7)
��set_line(3)
�� "Resolution:"
��set_line(4)
�0� "internal: ";�(scrx%/dx%);",";�(scry%/dy%)
��set_line(5)
�(� "external: ";�(scrx%);",";�(scry%)
��set_line(7)
�%� "Number of colours: ";maxcol%+1
��
:
� �create_main_window
 � x%,y%,w%,h%,flags%,titlef%
 w%=416:h%=270
*.dummy%=�(-�): � randomize random-generator
4x%=(scrx%-w%)/2+�(200)-100
>y%=(scry%-h%)/2+�(200)-100
H2flags%=&87000002: � dus bit 1 en 24 t/m 26 set
R+titlef%=&3D: � dus bit 0 en 2 t/m 5 set
\N=�create_window(x%,y%,w%,h%,0,0,w%,h%,flags%,wfcol,wbcol,titlef%,program$)
f:
p� �init
zprogram$="ModeInfo"
��init_task(program$,1024)
�.�open_template("<Obey$Dir>.Templates",512)
� info%=�load_template("Info")
��close_template
�main%=�create_main_window
�1menublocksize%=268:� iconmenu% menublocksize%
�iconmenu_max%=2
�6�create_menu(iconmenu%,100,program$+",!Info,Quit")
�icon%=�iconbar("!ModeInfo")
��getextramodeinfo
��
�
00000000  0d 00 0a 20 f4 20 3e 20  3c 4d 6f 64 65 49 6e 66  |... . > <ModeInf|
00000010  6f 24 44 69 72 3e 2e 21  52 75 6e 49 6d 61 67 65  |o$Dir>.!RunImage|
00000020  0d 00 14 24 f4 20 49 6e  66 6f 20 61 62 6f 75 74  |...$. Info about|
00000030  20 63 75 72 72 65 6e 74  20 73 63 72 65 65 6e 20  | current screen |
00000040  6d 6f 64 65 0d 00 1e 23  f4 20 28 43 29 20 57 61  |mode...#. (C) Wa|
00000050  6c 74 68 65 72 20 53 63  68 6f 6f 6e 65 6e 62 65  |lther Schoonenbe|
00000060  72 67 20 31 39 39 30 0d  00 28 1c c8 9b 20 22 3c  |rg 1990..(... "<|
00000070  57 69 6d 70 4c 69 62 24  44 69 72 3e 2e 57 69 6d  |WimpLib$Dir>.Wim|
00000080  70 31 22 0d 00 32 1c c8  9b 20 22 3c 57 69 6d 70  |p1"..2... "<Wimp|
00000090  4c 69 62 24 44 69 72 3e  2e 57 69 6d 70 32 22 0d  |Lib$Dir>.Wimp2".|
000000a0  00 3c 1c c8 9b 20 22 3c  57 69 6d 70 4c 69 62 24  |.<... "<WimpLib$|
000000b0  44 69 72 3e 2e 57 69 6d  70 34 22 0d 00 46 1c c8  |Dir>.Wimp4"..F..|
000000c0  9b 20 22 3c 57 69 6d 70  4c 69 62 24 44 69 72 3e  |. "<WimpLib$Dir>|
000000d0  2e 57 69 6d 70 35 22 0d  00 50 05 3a 0d 00 5a 09  |.Wimp5"..P.:..Z.|
000000e0  f2 69 6e 69 74 0d 00 64  09 f2 70 6f 6c 6c 0d 00  |.init..d..poll..|
000000f0  6e 0f f2 63 6c 6f 73 65  5f 74 61 73 6b 0d 00 78  |n..close_task..x|
00000100  05 e0 0d 00 82 05 3a 0d  00 8c 0b dd 20 f2 70 6f  |......:..... .po|
00000110  6c 6c 0d 00 96 20 6d 61  73 6b 25 3d 28 31 3c 3c  |ll... mask%=(1<<|
00000120  39 29 2b 28 31 3c 3c 35  29 2b 28 31 3c 3c 34 29  |9)+(1<<5)+(1<<4)|
00000130  2b 31 0d 00 a0 0b 71 75  69 74 25 3d a3 0d 00 aa  |+1....quit%=....|
00000140  05 f5 0d 00 b4 27 20 20  c8 99 20 22 57 69 6d 70  |.....'  .. "Wimp|
00000150  5f 50 6f 6c 6c 22 2c 6d  61 73 6b 25 2c 71 25 20  |_Poll",mask%,q% |
00000160  b8 20 72 65 61 73 6f 6e  25 0d 00 be 12 20 20 c8  |. reason%....  .|
00000170  8e 20 72 65 61 73 6f 6e  25 20 ca 0d 00 c8 1e 20  |. reason% ..... |
00000180  20 c9 20 31 3a 20 f2 72  65 64 72 61 77 5f 77 69  | . 1: .redraw_wi|
00000190  6e 64 6f 77 28 21 71 25  29 0d 00 d2 44 20 20 c9  |ndow(!q%)...D  .|
000001a0  20 32 3a 20 f2 6f 70 65  6e 5f 77 69 6e 64 6f 77  | 2: .open_window|
000001b0  28 21 71 25 2c 71 25 21  34 2c 71 25 21 38 2c 71  |(!q%,q%!4,q%!8,q|
000001c0  25 21 31 32 2c 71 25 21  31 36 2c 71 25 21 32 30  |%!12,q%!16,q%!20|
000001d0  2c 71 25 21 32 34 2c 71  25 21 32 38 29 0d 00 dc  |,q%!24,q%!28)...|
000001e0  1d 20 20 c9 20 33 3a 20  f2 63 6c 6f 73 65 5f 77  |.  . 3: .close_w|
000001f0  69 6e 64 6f 77 28 21 71  25 29 0d 00 e6 38 20 20  |indow(!q%)...8  |
00000200  c9 20 36 3a 20 f2 6d 6f  75 73 65 5f 63 6c 69 63  |. 6: .mouse_clic|
00000210  6b 28 21 71 25 2c 71 25  21 34 2c 71 25 21 38 2c  |k(!q%,q%!4,q%!8,|
00000220  71 25 21 31 32 2c 71 25  21 31 36 2c 71 25 21 32  |q%!12,q%!16,q%!2|
00000230  30 29 0d 00 f0 17 20 20  c9 20 39 3a 20 f2 6d 65  |0)....  . 9: .me|
00000240  6e 75 5f 73 65 6c 65 63  74 0d 00 fa 1e 20 20 c9  |nu_select....  .|
00000250  20 31 37 2c 31 38 3a 20  f2 72 65 63 65 69 76 65  | 17,18: .receive|
00000260  28 71 25 21 31 36 29 0d  01 04 07 20 20 cb 0d 01  |(q%!16)....  ...|
00000270  0e 0b fd 20 71 75 69 74  25 0d 01 18 05 e1 0d 01  |... quit%.......|
00000280  22 05 3a 0d 01 2c 12 dd  20 f2 6d 65 6e 75 28 6d  |".:..,.. .menu(m|
00000290  65 6e 75 24 29 0d 01 36  17 e7 20 6d 65 6e 75 25  |enu$)..6.. menu%|
000002a0  3d 69 63 6f 6e 6d 65 6e  75 25 20 8c 0d 01 40 1c  |=iconmenu% ...@.|
000002b0  20 20 e7 20 6d 65 6e 75  24 3d 22 51 75 69 74 22  |  . menu$="Quit"|
000002c0  20 71 75 69 74 25 3d b9  0d 01 4a 05 cd 0d 01 54  | quit%=...J....T|
000002d0  05 e1 0d 01 5e 05 3a 0d  01 68 22 dd 20 f2 6d 6f  |....^.:..h". .mo|
000002e0  75 73 65 28 62 25 2c 68  61 6e 64 6c 65 25 2c 69  |use(b%,handle%,i|
000002f0  63 6f 6e 25 2c 6f 62 25  29 0d 01 72 0b c8 8e 20  |con%,ob%)..r... |
00000300  62 25 20 ca 0d 01 7c 1e  c9 20 32 3a 20 f4 20 6d  |b% ...|.. 2: . m|
00000310  65 6e 75 2d 62 75 74 74  6f 6e 20 63 6c 69 63 6b  |enu-button click|
00000320  65 64 0d 01 86 26 20 20  e7 20 68 61 6e 64 6c 65  |ed...&  . handle|
00000330  25 3d 2d 32 20 f2 64 6f  5f 6d 65 6e 75 28 69 63  |%=-2 .do_menu(ic|
00000340  6f 6e 6d 65 6e 75 25 29  0d 01 90 2c c9 20 31 2c  |onmenu%)...,. 1,|
00000350  34 3a 20 f4 20 73 65 6c  65 63 74 2d 20 6f 72 20  |4: . select- or |
00000360  61 6c 74 65 72 2d 62 75  74 74 6f 6e 20 63 6c 69  |alter-button cli|
00000370  63 6b 65 64 0d 01 9a 20  20 20 e7 20 68 61 6e 64  |cked...   . hand|
00000380  6c 65 25 3d 2d 32 20 f2  66 72 6f 6e 74 28 6d 61  |le%=-2 .front(ma|
00000390  69 6e 25 29 0d 01 a4 05  cb 0d 01 ae 05 e1 0d 01  |in%)............|
000003a0  b8 05 3a 0d 01 c2 18 dd  20 f2 72 65 63 65 69 76  |..:..... .receiv|
000003b0  65 28 6d 65 73 73 61 67  65 25 29 0d 01 cc 11 c8  |e(message%).....|
000003c0  8e 20 6d 65 73 73 61 67  65 25 20 ca 0d 01 d6 10  |. message% .....|
000003d0  c9 20 30 3a 20 71 75 69  74 25 3d b9 0d 01 e0 2c  |. 0: quit%=....,|
000003e0  c9 20 26 34 30 30 43 31  3a 20 f2 67 65 74 6d 6f  |. &400C1: .getmo|
000003f0  64 65 69 6e 66 6f 3a f2  67 65 74 65 78 74 72 61  |deinfo:.getextra|
00000400  6d 6f 64 65 69 6e 66 6f  0d 01 ea 05 cb 0d 01 f4  |modeinfo........|
00000410  05 e1 0d 01 fe 05 3a 0d  02 08 17 dd 20 f2 67 65  |......:..... .ge|
00000420  74 65 78 74 72 61 6d 6f  64 65 69 6e 66 6f 0d 02  |textramodeinfo..|
00000430  12 1b 6d 61 78 63 6f 6c  25 3d a4 72 65 61 64 6d  |..maxcol%=.readm|
00000440  6f 64 65 76 61 72 28 33  29 0d 02 1c 1c e7 20 6d  |odevar(3)..... m|
00000450  61 78 63 6f 6c 25 3d 36  33 20 6d 61 78 63 6f 6c  |axcol%=63 maxcol|
00000460  25 3d 32 35 35 0d 02 26  05 e1 0d 02 30 05 3a 0d  |%=255..&....0.:.|
00000470  02 3a 16 dd 20 a4 72 65  61 64 6d 6f 64 65 76 61  |.:.. .readmodeva|
00000480  72 28 6e 25 29 0d 02 44  08 ea 20 76 25 0d 02 4e  |r(n%)..D.. v%..N|
00000490  28 c8 99 20 22 4f 53 5f  52 65 61 64 4d 6f 64 65  |(.. "OS_ReadMode|
000004a0  56 61 72 69 61 62 6c 65  22 2c eb 2c 6e 25 20 b8  |Variable",.,n% .|
000004b0  20 2c 2c 76 25 0d 02 58  07 3d 76 25 0d 02 62 05  | ,,v%..X.=v%..b.|
000004c0  3a 0d 02 6c 16 dd 20 f2  72 65 64 72 61 77 28 68  |:..l.. .redraw(h|
000004d0  61 6e 64 6c 65 25 29 0d  02 76 16 e7 20 68 61 6e  |andle%)..v.. han|
000004e0  64 6c 65 25 3c 3e 6d 61  69 6e 25 20 e1 0d 02 80  |dle%<>main% ....|
000004f0  13 f2 73 65 74 5f 63 6f  6c 6f 75 72 28 31 31 29  |..set_colour(11)|
00000500  0d 02 8a 10 f2 73 65 74  5f 6c 69 6e 65 28 31 29  |.....set_line(1)|
00000510  0d 02 94 19 f1 20 22 43  75 72 72 65 6e 74 20 4d  |..... "Current M|
00000520  6f 64 65 20 23 20 22 3b  eb 0d 02 9e 12 f2 73 65  |ode # ";......se|
00000530  74 5f 63 6f 6c 6f 75 72  28 37 29 0d 02 a8 10 f2  |t_colour(7).....|
00000540  73 65 74 5f 6c 69 6e 65  28 33 29 0d 02 b2 13 f1  |set_line(3).....|
00000550  20 22 52 65 73 6f 6c 75  74 69 6f 6e 3a 22 0d 02  | "Resolution:"..|
00000560  bc 10 f2 73 65 74 5f 6c  69 6e 65 28 34 29 0d 02  |...set_line(4)..|
00000570  c6 30 f1 20 22 69 6e 74  65 72 6e 61 6c 3a 20 22  |.0. "internal: "|
00000580  3b c3 28 73 63 72 78 25  2f 64 78 25 29 3b 22 2c  |;.(scrx%/dx%);",|
00000590  22 3b c3 28 73 63 72 79  25 2f 64 79 25 29 0d 02  |";.(scry%/dy%)..|
000005a0  d0 10 f2 73 65 74 5f 6c  69 6e 65 28 35 29 0d 02  |...set_line(5)..|
000005b0  da 28 f1 20 22 65 78 74  65 72 6e 61 6c 3a 20 22  |.(. "external: "|
000005c0  3b c3 28 73 63 72 78 25  29 3b 22 2c 22 3b c3 28  |;.(scrx%);",";.(|
000005d0  73 63 72 79 25 29 0d 02  e4 10 f2 73 65 74 5f 6c  |scry%).....set_l|
000005e0  69 6e 65 28 37 29 0d 02  ee 25 f1 20 22 4e 75 6d  |ine(7)...%. "Num|
000005f0  62 65 72 20 6f 66 20 63  6f 6c 6f 75 72 73 3a 20  |ber of colours: |
00000600  22 3b 6d 61 78 63 6f 6c  25 2b 31 0d 02 f8 05 e1  |";maxcol%+1.....|
00000610  0d 03 02 05 3a 0d 03 0c  19 dd 20 a4 63 72 65 61  |....:..... .crea|
00000620  74 65 5f 6d 61 69 6e 5f  77 69 6e 64 6f 77 0d 03  |te_main_window..|
00000630  16 20 ea 20 78 25 2c 79  25 2c 77 25 2c 68 25 2c  |. . x%,y%,w%,h%,|
00000640  66 6c 61 67 73 25 2c 74  69 74 6c 65 66 25 0d 03  |flags%,titlef%..|
00000650  20 11 77 25 3d 34 31 36  3a 68 25 3d 32 37 30 0d  | .w%=416:h%=270.|
00000660  03 2a 2e 64 75 6d 6d 79  25 3d b3 28 2d 91 29 3a  |.*.dummy%=.(-.):|
00000670  20 f4 20 72 61 6e 64 6f  6d 69 7a 65 20 72 61 6e  | . randomize ran|
00000680  64 6f 6d 2d 67 65 6e 65  72 61 74 6f 72 0d 03 34  |dom-generator..4|
00000690  1e 78 25 3d 28 73 63 72  78 25 2d 77 25 29 2f 32  |.x%=(scrx%-w%)/2|
000006a0  2b b3 28 32 30 30 29 2d  31 30 30 0d 03 3e 1e 79  |+.(200)-100..>.y|
000006b0  25 3d 28 73 63 72 79 25  2d 68 25 29 2f 32 2b b3  |%=(scry%-h%)/2+.|
000006c0  28 32 30 30 29 2d 31 30  30 0d 03 48 32 66 6c 61  |(200)-100..H2fla|
000006d0  67 73 25 3d 26 38 37 30  30 30 30 30 32 3a 20 f4  |gs%=&87000002: .|
000006e0  20 64 75 73 20 62 69 74  20 31 20 65 6e 20 32 34  | dus bit 1 en 24|
000006f0  20 74 2f 6d 20 32 36 20  73 65 74 0d 03 52 2b 74  | t/m 26 set..R+t|
00000700  69 74 6c 65 66 25 3d 26  33 44 3a 20 f4 20 64 75  |itlef%=&3D: . du|
00000710  73 20 62 69 74 20 30 20  65 6e 20 32 20 74 2f 6d  |s bit 0 en 2 t/m|
00000720  20 35 20 73 65 74 0d 03  5c 4e 3d a4 63 72 65 61  | 5 set..\N=.crea|
00000730  74 65 5f 77 69 6e 64 6f  77 28 78 25 2c 79 25 2c  |te_window(x%,y%,|
00000740  77 25 2c 68 25 2c 30 2c  30 2c 77 25 2c 68 25 2c  |w%,h%,0,0,w%,h%,|
00000750  66 6c 61 67 73 25 2c 77  66 63 6f 6c 2c 77 62 63  |flags%,wfcol,wbc|
00000760  6f 6c 2c 74 69 74 6c 65  66 25 2c 70 72 6f 67 72  |ol,titlef%,progr|
00000770  61 6d 24 29 0d 03 66 05  3a 0d 03 70 0b dd 20 f2  |am$)..f.:..p.. .|
00000780  69 6e 69 74 0d 03 7a 17  70 72 6f 67 72 61 6d 24  |init..z.program$|
00000790  3d 22 4d 6f 64 65 49 6e  66 6f 22 0d 03 84 1d f2  |="ModeInfo".....|
000007a0  69 6e 69 74 5f 74 61 73  6b 28 70 72 6f 67 72 61  |init_task(progra|
000007b0  6d 24 2c 31 30 32 34 29  0d 03 8e 2e f2 6f 70 65  |m$,1024).....ope|
000007c0  6e 5f 74 65 6d 70 6c 61  74 65 28 22 3c 4f 62 65  |n_template("<Obe|
000007d0  79 24 44 69 72 3e 2e 54  65 6d 70 6c 61 74 65 73  |y$Dir>.Templates|
000007e0  22 2c 35 31 32 29 0d 03  98 20 69 6e 66 6f 25 3d  |",512)... info%=|
000007f0  a4 6c 6f 61 64 5f 74 65  6d 70 6c 61 74 65 28 22  |.load_template("|
00000800  49 6e 66 6f 22 29 0d 03  a2 13 f2 63 6c 6f 73 65  |Info").....close|
00000810  5f 74 65 6d 70 6c 61 74  65 0d 03 ac 1d 6d 61 69  |_template....mai|
00000820  6e 25 3d a4 63 72 65 61  74 65 5f 6d 61 69 6e 5f  |n%=.create_main_|
00000830  77 69 6e 64 6f 77 0d 03  b6 31 6d 65 6e 75 62 6c  |window...1menubl|
00000840  6f 63 6b 73 69 7a 65 25  3d 32 36 38 3a de 20 69  |ocksize%=268:. i|
00000850  63 6f 6e 6d 65 6e 75 25  20 6d 65 6e 75 62 6c 6f  |conmenu% menublo|
00000860  63 6b 73 69 7a 65 25 0d  03 c0 13 69 63 6f 6e 6d  |cksize%....iconm|
00000870  65 6e 75 5f 6d 61 78 25  3d 32 0d 03 ca 36 f2 63  |enu_max%=2...6.c|
00000880  72 65 61 74 65 5f 6d 65  6e 75 28 69 63 6f 6e 6d  |reate_menu(iconm|
00000890  65 6e 75 25 2c 31 30 30  2c 70 72 6f 67 72 61 6d  |enu%,100,program|
000008a0  24 2b 22 2c 21 49 6e 66  6f 2c 51 75 69 74 22 29  |$+",!Info,Quit")|
000008b0  0d 03 d4 1f 69 63 6f 6e  25 3d a4 69 63 6f 6e 62  |....icon%=.iconb|
000008c0  61 72 28 22 21 4d 6f 64  65 49 6e 66 6f 22 29 0d  |ar("!ModeInfo").|
000008d0  03 de 15 f2 67 65 74 65  78 74 72 61 6d 6f 64 65  |....getextramode|
000008e0  69 6e 66 6f 0d 03 e8 05  e1 0d ff                 |info.......|
000008eb