home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
norge.freeshell.org (192.94.73.8)
/
192.94.73.8.tar
/
192.94.73.8
/
pub
/
computers
/
cpm
/
alphatronic
/
MIXED110.ZIP
/
READ.ME
< prev
next >
Wrap
Text File
|
1997-11-10
|
8KB
|
243 lines
Mix Editor Patches 1.1.0
==================
Changing the default setup file:
--------------------------------
The default setup file for the editor is named: SETUP.EDT . If no
setup file is specified on the command line, the editor will search
for this file on the default disk drive. If it is not found there,
the editor will look for it on drive A. If you wish to use a
different drive or a different name for the file, this name may be
patched. The name of the setup file begins at 115D in the file
EDIT.OVY and has four leading blanks. The new name must be exactly
13 characters long but may be padded on the left with blanks if it is
shorter. The following sample patch changes the file name so that
the editor will look for the setup file on drive C.
Use DDT to apply the patch as shown below:
A>DDT EDIT.OVY
DDT VERS 2.2
NEXT PC
6C00 0100
-D115D,116B
115D 20 20 20
1160 20 53 45 54 55 50 2E 45 44 54 20 20 SETUP.EDT
-S115F
115F 20 43
1160 20 3A
1161 53 .
-D115D,116B
115D 20 20 43 C
1160 3A 53 45 54 55 50 2E 45 44 54 20 20 :SETUP.EDT
-^C
A>SAVE 107 EDIT.OVY
A>
Changing the work file:
-----------------------
The editor uses one or two work files to hold text that is not in
memory. You may wish to change the names of these files if more than one
person is using the editor on a network with shared disk storage. Each
user can have a copy of the editor with a different work file name so
that the files will not conflict. The name of the work file must have
exactly 8 characters and the 3rd and 4th characters must remain as "0".
Any other characters in the file name can be changed. The example below
changes the name of the work file to use T1 as a prefix instead of T0.
A>DDT EDIT.OVY
DDT VERS 2.2
NEXT PC
6C00 0100
-D11AA,11B1
11AA 54 30 30 30 2E 54 T000.T
11B0 4D 50 MP
-S11AA
11AA 54
11AB 30 31
11AC 30 .
-D11AA,11B1
11AA 54 31 30 30 2E 54 T100.T
11B0 4D 50 MP
-^C
A>SAVE 107 EDIT.OVY
A>
Changing the block file:
-----------------------
The editor uses a temporary file to hold the contents of a block
being moved with input block or output block. This file is always
placed on the default disk and is named "T030.TMP" . The following
sample patch changes the name of this file so that it will always be
created on drive A.
A>DDT EDIT.OVY
DDT VERS 2.2
NEXT PC
6C00 0100
-D118B,1194
118B 20 20 54 30 33 T03
1190 30 2E 54 4D 50 0.TMP
-S118B
118B 20 41
118C 20 3A
118D 54 .
-D118B,1194
118B 41 3A 54 30 33 A:T03
1190 30 2E 54 4D 50 0.TMP
-^C
A>SAVE 107 EDIT.OVY
A>
Changing the editor overlay file:
---------------------------------
The overlays for the editor are contained in a file named "EDIT.OVY" .
When the editor is loaded, it searches for this file on the default drive.
If the overlay file is not found on the default drive, the editor looks
for it on drive A. The name of the overlay file is contained in a CP/M
file control block that begins at address 516A. The name of this file
may be changed by patching. The first byte indicates the disk drive. If
this byte is zero, the overlays can be on the default drive or drive A, if
this byte is not zero, then it specifies the disk drive for the overlay file.
The editor will not search drive A if the first byte of the control block is
not zero.
The following sample patch changes the name of the overlay file to
"D:EDITOR.OVY" .
DDT B:EDIT.COM
DDT VERS 2.2
NEXT PC
5680 0100
-D516A,5175
516A 00 45 44 49 54 20 .EDIT
5170 20 20 20 4F 56 59 OVY
-S516A
516A 00 04
516B 45
516C 44
516D 49
516E 54
516F 20 4F
5170 20 52
5171 20 .
-D516A,5175
516A 00 45 44 49 54 4F .EDITO
5170 52 20 20 4F 56 59 R OVY
-^C
A>SAVE 87 EDIT.COM
A>
Special Cursor Addressing
=========================
If cursor addressing cannot be accomplished by sending characters to
the terminal, you can add an assembly language routine to perform this
function. The custom cursor addressing option provided in setedit can
handle cursor addressing for almost any terminal. For custom cursor
addressing to work, the terminal must move the cursor in response to a
sequence of characters sent to it. This is normally some form of escape
sequence.
If your terminal (or memory mapped video) does not allow cursor
addressing with a sequence of characters, then you must use the special
cursor addressing option. To use this option you must execute setedit
and specify special cursor addressing. In addition, you need to write
an assembly language routine to position the cursor.
When the cursor is to be moved, the editor will transfer control to
address 48EE in memory. The row number will be in register H and the
column number will be in register L. Your assembly language should
use this information to move the cursor and then return to the editor
with a RET instruction. All of the registers are available and your
subroutine may occupy up to 64 bytes of memory. The code should be
assembled with an origin of (hex) 48EE and a .HEX file generated.
To merge the assembly language driver into the editor, perform the
following steps.
1. Load the editor with DDT by: DDT EDIT.COM
2. Use the I command in DDT to specify the .HEX file
containing your subroutine.
3. Use the R command to read the subroutine into memory.
4. Type control/c to exit to CP/M.
5. Save the new image with: SAVE 87 EDIT.COM
Example:
;
; This is a sample assembly language subroutine to position
; the cursor. This example assumes that a 16 line by 64 character
; memory mapped video board is installed in the system at an
; address of hex FC00. The cursor address is stored in location
; hex 40 in memory, and that the most significant bit of the
; byte under the cursor is set to make the cursor character appear
; in reverse video.
;
MEMORY EQU 0FC00H
CURSOR EQU 040H
CSRBIT EQU 080H
;
ORG 048EEH
;
; On entry, the row is in H and the column is in L
;
PUSH H
LHLD CURSOR ; deselect old cursor
MOV A,M
XRI CSRBIT
MOV M,A
POP D ; get new cursor address
MOV A,D
RAR ; shift row into position
RAR
MOV D,A ; save shifted row
ANI 3 ; mask upper two bits
MOV H,A
MOV A,D ; get low 2 bits of row
ANI 0C0H ; isolate them
ADD E ; add column number
MOV L,A
LXI D,MEMORY ; Add origin of memory board
DAD D
SHLD CURSOR ; Set new cursor
MOV A,M ; Invert cursor character
XRI CSRBIT
MOV M,A
RET
END
A>ASM CURSOR
CP/M ASSEMBLER - VER 2.0
490F
000H USE FACTOR
END OF ASSEMBLY
A>DDT EDIT.COM
DDT VERS 2.2
NEXT PC
5680 0100
-ICURSOR.HEX
-R
NEXT PC
5680 0100
-^C
A>SAVE 87 EDIT.COM
A>
L,A
LXI D,MEMORY