1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-13 07:19:57 +00:00

Make FACTOR's help match its behaviour.

The help code is adjusted to handle the new ^G key that FACTOR 26
introduced, and to match case-insensitively when searching FACTOR ORDER.
This commit is contained in:
Adam Sampson 2018-04-10 23:04:37 +01:00 committed by Adam Sampson
parent d9169dd71c
commit 48beabe575
2 changed files with 22 additions and 9 deletions

View File

@ -6,7 +6,9 @@ COMMANDS TAKE PRECEDING NUMERIC ARGUMENTS
EXAMPLE: 1+F ADDS 1 TO THE CURRENT VALUE, AND FACTORS IT
‰RUBOUT IGNORES ITS ARGUMENT
 ^G EXITS TO DDT
Q FOLLOWED BY COMMAND, DESCRIBES COMMAND
H FOLLOWED BY COMMAND, DESCRIBES COMMAND
? TYPES THIS FILE
C LISTS COMMANDS
SPACE STORES ARG IN CURRENT VALUE

View File

@ -118,7 +118,7 @@ TYIDIS: HUH ;^@
NUMBER ;7
NUMBER ;8
NUMBER ;9
HUH ;:
TIMES ;:
HUH ;;
HUH ;<
EQUAL ;=
@ -142,7 +142,7 @@ TYIDIS: HUH ;^@
LOAD ;N
HUH ;O
HUH ;P
HUH ;Q
QUERY ;Q
RADSET ;R
HUH ;S
HUH ;T
@ -174,7 +174,7 @@ TYIDIS: HUH ;^@
LOAD ;n
HUH ;o
HUH ;p
HUH ;q
QUERY ;q
RADSET ;r
HUH ;s
HUH ;t
@ -200,13 +200,16 @@ NUMBER: IMUL B,RADX ;A digit - add it to BC
JRST LOOP
INFO: PUSHJ P,INFOPN ;Show the whole info file
.IOT INFOC,1
JUMPL A,RESET
CAIE A,3
INFO1: .IOT INFOC,1
JUMPL A,RESET ;Stop at EOF
CAIE A,3 ;Stop if ^C or FF
CAIN A,14
JRST RESET
CAIE A,7 ;Don't print ^G or RUBOUT
CAIN A,177
JRST INFO1
.IOT TYOC,1
JRST INFO+1
JRST INFO1
INFOPN: .CALL [ SETZ ;Open the info file
SIXBIT /OPEN/
@ -222,11 +225,19 @@ INFLOS: SUB P,[1,,1] ;Info file can't be opened
MOVE B,[440700,,[ASCIZ \Can't open info file\]]
JRST Q3
QUERY: MOVE B,[440700,,[ASCIZ/elp /]] ;Look up a key in the info file
QUERY: ;Look up a key in the info file
MOVE B,[440700,,[ASCIZ/uery /]]
CAIE A,"H ;If they pressed H...
CAIN A,"h
MOVE B,[440700,,[ASCIZ/elp /]]
PUSHJ P,OUT
PUSHJ P,INFOPN
.IOT TYIC,B ;Get a key
PUSHJ P,CR
CAIL B,"a ;Lowercase letter?
CAILE B,"z
SKIPA
SUBI B,"a-"A ;Yes - force to uppercase
CAIL B,"0 ;Digit?
CAILE B,"9
JRST Q0
@ -240,7 +251,7 @@ Q0: .IOT INFOC,A ;Skip chars until LF
CAME A,B ;Is the key we're after?
JRST Q0 ;No - try next line
.IOT INFOC,A ;Read second char
JUMPL A,Q1
JUMPL A,Q1 ;End of file?
CAIE A,11 ;Is it tab?
JRST Q0 ;No - try next line
JRST .+2 ;Found it!