REM ICONVERT
REM converts 24x24 monochrome bitmaps to 48x48 with grey plane
REM by Roger Burton-West <ubte30e@ucl.ac.uk>
REM copy freely and of your own will

PROC iconvert:
	local f$(128),m$(128)
	local buffer%(2049),buf%
	local h1%,m&
	local wi%,wo%,x%,y%
	f$="\OPD\*.PIC"
	m$="\OPD\.pic"
	dINIT "Icon converter"
	dFILE f$,"Source file:",8
	dFILE m$,"Target file:",9
	if DIALOG=0
		return
	endif
	err%:(ioopen(h1%,f$,$600))
	m&=0
	err%:(ioseek(h1%,2,m&))
	if m&<>116
		ALERT("File is wrong length")
		RETURN
	endif
	err%:(ioclose(h1%))
	wi%=gLOADBIT(f$,0)
	wo%=gCREATE(0,0,48,48,1,1)
	gGREY 2
	gCLS
	gAT 24,24
	gCOPY wi%,0,0,24,24,3
	y%=24
	do
		gAT 24,y%-1
		gCOPY wo%,24,y%,24,y%,3
		y%=y%-1
	until y%=0
	x%=24
	do
		gAT x%-1,0
		gCOPY wo%,x%,0,x%,48,3
		x%=x%-1
	until x%=0
	gSAVEBIT m$
ENDP

PROC err%:(x%)
	if x%<0
		raise x%
	endif
	return x%
ENDP
