Home » Archimedes archive » Acorn User » AU 1996-12 B.adf » Regulars_2 » StarInfo/Clifford/!Macros/MacroCode/s/LCaretSrc

StarInfo/Clifford/!Macros/MacroCode/s/LCaretSrc

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 » AU 1996-12 B.adf » Regulars_2
Filename: StarInfo/Clifford/!Macros/MacroCode/s/LCaretSrc
Read OK:
File size: 030C bytes
Load address: 0000
Exec address: 0000
File contents
   10DIM code% &1000
   20
   30FOR pass%=%1000 TO %1010 STEP 2
   40P%=code%:L%=code%+&1000
   50[   opt     pass%
   60    equs    "MCDE"
   70    equd    name - code%
   71    equd    description - code%
   80    equd    0
  100    equd    0
  101    equd    key_code - code%
  120
  130.name
  140    equs    "LoseCaret"
  150    equb    0
  160
  170.description
  180    equs    "Lose caret"
  190    equb    9
  200    equs    "0.01 (21 May 1996)"
  210    equb    0
  220    align
  230
  240.key_code
  250    stmfd   r13!, {r14}
  260    mov     r0, #3
  270    swi     "XWimp_ReadSysInfo"
  280    ldmvsfd r13!, {pc}^
  290    cmp     r0, #1
  300    ldmnefd r13!, {pc}^
  310    mvn     r0, #NOT(-1)
  320    swi     "XWimp_SetCaretPosition"
  330    ldmfd   r13!, {pc}^
  340]
  350NEXT
  360
  370SYS "OS_File", 10, "LoseCaret", &ffd, , code%, P%
  380END

� code% &1000

� pass%=%1000 � %1010 � 2
(P%=code%:L%=code%+&1000
2[   opt     pass%
<    equs    "MCDE"
F    equd    name - code%
G#    equd    description - code%
P    equd    0
d    equd    0
e     equd    key_code - code%
x
�	.name
�    equs    "LoseCaret"
�    equb    0
�
�.description
�    equs    "Lose caret"
�    equb    9
�$    equs    "0.01 (21 May 1996)"
�    equb    0
�
    align
�
�
.key_code
�    stmfd   r13!, {r14}
    mov     r0, #3
#    swi     "XWimp_ReadSysInfo"
    ldmvsfd r13!, {pc}^
"    cmp     r0, #1
,    ldmnefd r13!, {pc}^
6    mvn     r0, #�(-1)
@(    swi     "XWimp_SetCaretPosition"
J    ldmfd   r13!, {pc}^
T]
^�
h
r4ș "OS_File", 10, "LoseCaret", &ffd, , code%, P%
|�
�
00000000  0d 00 0a 11 de 20 63 6f  64 65 25 20 26 31 30 30  |..... code% &100|
00000010  30 0d 00 14 04 0d 00 1e  1d e3 20 70 61 73 73 25  |0......... pass%|
00000020  3d 25 31 30 30 30 20 b8  20 25 31 30 31 30 20 88  |=%1000 . %1010 .|
00000030  20 32 0d 00 28 1b 50 25  3d 63 6f 64 65 25 3a 4c  | 2..(.P%=code%:L|
00000040  25 3d 63 6f 64 65 25 2b  26 31 30 30 30 0d 00 32  |%=code%+&1000..2|
00000050  15 5b 20 20 20 6f 70 74  20 20 20 20 20 70 61 73  |.[   opt     pas|
00000060  73 25 0d 00 3c 16 20 20  20 20 65 71 75 73 20 20  |s%..<.    equs  |
00000070  20 20 22 4d 43 44 45 22  0d 00 46 1c 20 20 20 20  |  "MCDE"..F.    |
00000080  65 71 75 64 20 20 20 20  6e 61 6d 65 20 2d 20 63  |equd    name - c|
00000090  6f 64 65 25 0d 00 47 23  20 20 20 20 65 71 75 64  |ode%..G#    equd|
000000a0  20 20 20 20 64 65 73 63  72 69 70 74 69 6f 6e 20  |    description |
000000b0  2d 20 63 6f 64 65 25 0d  00 50 11 20 20 20 20 65  |- code%..P.    e|
000000c0  71 75 64 20 20 20 20 30  0d 00 64 11 20 20 20 20  |qud    0..d.    |
000000d0  65 71 75 64 20 20 20 20  30 0d 00 65 20 20 20 20  |equd    0..e    |
000000e0  20 65 71 75 64 20 20 20  20 6b 65 79 5f 63 6f 64  | equd    key_cod|
000000f0  65 20 2d 20 63 6f 64 65  25 0d 00 78 04 0d 00 82  |e - code%..x....|
00000100  09 2e 6e 61 6d 65 0d 00  8c 1b 20 20 20 20 65 71  |..name....    eq|
00000110  75 73 20 20 20 20 22 4c  6f 73 65 43 61 72 65 74  |us    "LoseCaret|
00000120  22 0d 00 96 11 20 20 20  20 65 71 75 62 20 20 20  |"....    equb   |
00000130  20 30 0d 00 a0 04 0d 00  aa 10 2e 64 65 73 63 72  | 0.........descr|
00000140  69 70 74 69 6f 6e 0d 00  b4 1c 20 20 20 20 65 71  |iption....    eq|
00000150  75 73 20 20 20 20 22 4c  6f 73 65 20 63 61 72 65  |us    "Lose care|
00000160  74 22 0d 00 be 11 20 20  20 20 65 71 75 62 20 20  |t"....    equb  |
00000170  20 20 39 0d 00 c8 24 20  20 20 20 65 71 75 73 20  |  9...$    equs |
00000180  20 20 20 22 30 2e 30 31  20 28 32 31 20 4d 61 79  |   "0.01 (21 May|
00000190  20 31 39 39 36 29 22 0d  00 d2 11 20 20 20 20 65  | 1996)"....    e|
000001a0  71 75 62 20 20 20 20 30  0d 00 dc 0d 20 20 20 20  |qub    0....    |
000001b0  61 6c 69 67 6e 0d 00 e6  04 0d 00 f0 0d 2e 6b 65  |align.........ke|
000001c0  79 5f 63 6f 64 65 0d 00  fa 1b 20 20 20 20 73 74  |y_code....    st|
000001d0  6d 66 64 20 20 20 72 31  33 21 2c 20 7b 72 31 34  |mfd   r13!, {r14|
000001e0  7d 0d 01 04 16 20 20 20  20 6d 6f 76 20 20 20 20  |}....    mov    |
000001f0  20 72 30 2c 20 23 33 0d  01 0e 23 20 20 20 20 73  | r0, #3...#    s|
00000200  77 69 20 20 20 20 20 22  58 57 69 6d 70 5f 52 65  |wi     "XWimp_Re|
00000210  61 64 53 79 73 49 6e 66  6f 22 0d 01 18 1b 20 20  |adSysInfo"....  |
00000220  20 20 6c 64 6d 76 73 66  64 20 72 31 33 21 2c 20  |  ldmvsfd r13!, |
00000230  7b 70 63 7d 5e 0d 01 22  16 20 20 20 20 63 6d 70  |{pc}^..".    cmp|
00000240  20 20 20 20 20 72 30 2c  20 23 31 0d 01 2c 1b 20  |     r0, #1..,. |
00000250  20 20 20 6c 64 6d 6e 65  66 64 20 72 31 33 21 2c  |   ldmnefd r13!,|
00000260  20 7b 70 63 7d 5e 0d 01  36 1a 20 20 20 20 6d 76  | {pc}^..6.    mv|
00000270  6e 20 20 20 20 20 72 30  2c 20 23 ac 28 2d 31 29  |n     r0, #.(-1)|
00000280  0d 01 40 28 20 20 20 20  73 77 69 20 20 20 20 20  |..@(    swi     |
00000290  22 58 57 69 6d 70 5f 53  65 74 43 61 72 65 74 50  |"XWimp_SetCaretP|
000002a0  6f 73 69 74 69 6f 6e 22  0d 01 4a 1b 20 20 20 20  |osition"..J.    |
000002b0  6c 64 6d 66 64 20 20 20  72 31 33 21 2c 20 7b 70  |ldmfd   r13!, {p|
000002c0  63 7d 5e 0d 01 54 05 5d  0d 01 5e 05 ed 0d 01 68  |c}^..T.]..^....h|
000002d0  04 0d 01 72 34 c8 99 20  22 4f 53 5f 46 69 6c 65  |...r4.. "OS_File|
000002e0  22 2c 20 31 30 2c 20 22  4c 6f 73 65 43 61 72 65  |", 10, "LoseCare|
000002f0  74 22 2c 20 26 66 66 64  2c 20 2c 20 63 6f 64 65  |t", &ffd, , code|
00000300  25 2c 20 50 25 0d 01 7c  05 e0 0d ff              |%, P%..|....|
0000030c