Trailing-Edge
-
PDP-10 Archives
-
BASIC-20_12Oct79
-
apl-basic/doc/apl.bwr
There is 1 other file named apl.bwr in the archive. Click here to see a list.
BEWARE FILE FOR APL-BASIC-20 V2(435)
September 1979
COPYRIGHT (C) 1976,1979 BY
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
TRANSFERRED.
THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
CORPORATION.
DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
APL.BWR V2(435) Page 2
APL.BWR -- BEWARE File for V2(435)
September 1979
The following patches must be made to field-image PA1050 version
3A(307) to allow APL version 2 to function correctly on the
DECSYSTEM-20:
1. To make a linefeed echo as a linefeed instead of a carriage
return, linefeed pair, patch the CCOC word:
FCOC2/ 52532,,565125 should be 52532,,525125
2. To insure that control characters echo as "up-arrow letter"
on input but are sent to the terminal unmolested on output,
be sure that the following instructions are present:
TTYST0+5/ TRZA 2,300
TRO 2,300
3. TCO 4.2239 must be installed to allow /BS/DUMP I/O to mag
tape:
Problem: The MTCHR. UUO returns 0 in the left half of the
AC instead of the length of the record last read.
Diagnosis: PA1050 was never taught to do this.
Solution: Get the length of the last record in bytes and
divide by the bytes per word based on the data mode since
MTCHR. expects the record length in words.
Edit 326 puts the following code in from MTCHR3-2 to MTCHR1:
PUSH P,C ;(326) SAVE DENSITY
GDSTS ;(326) GET DEVICE STATUS
MTCHR4: ;(326)
HLRZS C ;(326) RIGHT-JUSTIFY BYTE COUNT
PUSH P,C ;(326) SAVE BYTE COUNT
MOVEI B,.MORDM ;(326) READ TAPE DATA MODE (JFN ALREADY
SET)
MTOPR ;(326) SHOULD NEVER RETURN 0 == SYSTEM
DEFAULT
ERJMP RETZER ;(326) SHOULDN'T HAPPEN
HLRZ B,TPRDMT(C) ;(326) GET BYTES PER WORD
POP P,C ;(326) GET BYTE COUNT
IDIV C,B ;(326) CONVERT BYTES TO WORDS
SKIPE D ;(326) ROUND UP TO NEXT HIGHER WORD
AOS C ;(326) IF NEEDED
POP P,A ;(326) GET DENSITY
HRL A,C ;(326) PUT IN WORD COUNT
JRST STOTC1 ;RETURN ANSWER
MTCHR3: GDSTS ;(326) GET DEVICE CHARS (JFN ALREADY SET)
LDB B,[POINT 2,B,28] ;(326) GET DENSITY
APL.BWR V2(435) Page 3
SKIPN B ;(326) IS IT 0 ?
MOVEI B,3 ;(326) YES, MAKE IT 3
PUSH P,B ;(326) SAVE DENSITY
JRST MTCHR4 ;(326) C ALREADY SET BY GDSTS
MTCHR1: MOVEI D,17 ;SEARCH FOT THIS DEV INITED
To install a patch in PA1050, do the following:
@GET PAT ! get PAT.EXE v3A(307)
@DDT
DEBUG$G ! $ is an ESCape
PAT$:
FCOC2/ 52532,,565125 52532,,525125
TTYST0+5/ TRZA 2,300 ! hit linefeed
TRO 2,300
MAKEPF$G
output file: $
<a new version of PA1050.EXE is put in your connected
directory>
[End of APL.BWR]