window:
	res:
		windowType	wshadowbox
		switch $(COLOR)
			case COLOR:
			case GRAY:
				topShadow	CadetBlue
				bottomShadow	LightBlue
				break
		endswitch
	endres:
endwindow:
dialog: dialogs
	res:
		defaultDistance		#(fWidth)
		dialogType		modal
	endres:
	ditem: face
		res:
			itemType	bitmap
			bitmapPath	$(icons)
			bitmapFile	3.5-FD-0
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)
			switch $(COLOR)
				case COLOR:
				case GRAY:
					foreground	brown
					break
			endswitch
		endres:
	endditem:
	ditem: msg
		res:
			itemType	bitmap
			leftLabel	' ...'
			leftKanjiFont	$(kanjiFont)
			leftFont	$(kanaFont)
			fromHoriz	face
			vertDistance	#(fWidth)*2
			horizDistance	#(fWidth)
		endres:
	endditem:
	ditem: cancel
		res:
			itemType	button
			label		'   '
			kanjiFont	$(kanjiFont)
			font		$(kanaFont)
			fromVert	face
			vertDistance	#(fWidth)
			horizDistance	#(fWidth)*16
		endres:
		act:
			put 1 $(stop)
			kill $(pid)
			put 1 $(operation_stat)
			job off
			close
		endact:
	endditem:
enddialog:
proc: open
	put 0 $(stop)
	put 1 $(step)
	switch $(operation)
		case format:
			setval msg leftLabel ' ...'
			$(pid) = bg $(bin)/Sformat -v $(device) > $(DOTTMP)
			break
		case read:
			setval msg leftLabel ' б...'
			$(pid) = bg $(bin)/Sdd if=$(device) of=$(COPYTMP) bs=$(bs) count=80 verbose 2> $(DOTTMP)
			break
		case write:
			setval msg leftLabel ' ...'
			$(pid) = bg $(bin)/Sdd if=$(COPYTMP) of=$(device) bs=$(bs) count=80 verbose 2> $(DOTTMP)
			break
		case format_write:
			setval msg leftLabel ' ...'
			$(pid) = bg $(bin)/Sformat -v $(device) > $(DOTTMP)
			break
	endswitch
	alarm 1000 alarm
	$(end_stat) = trap $(pid) cmd_end
	put 0 $(flag)
	put 1 $(pretrack)
	put 1 $(track)
endproc:
proc: alarm
	switch #(step)
		case 2:
			switch $(operation)
				case format:
					put 3.5-FD-83 $(bitmap1)
					put 3.5-FD-83_ins $(bitmap2)
					job chgbm
					quit
			endswitch
	endswitch
	switch $(operation)
		case format:
		case format_write:
			switch #(step)
				case 1:
					job form_track
					break
				default:
					job rw_track
					break
			endswitch
			break
		default:
			job rw_track
			break
	endswitch
	switch $(operation)
		case format:
			put 3.5-FD- $(bmbase)
			break
		case read:
		case write:
			put 3.5-FD-A $(bmbase)
			break
		case format_write:
			switch #(step)
				case 1:
					put 3.5-FD- $(bmbase)
					break
				default:
					put 3.5-FD-A $(bmbase)
					break
			endswitch
			break
	endswitch
	put $(bmbase)$(track)1 $(bitmap1)
	put $(bmbase)$(track)2 $(bitmap2)
	put $(bmbase)$(track)3 $(bitmap3)
	switch #(track)
		case #(pretrack):
			break
		default:
			put 0 $(flag)
			put #(track) $(pretrack)
			break
	endswitch
	job chgbm
endproc:
proc: form_track
	put $(DOT) < $(DOTTMP)
	switch $(DOT)
		case \*............................................................................................................................................:
			put 8 $(track)
			break
		case \*........................................................................................................................:
			put 7 $(track)
			break
		case \*....................................................................................................:
			put 6 $(track)
			break
		case \*................................................................................:
			put 5 $(track)
			break
		case \*............................................................:
			put 4 $(track)
			break
		case \*........................................:
			put 3 $(track)
			break
		case \*....................:
			put 2 $(track)
			break
		default:
			put 1 $(track)
			break
	endswitch
endproc:
proc: rw_track
	put $(DOT) < $(DOTTMP)
	switch $(DOT)
		case \*......................................................................:
			put 8 $(track)
			break
		case \*............................................................:
			put 7 $(track)
			break
		case \*..................................................:
			put 6 $(track)
			break
		case \*........................................:
			put 5 $(track)
			break
		case \*..............................:
			put 4 $(track)
			break
		case \*....................:
			put 3 $(track)
			break
		case \*..........:
			put 2 $(track)
			break
		default:
			put 1 $(track)
			break
	endswitch
endproc:
proc: chgbm
	switch #(flag)
		case 0:
			setval face bitmapFile $(bitmap1)
			put 1 $(flag)
			break
		case 1:
			setval face bitmapFile $(bitmap2)
			switch $(operation)
				case format:
					switch #(step)
						case 1:
							put 2 $(flag)
							break
						case 2:
							put 0 $(flag)
							break
					endswitch
					break
				default:
					put 2 $(flag)
					break
			endswitch
			break
		case 2:
			setval face bitmapFile $(bitmap3)
			put 0 $(flag)
			break
	endswitch
	alarm 1000 alarm
endproc:
proc: close
	job off
endproc:
proc: off
	setval face bitmapFile 3.5-FD-0
endproc:
proc: cmd_end
	switch #(stop)
		case 1:
			quit
	endswitch
	switch #(end_stat)
		case 0:
			switch $(operation)
				case format:
					switch #(step)
						case 1:
							$(pid) = bg $(etc)/newfs.sh $(device)
							$(end_stat) = trap $(pid) cmd_end
							put 2 $(step)
							quit
					endswitch
					break
				case format_write:
					switch #(step)
						case 1:
							setval msg leftLabel ' ...'
							$(pid) = bg $(bin)/Sdd if=$(COPYTMP) of=$(device) bs=$(bs) count=80 verbose 2> $(DOTTMP)
							$(end_stat) = trap $(pid) cmd_end
							put 2 $(step)
							quit
					endswitch
					break
			endswitch
			/usr/bin/egrep '^\.' $(DOTTMP)
			put $(stdout) $(DOT)
			switch $(DOT)
				case ................................................................................\*:
					put 0 $(operation_stat)
					break
				default:
					put 2 $(operation_stat)
					switch $(operation)
						case read:
							put read $(operation_err)
							break
						case write:
						case format_write:
							put write $(operation_err)
							break
					endswitch
					break
			endswitch
			break
		default:
			switch $(operation)
				case format:
					put format $(operation_err)
					break
				case read:
					put read $(operation_err)
					break
				case write:
					put write $(operation_err)
					break
				case format_write:
					switch #(step)
						case 1:
							put format $(operation_err)
							break
						default:
							put write $(operation_err)
							break
					endswitch
					break
			endswitch
			put 2 $(operation_stat)
			break
	endswitch
	job off
	close
endproc:
