;
;		ish file converter for MS-DOS  Ver 2.00 (90/3/27)
;
;
;		Copyright (c) 1986, 1987, 1989, 1990  by  M. ishizuka
;		All rights reserved.
;

MAX_ERROR	equ	43

MAX_DIVISION_NUMBER	equ	250

msg_error_00	db	0dh, 0ah
		db		'internal error (bug in ish)$'
msg_error_01	db	0dh, 0ah
		db		'illegal switch(es)'
		db	0dh, 0ah, 0ah
		db		"  type 'ish /h' to display usage.$"
msg_error_02	db	0dh, 0ah
		db		'Usage:'
		db	0dh, 0ah
		db		' A>ish [filename(s)] [/r|/q] [/m [pt]]'
		db		' [/c [pt]] [/9 [pt]] [/u [pt]] [/ma [pt]]'
		db	0dh, 0ah
		db		'       [/@ [tag]] [/? [pt]] [/* [pt]]'
		db		' [/nv] [/kp] [/it] [/qu] [/so] [/h]'
		db		' [/lf]'
		db	0dh, 0ah
		db		' A>ish filename(s)'
		db		' [/s[7|8|s|n]|/o[8|s]]'
		db		' [{/m|/c|/9|/u|/ma|/?|/*} [pt]]'
		db	0dh, 0ah
		db		'       [/@ [tag]] [/n|/e] [/t [num]]'
		db		' [/p x [x...]] [/mv num] [/nv] [/so] [/h]'
		db	0dh, 0ah
		db		' /r : restore new file(s)               '
		db		' /q : restore with question'
		db	0dh, 0ah
		db		' /s, /s7: store 7bit format ish file(s) '
		db		' /sn: store non-kana format ish file(s)'
		db	0dh, 0ah
		db		' /s8: store 8bit format ish file(s)     '
		db		' /o[8|s]: store old format ish file(s)'
		db	0dh, 0ah
		db		' /ss: store shift JIS format ish file(s)'
		db		' /p : insert prefix (x => char or \hex)'
		db	0dh, 0ah
		db		' /m : MS-DOS                            '
		db		' /? : other OSs'
		db	0dh, 0ah
		db		' /c : CP/M and/or MSX-DOS               '
		db		' /9 : OS-9'
		db	0dh, 0ah
		db		' /u : UNIX                              '
		db		' /* : all OSs'
		db	0dh, 0ah
		db		' /ma: Mac                               '
		db		' /it: ignore time stamp for comparison'
		db	0dh, 0ah
		db		'  pt: path name (ex. b:\pds\tools)      '
		db		' /lf: ignore CR and LF'
		db	0dh, 0ah
		db		' /@ : take switch(es) from option file  '
		db		' /so: output to the standard out'
		db	0dh, 0ah
		db		' /n : no escape sequence                '
		db		' /e : escape sequence'
		db	0dh, 0ah
		db		' /t : title                             '
		db		' num: number (0-65535)'
		db	0dh, 0ah
		db		' /mv: multi volume                      '
		db		' /nv: CPU is not V30'
		db	0dh, 0ah
		db		' /kp: keep file(s) even if error occured'
		db		' /qu: quick'
		db	0dh, 0ah, '$'
msg_error_03	db	0dh, 0ah
		db		'file not found.$'
msg_error_04	db	0dh, 0ah
		db		'file open error.$'
msg_error_05	db	0dh, 0ah
		db		'input file read error.$'
msg_error_06	db		'source file is empty ... '
msg_skip	db	7
msg_skip_0	db		'skip this file.', 0dh, 0ah, '$'
msg_error_07	db	0dh, 0ah
		db		'filename error.$'
msg_error_08	db	0dh, 0ah
		db		'file creation error.$'
msg_error_09	db	0dh, 0ah
		db		'file write error.$'
msg_error_10	db	0dh, 0ah
		db		'too short memories.$'
msg_error_11	db	0dh, 0ah
		db		'file creation error'
		db	0dh, 0ah
		db		'   ( volume label, directory, '
		db		'file write protected, and so on. )'
		db	0dh, 0ah
		db		'   $'
msg_error_12	db	0dh, 0ah
		db		'   Unacceptable format '
		db		'(use upper version) ... $'
msg_error_13	db	0dh, 0ah
		db		'crc error detect ... abort this file.'
		db	0dh, 0ah, '$'
msg_error_14	db	0dh, 0ah
		db		'error detect ... abort this file '
		db		'( more than or equal to 3 errors / block )'
		db	0dh, 0ah, '$'
msg_error_15_1	db	0dh, 0ah
		db		"path '$"
msg_error_22	label	byte
msg_error_15	db		"' not found.", 0dh, 0ah, '$'
msg_error_16	db	0dh, 0ah
msg_error_16_1	db		'disk full $'
msg_error_16_2	db		' bytes ] ... $'
msg_error_17	db		'quit'
		db	0dh, 0ah, '$'
msg_error_18	db		"file '$"
msg_error_18_2	db		"' already exist ... $"
msg_error_19	db	0dh, 0ah
		db		'memory allocation error.$'
msg_error_20	db	0dh, 0ah
		db		"prefix must be one of the ' `~{}ow'.$"
msg_error_21	db	0dh, 0ah
		db		'file division number over '
		string		%MAX_DIVISION_NUMBER
		db		'.$'
msg_error_22_1	db	0dh, 0ah
		db		"file '$"
msg_error_23	db	0dh, 0ah
		db		'no files converted.$'
msg_error_24	db	0dh, 0ah
		db		'compare file read error.$'
msg_error_25	db	0dh, 0ah
		db		'/mv number too short.$'
msg_error_26	db		"' is the same ... $"
msg_error_27	db	0dh, 0ah
		db		'   CRC-16 error detect.'
		db	0dh, 0ah, '$'
msg_error_28	db	0dh, 0ah
		db		'   CRC-32 error detect.'
		db	0dh, 0ah, '$'
msg_error_29	db	0dh, 0ah
		db		'   Unexpected standard handle error.$'
msg_error_30	db	0dh, 0ah
		db		'   /q is not available'
		db	0dh, 0ah
		db		'   when the standard'
		db		' error handle is not assigned to a console.$'
msg_error_31	db	0dh, 0ah
		db		"   Can't take input from a console.$"
msg_error_32	db	0dh, 0ah
		db		"   Can't take input from the stdin.$"
msg_error_33	db	0dh, 0ah
		db		'   ^Z is detected ...'
		db		' skip the rest of this file.'
		db	0dh, 0ah, '$'
msg_error_34	db	0dh, 0ah
		db		'   too long option filename.$'
msg_error_35	db	0dh, 0ah
		db		"   option file '$"
msg_error_35_1	db		"' open error.", 0dh, 0ah, '$'
msg_error_36	db	0dh, 0ah
		db		'   too long option file.$'
msg_error_37	db	0dh, 0ah
		db		"   tag '$"
msg_error_38	db	0dh, 0ah
		db		'   option file or tz file read error.$'
msg_error_39	db	0dh, 0ah
		db		"   Can't restore break condition."
		db	0dh, 0ah, '$'
msg_error_40	db	0dh, 0ah
		db		'   TZ error.'
		db	0dh, 0ah, 0ah
		db		'   Please type'
		db	0dh, 0ah
		db		'   A>set TZ=std[{+|-}]h[h][dst[any]]'
		db	0dh, 0ah
		db		'         atd: name of standard time'
		db	0dh, 0ah
		db		'           h: 0..9'
		db	0dh, 0ah
		db		'         dst: name of daylight time'
		db	0dh, 0ah
		db		'         any: any character(s)'
		db	0dh, 0ah, '$'
msg_error_41	db	0dh ,0ah
		db		'   tz file open error.'
		db	0dh, 0ah, '$'
msg_error_42	db	0dh, 0ah
		db		'   tz file data error.$'
		db	0dh, 0ah, '$'
msg_error_43	db	0dh, 0ah
		db		'   too long shell name.$'

		even

msg_table:
		make_msg_table
