Google
 

Trailing-Edge - PDP-10 Archives - integ_tools_tops20_v7_30-apr-86_dumper - tools/dumper2/dmpstate.mar
There are 2 other files named dmpstate.mar in the archive. Click here to see a list.
	.TITLE  DMPSTATE        DUMPER PROGRAM STATE TABLES
	.LIBRARY        'DUMPER'
;+
;       This segment defines the tables required for the
;       LIB$TPARSE finite state parser.  The global variables
;       are:
;       DMPINIT -- The initial state of the parser tables
;       DMPKEY  -- The keyword list of the parser tables
;       VDINIT  -- The initial state of directory tables
;       VDKEY   -- The keyword list of the directory tables
;       VFINIT  -- The initial state of file tables
;       VFKEY   -- The keyword list of the file tables
;-
	DMPCOM
	DMPCHR
;Comma definition...since I had problems with ','
	COMMA = 44
;
	$INIT_STATE     DMPINIT,DMPKEY
;
	$STATE
	$TRAN           'QUIT',STOP
	$TRAN           'EXIT',STOP
	$TRAN           'STOP',STOP
	$TRAN           'REWIND',REWIND
	$TRAN           'EOT',EOT
	$TRAN           'SKIP',SKIP
	$TRAN           'GO',GO
	$TRAN           'HELP',HELP
	$TRAN           'USE',USE
	$TRAN           'RESTORE',RESTORE
	$TRAN           'RESET',RESET
	$TRAN           'WHAT',WHAT
	$TRAN           'ASCII',ASCII
	$TRAN           'BINARY',BINARY
	$TRAN           'SILENT',SILENT
	$TRAN           'FILES',FILES
	$TRAN           'LISTING',LISTING
	$TRAN           'NONE',NONE
	$TRAN           'CR',CR
	$TRAN           'FORTRAN',FORTRAN
	$TRAN           TPA$_EOS,TPA$_EXIT
;+
;       STOP COMMAND
;-
	$STATE          STOP
	$TRAN           TPA$_EOS,TPA$_EXIT,,1,DONE
;+
;       REWIND COMMAND
;-
	$STATE          REWIND
	$TRAN           TPA$_EOS,TPA$_EXIT,REW_COMMAND
;+
;       EOT COMMAND
;-
	$STATE          EOT
	$TRAN           TPA$_EOS,TPA$_EXIT,EOT_COMMAND
;+
;       SKIP COMMAND
;-
	$STATE          SKIP
	$TRAN           TPA$_DECIMAL,SKIP_END,,,SKIPNO
	$TRAN           '-',,,,SIGN
;
	$STATE
	$TRAN           TPA$_DECIMAL,,,,SKIPNO
;
	$STATE          SKIP_END
	$TRAN           TPA$_EOS,TPA$_EXIT,SKIP_COMMAND
;+
;       GO COMMAND
;-
	$STATE          GO
	$TRAN           TPA$_DECIMAL,,,,GOVALUE
	$TRAN           TPA$_LAMBDA,,,1,GOVALUE
;
	$STATE
	$TRAN           TPA$_EOS,TPA$_EXIT,GO_COMMAND
;+
;       HELP COMMAND
;-
	$STATE          HELP
	$TRAN           TPA$_EOS,TPA$_EXIT,HELP_COMMAND
;+
;       USE Command
;-
	$STATE          USE
	$TRAN           TPA$_STRING,,USE_NAME
;
	$STATE
	$TRAN           ':'
	$TRAN           TPA$_EOS,TPA$_EXIT,USE_COMMAND
;
	$STATE
	$TRAN           TPA$_EOS,TPA$_EXIT,USE_COMMAND
;+
;       RESTORE Command
;-
	$STATE          RESTORE
	$TRAN           '[',,RES_VDIR
;VAX directory parsing
	$STATE
	$TRAN           '-',VMIN,RES_VMIN
	$TRAN           TPA$_SYMBOL,,RES_VNAME
	$TRAN           TPA$_LAMBDA
;
	$STATE          VDOT
	$TRAN           '.',,RES_VDOT
	$TRAN           ']',VEQ
;
	$STATE
	$TRAN           TPA$_SYMBOL,VDOT,RES_VNAME
;
	$STATE          VMIN
	$TRAN           '-',VMIN,RES_VMIN
	$TRAN           TPA$_LAMBDA,VDOT
;
;End of VAX directory, start of 10/20 directory
	$STATE          VEQ
	$TRAN           '='
;
	$STATE
	$TRAN           '['
;UFD/SFD processing
	$STATE          TNAM
	$TRAN           TPA$_SYMBOL,,RES_TNAME
	$TRAN           '*',,RES_TSTAR
;
	$STATE
	$TRAN           COMMA,TNAM,RES_TDOT
	$TRAN           '.',TNAM,RES_TDOT
	$TRAN           ']',,RES_TBR
;File name
	$STATE
	$TRAN           TPA$_SYMBOL,,RES_TNAME
	$TRAN           '*',,RES_TSTAR
	$TRAN           '.',EXT,RES_TDOT
;
	$STATE
	$TRAN           '.',,RES_TDOT
	$TRAN           TPA$_EOS,TPA$_EXIT,RES_COMMAND
;Extension
	$STATE          EXT
	$TRAN           TPA$_SYMBOL,,RES_TNAME
	$TRAN           '*',,RES_TSTAR
	$TRAN           TPA$_EOS,TPA$_EXIT,RES_COMMAND
;
	$STATE
	$TRAN           TPA$_EOS,TPA$_EXIT,RES_COMMAND
;+
; RESET Command -- Reset the restore tables
;-
	$STATE          RESET
	$TRAN           TPA$_EOS,TPA$_EXIT,RESET_COMMAND
;+
; WHAT Command -- Print the restore information
;-
	$STATE          WHAT
	$TRAN           TPA$_EOS,TPA$_EXIT,WHAT_COMMAND
;+
; ASCII Command -- normal text mode
;-
	$STATE          ASCII
	$TRAN           TPA$_EOS,TPA$_EXIT,SET_ASCII
;+
; BINARY Command -- read binary files from the tape
;-
	$STATE          BINARY
	$TRAN           TPA$_EOS,TPA$_EXIT,SET_BINARY
;+
; SILENT Command -- do not print any messages
;-
	$STATE          SILENT
	$TRAN           TPA$_EOS,TPA$_EXIT,SET_SILENT
;+
; FILES Command -- print out the names of files processed
;-
	$STATE          FILES
	$TRAN           TPA$_EOS,TPA$_EXIT,SET_FILES
;+
; LISTING Command -- generate a listing of all files on the tape
;-
	$STATE          LISTING
	$TRAN           TPA$_EOS,TPA$_EXIT,SET_LIST
;+
; NONE Command -- no carriage control files
;-
	$STATE          NONE
	$TRAN           TPA$_EOS,TPA$_EXIT,SET_NONE
;+
; CR Command -- carriage control files
;-
	$STATE          CR
	$TRAN           TPA$_EOS,TPA$_EXIT,SET_CR
;+
; FORTRAN Command -- FORTRAN format files
;-
	$STATE          FORTRAN
	$TRAN           TPA$_EOS,TPA$_EXIT,SET_FORT
;
	$END_STATE
	.PAGE
;+
; Restore processing state tables
;-
	$INIT_STATE     VDINIT,VDKEY
;
	$STATE
	$TRAN		TPA$_LAMBDA,,VAL_DIR_RESET	;[BYU]
	$TRAN           TPA$_SYMBOL
	$TRAN           '[',UFD
;
	$STATE
	$TRAN           ':'
;[BYU] don't forget to check for the [ if a dev: was included
	$STATE
	$TRAN		'['
;[BYU]
;
	$STATE          UFD
	$TRAN           TPA$_SYMBOL,,VAL_DIR
;
	$STATE
	$TRAN           ']',FINAL
	$TRAN           '.',UFD
	$TRAN		COMMA,UFD	;[BYU] watch for commas in DEC-10 dirs.
;[BYU]
	$STATE		FINAL
	$TRAN		TPA$_LAMBDA,,VAL_DIR_CHECK
	$STATE
	$TRAN		TPA$_LAMBDA,TPA$_EXIT
;[BYU]
;
	$END_STATE
;
	$INIT_STATE     VFINIT,VFKEY
;
	$STATE
	$TRAN           TPA$_SYMBOL,,VAL_NAME
;
	$STATE
	$TRAN           '.'
;
	$STATE
	$TRAN           TPA$_SYMBOL,,VAL_EXT
	$TRAN           TPA$_LAMBDA
;
	$STATE
	$TRAN           TPA$_LAMBDA,TPA$_EXIT,VAL_OPEN
;
	$END_STATE
;
	.END