home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
BEEHIVE
/
UTILITYS
/
256FIX.ARC
/
256FIX.DOC
< prev
Wrap
Text File
|
1988-08-07
|
7KB
|
112 lines
Documentation for: 256TC Keyboard Driver creator (256FIX.COM)
written by Andrew Scott, copyright Adrenalin
Software 1990.
--------------------------------------------------( Version 1.0 )
The keyboard designed for the microbee 256TC computer places
its users in an annoying position: sometimes they can't use it!
The keyboard uses a different method of key identification and
can be read using a completely different method from the one
customly used on the old microbee keyboard. These differences
sometimes put the computer in a loop, trying to check for a key
that will never be pressed.
This problem will never arrive if system calls are used
instead of the key-pressed routines employed by some programmers,
but these calls take longer and therefore are not so appealing to
games programmers. These games were barred from use by 256TC
users - which is an otherwise good computer. To fix this problem,
256FIX has been written to read in a program, find key-pressed
checks, substitute ones more suited to the 256TC, then output the
reborn program into another file.
256FIX itself is very easy to use, simply enter "256FIX" as
usual to run a program. A screen will be shown displaying some
information about your computer and 256FIX itself. Next you will
be asked what sort of driver you wish to replace the faulty one
with.
You can press "1" and select the XBIOS subset C routine,
which is a system call, and might not work with some systems, if
it doesn't work with your system, then you will have been told in
the first screen. Pressing "2" selects a code appendage routine.
This involves adding about 300 bytes onto the end of a program,
and the faulty routine is changed to a call to this routine. This
driver is faster than the XBIOS driver, but if the program uses
relocating code then "2" won't work, and if you don't have a
256TC keyboard, it is not likely to work anyway - but what are
you doing using this program?
Now you are asked for the faulty file. You must enter
filename and extension followed by return. You are then told the
file the results of 256FIX will be sent to (the output file). Do
not delete the original file after 256FIX has finished - the
output file may not work, and you will need to try another set of
options (see below) until it does work.
If you enter the name of a file that does NOT exist, then
you will be told, and prompted for another name.
From now on 256FIX will be analysing your program and
creating the output file. As soon as a code segment is found that
looks like a key-press check, it will stop and see if it
recognises it. If it doesn't then the message:
This procedure seems to be non-standard!
Do you wish to continue? (Y/N): N
will appear. If you want to continue to process this code segment
then press "Y" press anything else and it won't. Most of the
time, 256FIX will recognise the code and you won't need to do
this. If this message does come up however, try "Y" and if
nothing comes of it, try "N" later. If you do press "Y" and
256FIX can't do anything with the code segment, then the message:
** Can't process routine, passing **
will appear, 256FIX is passing the routine without processing it.
Most of the time, 256FIX will recognise the code segment,
and you will have the following presented to you:
=== Set Options for Driver === Length: xxx bytes
Do you wish to Reverse Zero Flags? (Y= +7) Y
Do you wish to use HL as key register? (Y=+20) Y
Do you wish to clear buffer after keypress? (Y=+12) N
The length "xxx" will be a number around 20-60, this is the size
of the space 256FIX has to work with. The options are features
that the replacement code will have, if the code is "standard"
256FIX will suggest answers to the questions (Y or N). Sometimes
256FIX does not give correct suggestions and some of the
questions must be answered "N" instead of "Y" or vica versa. The
most likely one to be wrong is the second question, followed by
the first. The last question should never need to be answered "Y"
unless the program being altered reads the keyboard buffer after
its key-press check (the 256TC has a 8 character keyboard buffer
unlike the old keyboards). If the output program does not work,
try using different options.
After all of the program is analysed, 256FIX may decide that
the program should work regardless. In this case the message:
Program does not need altering.
will be shown upon the finish of the analysis. If any non-
standard procedures are found, and to these the answer "N" is
given or it is not able to process it anyway, and Driver 2 is
selected (appended code), no code will be appended.
After all this, you should find an extra file on your disk,
after write-protecting your disk (better safe than sorry) try it
out. If it doesn't work, try another option, or another driver.
Here are some suggestions for cracking that elusive program.
1) If the program runs for awhile, the suddenly hangs or
quits, or generally blows a tantram, you could have selected the
wrong driver.
2) If the program runs, but things happen, like the program
reacts as if you've pressed down keys, then try changing the
"Reverse Zero Flags" option.
3) If the program reacts as if it doesn't know you're there
(like it did in the first place) then either the "clear buffer"
or "use HL" options could be wrong - if you said "N" to "clear
buffer" then it is probably "use HL". If the code segment
"Length" is more than 45, then "use HL" should probably be
answered "N".
4) If the program runs ok, but sometimes reacts as if you
have pressed many keys (the ones you had pressed previously) at
one time, the maybe "clear buffer" should be answered "Y".
I take no responsibility for damage 256FIX causes, but I
would be VERY surprised if it did. This is a program that every
256TC owner should have, it opens a whole new range of programs,
eg. Grotnik Software, Mytek, etc. Good luck with yours.
256TC owner should have, it opens a whole new range of progra