Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_22.ADF » P/H/KeySave

P/H/KeySave

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 » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_22.ADF
Filename: P/H/KeySave
Read OK:
File size: 02F8 bytes
Load address: FFFF0E00
Exec address: FFFF8023
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
   10REM>ScrSave
   20MODE7
   30*FX20,6
   40A%=131:Y%=(USR(&FFF4) AND &FF0000) DIV &10000
   50IF PAGE/256<Y% PROCupload
   60INPUT"Enter filename "F$
   70FORI=32TO255:VDU23,I:FORJ=1TO8:VDUI:NEXT,
   80REM CTRL Saves SCREEN
   90PRINT
  100code=&140
  110osbyte=&FFF4
  120oscli=&FFF7
  130FOR i=0 TO 2 STEP 2
  140P%=code
  150[OPT i
  160PHA:TYA:PHA:TXA:PHA
  170LDA #&81
  180LDX#&FE
  190LDY#&FF
  200JSR osbyte
  210TYA
  220BEQ return
  230LDA#13
  240LDX#4
  250LDY#0
  260JSR osbyte
  270LDX#name MOD256
  280LDY#name DIV256
  290JSR oscli
  300LDA#14
  310LDX#4
  320LDY#0
  330JSR osbyte
  340.return
  350PLA:TAX:PLA:TAY:PLA
  360RTS
  370.name
  380EQUS"SAVE "+F$+" 6000 8000"
  390EQUB &D
  400]
  410NEXT
  420?&220=code MOD256
  430?&221=code DIV256
  440*FX14,4
  450END
  460DEFPROCupload
  470*KEY0 FORI=(TOP-PAGE)TO0STEP-4:I!(Y%*256)=I!PAGE:NEXT:PA.=Y%*256|MOLD|MRUN|M
  480*FX138,0,128
  490END
  500ENDPROC


�>ScrSave
�7
*FX20,6
(+A%=131:Y%=(�(&FFF4) � &FF0000) � &10000
2� �/256<Y% �upload
<�"Enter filename "F$
F �I=32�255:�23,I:�J=1�8:�I:�,
P� CTRL Saves SCREEN
Z�
d
code=&140
nosbyte=&FFF4
xoscli=&FFF7
�� i=0 � 2 � 2
�P%=code
�
[OPT i
�PHA:TYA:PHA:TXA:PHA
�LDA #&81
�LDX#&FE
�LDY#&FF
�JSR osbyte
�TYA
�BEQ return
�
LDA#13
�	LDX#4
�	LDY#0
JSR osbyte
LDX#name �256
LDY#name �256
"
JSR oscli
,
LDA#14
6	LDX#4
@	LDY#0
JJSR osbyte
T.return
^PLA:TAX:PLA:TAY:PLA
hRTS
r	.name
|EQUS"SAVE "+F$+" 6000 8000"
�EQUB &D
�]
��
�?&220=code �256
�?&221=code �256
�*FX14,4
��
���upload
�P*KEY0 FORI=(TOP-PAGE)TO0STEP-4:I!(Y%*256)=I!PAGE:NEXT:PA.=Y%*256|MOLD|MRUN|M
�*FX138,0,128
��
��
�
00000000  0d 00 0a 0d f4 3e 53 63  72 53 61 76 65 0d 00 14  |.....>ScrSave...|
00000010  06 eb 37 0d 00 1e 0b 2a  46 58 32 30 2c 36 0d 00  |..7....*FX20,6..|
00000020  28 2b 41 25 3d 31 33 31  3a 59 25 3d 28 ba 28 26  |(+A%=131:Y%=(.(&|
00000030  46 46 46 34 29 20 80 20  26 46 46 30 30 30 30 29  |FFF4) . &FF0000)|
00000040  20 81 20 26 31 30 30 30  30 0d 00 32 16 e7 20 90  | . &10000..2.. .|
00000050  2f 32 35 36 3c 59 25 20  f2 75 70 6c 6f 61 64 0d  |/256<Y% .upload.|
00000060  00 3c 18 e8 22 45 6e 74  65 72 20 66 69 6c 65 6e  |.<.."Enter filen|
00000070  61 6d 65 20 22 46 24 0d  00 46 20 e3 49 3d 33 32  |ame "F$..F .I=32|
00000080  b8 32 35 35 3a ef 32 33  2c 49 3a e3 4a 3d 31 b8  |.255:.23,I:.J=1.|
00000090  38 3a ef 49 3a ed 2c 0d  00 50 17 f4 20 43 54 52  |8:.I:.,..P.. CTR|
000000a0  4c 20 53 61 76 65 73 20  53 43 52 45 45 4e 0d 00  |L Saves SCREEN..|
000000b0  5a 05 f1 0d 00 64 0d 63  6f 64 65 3d 26 31 34 30  |Z....d.code=&140|
000000c0  0d 00 6e 10 6f 73 62 79  74 65 3d 26 46 46 46 34  |..n.osbyte=&FFF4|
000000d0  0d 00 78 0f 6f 73 63 6c  69 3d 26 46 46 46 37 0d  |..x.oscli=&FFF7.|
000000e0  00 82 11 e3 20 69 3d 30  20 b8 20 32 20 88 20 32  |.... i=0 . 2 . 2|
000000f0  0d 00 8c 0b 50 25 3d 63  6f 64 65 0d 00 96 0a 5b  |....P%=code....[|
00000100  4f 50 54 20 69 0d 00 a0  17 50 48 41 3a 54 59 41  |OPT i....PHA:TYA|
00000110  3a 50 48 41 3a 54 58 41  3a 50 48 41 0d 00 aa 0c  |:PHA:TXA:PHA....|
00000120  4c 44 41 20 23 26 38 31  0d 00 b4 0b 4c 44 58 23  |LDA #&81....LDX#|
00000130  26 46 45 0d 00 be 0b 4c  44 59 23 26 46 46 0d 00  |&FE....LDY#&FF..|
00000140  c8 0e 4a 53 52 20 6f 73  62 79 74 65 0d 00 d2 07  |..JSR osbyte....|
00000150  54 59 41 0d 00 dc 0e 42  45 51 20 72 65 74 75 72  |TYA....BEQ retur|
00000160  6e 0d 00 e6 0a 4c 44 41  23 31 33 0d 00 f0 09 4c  |n....LDA#13....L|
00000170  44 58 23 34 0d 00 fa 09  4c 44 59 23 30 0d 01 04  |DX#4....LDY#0...|
00000180  0e 4a 53 52 20 6f 73 62  79 74 65 0d 01 0e 11 4c  |.JSR osbyte....L|
00000190  44 58 23 6e 61 6d 65 20  83 32 35 36 0d 01 18 11  |DX#name .256....|
000001a0  4c 44 59 23 6e 61 6d 65  20 81 32 35 36 0d 01 22  |LDY#name .256.."|
000001b0  0d 4a 53 52 20 6f 73 63  6c 69 0d 01 2c 0a 4c 44  |.JSR oscli..,.LD|
000001c0  41 23 31 34 0d 01 36 09  4c 44 58 23 34 0d 01 40  |A#14..6.LDX#4..@|
000001d0  09 4c 44 59 23 30 0d 01  4a 0e 4a 53 52 20 6f 73  |.LDY#0..J.JSR os|
000001e0  62 79 74 65 0d 01 54 0b  2e 72 65 74 75 72 6e 0d  |byte..T..return.|
000001f0  01 5e 17 50 4c 41 3a 54  41 58 3a 50 4c 41 3a 54  |.^.PLA:TAX:PLA:T|
00000200  41 59 3a 50 4c 41 0d 01  68 07 52 54 53 0d 01 72  |AY:PLA..h.RTS..r|
00000210  09 2e 6e 61 6d 65 0d 01  7c 1f 45 51 55 53 22 53  |..name..|.EQUS"S|
00000220  41 56 45 20 22 2b 46 24  2b 22 20 36 30 30 30 20  |AVE "+F$+" 6000 |
00000230  38 30 30 30 22 0d 01 86  0b 45 51 55 42 20 26 44  |8000"....EQUB &D|
00000240  0d 01 90 05 5d 0d 01 9a  05 ed 0d 01 a4 13 3f 26  |....].........?&|
00000250  32 32 30 3d 63 6f 64 65  20 83 32 35 36 0d 01 ae  |220=code .256...|
00000260  13 3f 26 32 32 31 3d 63  6f 64 65 20 81 32 35 36  |.?&221=code .256|
00000270  0d 01 b8 0b 2a 46 58 31  34 2c 34 0d 01 c2 05 e0  |....*FX14,4.....|
00000280  0d 01 cc 0c dd f2 75 70  6c 6f 61 64 0d 01 d6 50  |......upload...P|
00000290  2a 4b 45 59 30 20 46 4f  52 49 3d 28 54 4f 50 2d  |*KEY0 FORI=(TOP-|
000002a0  50 41 47 45 29 54 4f 30  53 54 45 50 2d 34 3a 49  |PAGE)TO0STEP-4:I|
000002b0  21 28 59 25 2a 32 35 36  29 3d 49 21 50 41 47 45  |!(Y%*256)=I!PAGE|
000002c0  3a 4e 45 58 54 3a 50 41  2e 3d 59 25 2a 32 35 36  |:NEXT:PA.=Y%*256|
000002d0  7c 4d 4f 4c 44 7c 4d 52  55 4e 7c 4d 0d 01 e0 10  ||MOLD|MRUN|M....|
000002e0  2a 46 58 31 33 38 2c 30  2c 31 32 38 0d 01 ea 05  |*FX138,0,128....|
000002f0  e0 0d 01 f4 05 e1 0d ff                           |........|
000002f8
P/H/KeySave.m0
P/H/KeySave.m1
P/H/KeySave.m2
P/H/KeySave.m4
P/H/KeySave.m5