Home » Recent acquisitions » Acorn ADFS disks » adfs_AcornUser_199312.adf » !OmniDesk_OmniDesk » !SWI/!Help

!SWI/!Help

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 » Recent acquisitions » Acorn ADFS disks » adfs_AcornUser_199312.adf » !OmniDesk_OmniDesk
Filename: !SWI/!Help
Read OK:
File size: 09F0 bytes
Load address: 0000
Exec address: 0000
File contents
SWI Index
~~~~~~~~~

An OmniDesk Utility
by Richard G. Hallas

SWI Index provides a listing of all the SoftWare Interrupt calls available
on the machine and an electronic index to the Programmer's Reference Manual
(PRM).

When first loaded, there is an initial delay (with hourglass and percentage)
whilst the program searches through the loaded modules, and then a window is
presented showing SWI calls provided by the alphabetical first module in the
machine. Any module which is documented in the PRM will also have a page
reference alongside each SWI call.

Clicking Menu over the index window presents the main utility menu:

'Info' leads to a standard information window.

'Module index' leads to a submenu entitled 'Modules providing SWIs'. All the
modules currently loaded are listed here in alphabetical order. (Note that
modules which do not provide SWI calls are not included.) The module which
is displayed in the index window will be ticked in the menu. Simply choose a
module from the menu to update the index window. If you load or delete any
modules after running SWI Index, choose the first menu item, 'Re-scan
modules', to update the list.

'PRM page index' leads to a submenu entitled 'PRM Edition'. There have so
far been three editions of the PRM: for Arthur, Risc OS 2 and Risc OS 3.
Indices for each are provided in the menu, and you can switch between them
simply by choosing an alternative. The index window will update as
appropriate.

'Window position' leads to a window which lets you determine where the index
window appears on the screen. This corresponds to an invisible grid, and
when you change screen mode the window will snap to this grid. (This feature
can be disabled by clicking Adjust on the small window icon, which makes it
disappear.)

'Save SWI list' leads to a save box from which you can save a text file of
SWI calls. A button at the bottom of the save window toggles between 'This
Module' and 'All Modules' when you click on it. When it shows 'This Module',
just the SWI calls for the module in the index window will be saved;
otherwise the file will contain all the SWI call currently known to the
machine.

'Save settings' will save the PRM edition in use and the screen location of
the index window.

NOTE: As to accuracy of the index files, the Arthur file's accuracy is not
guaranteed, since it was reconstructed (with corrections) from an ArcScan
file. However, the Risc OS 2 and Risc OS 3 indices have been thoroughly
checked, and are in fact more accurate than their printed counterparts.
00000000  53 57 49 20 49 6e 64 65  78 0a 7e 7e 7e 7e 7e 7e  |SWI Index.~~~~~~|
00000010  7e 7e 7e 0a 0a 41 6e 20  4f 6d 6e 69 44 65 73 6b  |~~~..An OmniDesk|
00000020  20 55 74 69 6c 69 74 79  0a 62 79 20 52 69 63 68  | Utility.by Rich|
00000030  61 72 64 20 47 2e 20 48  61 6c 6c 61 73 0a 0a 53  |ard G. Hallas..S|
00000040  57 49 20 49 6e 64 65 78  20 70 72 6f 76 69 64 65  |WI Index provide|
00000050  73 20 61 20 6c 69 73 74  69 6e 67 20 6f 66 20 61  |s a listing of a|
00000060  6c 6c 20 74 68 65 20 53  6f 66 74 57 61 72 65 20  |ll the SoftWare |
00000070  49 6e 74 65 72 72 75 70  74 20 63 61 6c 6c 73 20  |Interrupt calls |
00000080  61 76 61 69 6c 61 62 6c  65 0a 6f 6e 20 74 68 65  |available.on the|
00000090  20 6d 61 63 68 69 6e 65  20 61 6e 64 20 61 6e 20  | machine and an |
000000a0  65 6c 65 63 74 72 6f 6e  69 63 20 69 6e 64 65 78  |electronic index|
000000b0  20 74 6f 20 74 68 65 20  50 72 6f 67 72 61 6d 6d  | to the Programm|
000000c0  65 72 27 73 20 52 65 66  65 72 65 6e 63 65 20 4d  |er's Reference M|
000000d0  61 6e 75 61 6c 0a 28 50  52 4d 29 2e 0a 0a 57 68  |anual.(PRM)...Wh|
000000e0  65 6e 20 66 69 72 73 74  20 6c 6f 61 64 65 64 2c  |en first loaded,|
000000f0  20 74 68 65 72 65 20 69  73 20 61 6e 20 69 6e 69  | there is an ini|
00000100  74 69 61 6c 20 64 65 6c  61 79 20 28 77 69 74 68  |tial delay (with|
00000110  20 68 6f 75 72 67 6c 61  73 73 20 61 6e 64 20 70  | hourglass and p|
00000120  65 72 63 65 6e 74 61 67  65 29 0a 77 68 69 6c 73  |ercentage).whils|
00000130  74 20 74 68 65 20 70 72  6f 67 72 61 6d 20 73 65  |t the program se|
00000140  61 72 63 68 65 73 20 74  68 72 6f 75 67 68 20 74  |arches through t|
00000150  68 65 20 6c 6f 61 64 65  64 20 6d 6f 64 75 6c 65  |he loaded module|
00000160  73 2c 20 61 6e 64 20 74  68 65 6e 20 61 20 77 69  |s, and then a wi|
00000170  6e 64 6f 77 20 69 73 0a  70 72 65 73 65 6e 74 65  |ndow is.presente|
00000180  64 20 73 68 6f 77 69 6e  67 20 53 57 49 20 63 61  |d showing SWI ca|
00000190  6c 6c 73 20 70 72 6f 76  69 64 65 64 20 62 79 20  |lls provided by |
000001a0  74 68 65 20 61 6c 70 68  61 62 65 74 69 63 61 6c  |the alphabetical|
000001b0  20 66 69 72 73 74 20 6d  6f 64 75 6c 65 20 69 6e  | first module in|
000001c0  20 74 68 65 0a 6d 61 63  68 69 6e 65 2e 20 41 6e  | the.machine. An|
000001d0  79 20 6d 6f 64 75 6c 65  20 77 68 69 63 68 20 69  |y module which i|
000001e0  73 20 64 6f 63 75 6d 65  6e 74 65 64 20 69 6e 20  |s documented in |
000001f0  74 68 65 20 50 52 4d 20  77 69 6c 6c 20 61 6c 73  |the PRM will als|
00000200  6f 20 68 61 76 65 20 61  20 70 61 67 65 0a 72 65  |o have a page.re|
00000210  66 65 72 65 6e 63 65 20  61 6c 6f 6e 67 73 69 64  |ference alongsid|
00000220  65 20 65 61 63 68 20 53  57 49 20 63 61 6c 6c 2e  |e each SWI call.|
00000230  0a 0a 43 6c 69 63 6b 69  6e 67 20 4d 65 6e 75 20  |..Clicking Menu |
00000240  6f 76 65 72 20 74 68 65  20 69 6e 64 65 78 20 77  |over the index w|
00000250  69 6e 64 6f 77 20 70 72  65 73 65 6e 74 73 20 74  |indow presents t|
00000260  68 65 20 6d 61 69 6e 20  75 74 69 6c 69 74 79 20  |he main utility |
00000270  6d 65 6e 75 3a 0a 0a 27  49 6e 66 6f 27 20 6c 65  |menu:..'Info' le|
00000280  61 64 73 20 74 6f 20 61  20 73 74 61 6e 64 61 72  |ads to a standar|
00000290  64 20 69 6e 66 6f 72 6d  61 74 69 6f 6e 20 77 69  |d information wi|
000002a0  6e 64 6f 77 2e 0a 0a 27  4d 6f 64 75 6c 65 20 69  |ndow...'Module i|
000002b0  6e 64 65 78 27 20 6c 65  61 64 73 20 74 6f 20 61  |ndex' leads to a|
000002c0  20 73 75 62 6d 65 6e 75  20 65 6e 74 69 74 6c 65  | submenu entitle|
000002d0  64 20 27 4d 6f 64 75 6c  65 73 20 70 72 6f 76 69  |d 'Modules provi|
000002e0  64 69 6e 67 20 53 57 49  73 27 2e 20 41 6c 6c 20  |ding SWIs'. All |
000002f0  74 68 65 0a 6d 6f 64 75  6c 65 73 20 63 75 72 72  |the.modules curr|
00000300  65 6e 74 6c 79 20 6c 6f  61 64 65 64 20 61 72 65  |ently loaded are|
00000310  20 6c 69 73 74 65 64 20  68 65 72 65 20 69 6e 20  | listed here in |
00000320  61 6c 70 68 61 62 65 74  69 63 61 6c 20 6f 72 64  |alphabetical ord|
00000330  65 72 2e 20 28 4e 6f 74  65 20 74 68 61 74 0a 6d  |er. (Note that.m|
00000340  6f 64 75 6c 65 73 20 77  68 69 63 68 20 64 6f 20  |odules which do |
00000350  6e 6f 74 20 70 72 6f 76  69 64 65 20 53 57 49 20  |not provide SWI |
00000360  63 61 6c 6c 73 20 61 72  65 20 6e 6f 74 20 69 6e  |calls are not in|
00000370  63 6c 75 64 65 64 2e 29  20 54 68 65 20 6d 6f 64  |cluded.) The mod|
00000380  75 6c 65 20 77 68 69 63  68 0a 69 73 20 64 69 73  |ule which.is dis|
00000390  70 6c 61 79 65 64 20 69  6e 20 74 68 65 20 69 6e  |played in the in|
000003a0  64 65 78 20 77 69 6e 64  6f 77 20 77 69 6c 6c 20  |dex window will |
000003b0  62 65 20 74 69 63 6b 65  64 20 69 6e 20 74 68 65  |be ticked in the|
000003c0  20 6d 65 6e 75 2e 20 53  69 6d 70 6c 79 20 63 68  | menu. Simply ch|
000003d0  6f 6f 73 65 20 61 0a 6d  6f 64 75 6c 65 20 66 72  |oose a.module fr|
000003e0  6f 6d 20 74 68 65 20 6d  65 6e 75 20 74 6f 20 75  |om the menu to u|
000003f0  70 64 61 74 65 20 74 68  65 20 69 6e 64 65 78 20  |pdate the index |
00000400  77 69 6e 64 6f 77 2e 20  49 66 20 79 6f 75 20 6c  |window. If you l|
00000410  6f 61 64 20 6f 72 20 64  65 6c 65 74 65 20 61 6e  |oad or delete an|
00000420  79 0a 6d 6f 64 75 6c 65  73 20 61 66 74 65 72 20  |y.modules after |
00000430  72 75 6e 6e 69 6e 67 20  53 57 49 20 49 6e 64 65  |running SWI Inde|
00000440  78 2c 20 63 68 6f 6f 73  65 20 74 68 65 20 66 69  |x, choose the fi|
00000450  72 73 74 20 6d 65 6e 75  20 69 74 65 6d 2c 20 27  |rst menu item, '|
00000460  52 65 2d 73 63 61 6e 0a  6d 6f 64 75 6c 65 73 27  |Re-scan.modules'|
00000470  2c 20 74 6f 20 75 70 64  61 74 65 20 74 68 65 20  |, to update the |
00000480  6c 69 73 74 2e 0a 0a 27  50 52 4d 20 70 61 67 65  |list...'PRM page|
00000490  20 69 6e 64 65 78 27 20  6c 65 61 64 73 20 74 6f  | index' leads to|
000004a0  20 61 20 73 75 62 6d 65  6e 75 20 65 6e 74 69 74  | a submenu entit|
000004b0  6c 65 64 20 27 50 52 4d  20 45 64 69 74 69 6f 6e  |led 'PRM Edition|
000004c0  27 2e 20 54 68 65 72 65  20 68 61 76 65 20 73 6f  |'. There have so|
000004d0  0a 66 61 72 20 62 65 65  6e 20 74 68 72 65 65 20  |.far been three |
000004e0  65 64 69 74 69 6f 6e 73  20 6f 66 20 74 68 65 20  |editions of the |
000004f0  50 52 4d 3a 20 66 6f 72  20 41 72 74 68 75 72 2c  |PRM: for Arthur,|
00000500  20 52 69 73 63 20 4f 53  20 32 20 61 6e 64 20 52  | Risc OS 2 and R|
00000510  69 73 63 20 4f 53 20 33  2e 0a 49 6e 64 69 63 65  |isc OS 3..Indice|
00000520  73 20 66 6f 72 20 65 61  63 68 20 61 72 65 20 70  |s for each are p|
00000530  72 6f 76 69 64 65 64 20  69 6e 20 74 68 65 20 6d  |rovided in the m|
00000540  65 6e 75 2c 20 61 6e 64  20 79 6f 75 20 63 61 6e  |enu, and you can|
00000550  20 73 77 69 74 63 68 20  62 65 74 77 65 65 6e 20  | switch between |
00000560  74 68 65 6d 0a 73 69 6d  70 6c 79 20 62 79 20 63  |them.simply by c|
00000570  68 6f 6f 73 69 6e 67 20  61 6e 20 61 6c 74 65 72  |hoosing an alter|
00000580  6e 61 74 69 76 65 2e 20  54 68 65 20 69 6e 64 65  |native. The inde|
00000590  78 20 77 69 6e 64 6f 77  20 77 69 6c 6c 20 75 70  |x window will up|
000005a0  64 61 74 65 20 61 73 0a  61 70 70 72 6f 70 72 69  |date as.appropri|
000005b0  61 74 65 2e 0a 0a 27 57  69 6e 64 6f 77 20 70 6f  |ate...'Window po|
000005c0  73 69 74 69 6f 6e 27 20  6c 65 61 64 73 20 74 6f  |sition' leads to|
000005d0  20 61 20 77 69 6e 64 6f  77 20 77 68 69 63 68 20  | a window which |
000005e0  6c 65 74 73 20 79 6f 75  20 64 65 74 65 72 6d 69  |lets you determi|
000005f0  6e 65 20 77 68 65 72 65  20 74 68 65 20 69 6e 64  |ne where the ind|
00000600  65 78 0a 77 69 6e 64 6f  77 20 61 70 70 65 61 72  |ex.window appear|
00000610  73 20 6f 6e 20 74 68 65  20 73 63 72 65 65 6e 2e  |s on the screen.|
00000620  20 54 68 69 73 20 63 6f  72 72 65 73 70 6f 6e 64  | This correspond|
00000630  73 20 74 6f 20 61 6e 20  69 6e 76 69 73 69 62 6c  |s to an invisibl|
00000640  65 20 67 72 69 64 2c 20  61 6e 64 0a 77 68 65 6e  |e grid, and.when|
00000650  20 79 6f 75 20 63 68 61  6e 67 65 20 73 63 72 65  | you change scre|
00000660  65 6e 20 6d 6f 64 65 20  74 68 65 20 77 69 6e 64  |en mode the wind|
00000670  6f 77 20 77 69 6c 6c 20  73 6e 61 70 20 74 6f 20  |ow will snap to |
00000680  74 68 69 73 20 67 72 69  64 2e 20 28 54 68 69 73  |this grid. (This|
00000690  20 66 65 61 74 75 72 65  0a 63 61 6e 20 62 65 20  | feature.can be |
000006a0  64 69 73 61 62 6c 65 64  20 62 79 20 63 6c 69 63  |disabled by clic|
000006b0  6b 69 6e 67 20 41 64 6a  75 73 74 20 6f 6e 20 74  |king Adjust on t|
000006c0  68 65 20 73 6d 61 6c 6c  20 77 69 6e 64 6f 77 20  |he small window |
000006d0  69 63 6f 6e 2c 20 77 68  69 63 68 20 6d 61 6b 65  |icon, which make|
000006e0  73 20 69 74 0a 64 69 73  61 70 70 65 61 72 2e 29  |s it.disappear.)|
000006f0  0a 0a 27 53 61 76 65 20  53 57 49 20 6c 69 73 74  |..'Save SWI list|
00000700  27 20 6c 65 61 64 73 20  74 6f 20 61 20 73 61 76  |' leads to a sav|
00000710  65 20 62 6f 78 20 66 72  6f 6d 20 77 68 69 63 68  |e box from which|
00000720  20 79 6f 75 20 63 61 6e  20 73 61 76 65 20 61 20  | you can save a |
00000730  74 65 78 74 20 66 69 6c  65 20 6f 66 0a 53 57 49  |text file of.SWI|
00000740  20 63 61 6c 6c 73 2e 20  41 20 62 75 74 74 6f 6e  | calls. A button|
00000750  20 61 74 20 74 68 65 20  62 6f 74 74 6f 6d 20 6f  | at the bottom o|
00000760  66 20 74 68 65 20 73 61  76 65 20 77 69 6e 64 6f  |f the save windo|
00000770  77 20 74 6f 67 67 6c 65  73 20 62 65 74 77 65 65  |w toggles betwee|
00000780  6e 20 27 54 68 69 73 0a  4d 6f 64 75 6c 65 27 20  |n 'This.Module' |
00000790  61 6e 64 20 27 41 6c 6c  20 4d 6f 64 75 6c 65 73  |and 'All Modules|
000007a0  27 20 77 68 65 6e 20 79  6f 75 20 63 6c 69 63 6b  |' when you click|
000007b0  20 6f 6e 20 69 74 2e 20  57 68 65 6e 20 69 74 20  | on it. When it |
000007c0  73 68 6f 77 73 20 27 54  68 69 73 20 4d 6f 64 75  |shows 'This Modu|
000007d0  6c 65 27 2c 0a 6a 75 73  74 20 74 68 65 20 53 57  |le',.just the SW|
000007e0  49 20 63 61 6c 6c 73 20  66 6f 72 20 74 68 65 20  |I calls for the |
000007f0  6d 6f 64 75 6c 65 20 69  6e 20 74 68 65 20 69 6e  |module in the in|
00000800  64 65 78 20 77 69 6e 64  6f 77 20 77 69 6c 6c 20  |dex window will |
00000810  62 65 20 73 61 76 65 64  3b 0a 6f 74 68 65 72 77  |be saved;.otherw|
00000820  69 73 65 20 74 68 65 20  66 69 6c 65 20 77 69 6c  |ise the file wil|
00000830  6c 20 63 6f 6e 74 61 69  6e 20 61 6c 6c 20 74 68  |l contain all th|
00000840  65 20 53 57 49 20 63 61  6c 6c 20 63 75 72 72 65  |e SWI call curre|
00000850  6e 74 6c 79 20 6b 6e 6f  77 6e 20 74 6f 20 74 68  |ntly known to th|
00000860  65 0a 6d 61 63 68 69 6e  65 2e 0a 0a 27 53 61 76  |e.machine...'Sav|
00000870  65 20 73 65 74 74 69 6e  67 73 27 20 77 69 6c 6c  |e settings' will|
00000880  20 73 61 76 65 20 74 68  65 20 50 52 4d 20 65 64  | save the PRM ed|
00000890  69 74 69 6f 6e 20 69 6e  20 75 73 65 20 61 6e 64  |ition in use and|
000008a0  20 74 68 65 20 73 63 72  65 65 6e 20 6c 6f 63 61  | the screen loca|
000008b0  74 69 6f 6e 20 6f 66 0a  74 68 65 20 69 6e 64 65  |tion of.the inde|
000008c0  78 20 77 69 6e 64 6f 77  2e 0a 0a 4e 4f 54 45 3a  |x window...NOTE:|
000008d0  20 41 73 20 74 6f 20 61  63 63 75 72 61 63 79 20  | As to accuracy |
000008e0  6f 66 20 74 68 65 20 69  6e 64 65 78 20 66 69 6c  |of the index fil|
000008f0  65 73 2c 20 74 68 65 20  41 72 74 68 75 72 20 66  |es, the Arthur f|
00000900  69 6c 65 27 73 20 61 63  63 75 72 61 63 79 20 69  |ile's accuracy i|
00000910  73 20 6e 6f 74 0a 67 75  61 72 61 6e 74 65 65 64  |s not.guaranteed|
00000920  2c 20 73 69 6e 63 65 20  69 74 20 77 61 73 20 72  |, since it was r|
00000930  65 63 6f 6e 73 74 72 75  63 74 65 64 20 28 77 69  |econstructed (wi|
00000940  74 68 20 63 6f 72 72 65  63 74 69 6f 6e 73 29 20  |th corrections) |
00000950  66 72 6f 6d 20 61 6e 20  41 72 63 53 63 61 6e 0a  |from an ArcScan.|
00000960  66 69 6c 65 2e 20 48 6f  77 65 76 65 72 2c 20 74  |file. However, t|
00000970  68 65 20 52 69 73 63 20  4f 53 20 32 20 61 6e 64  |he Risc OS 2 and|
00000980  20 52 69 73 63 20 4f 53  20 33 20 69 6e 64 69 63  | Risc OS 3 indic|
00000990  65 73 20 68 61 76 65 20  62 65 65 6e 20 74 68 6f  |es have been tho|
000009a0  72 6f 75 67 68 6c 79 0a  63 68 65 63 6b 65 64 2c  |roughly.checked,|
000009b0  20 61 6e 64 20 61 72 65  20 69 6e 20 66 61 63 74  | and are in fact|
000009c0  20 6d 6f 72 65 20 61 63  63 75 72 61 74 65 20 74  | more accurate t|
000009d0  68 61 6e 20 74 68 65 69  72 20 70 72 69 6e 74 65  |han their printe|
000009e0  64 20 63 6f 75 6e 74 65  72 70 61 72 74 73 2e 0a  |d counterparts..|
000009f0