#
# MSX BIN exporter
# A Multipaint internal script
#
# NYYRIKKI 2026
#

# File header

BYTE $FE,$00,$90,$55,$C0,$20,$C0

XREM "Tiles"

FOR Y=0 TO 23
	FOR X=0 TO 31
		FOR V=0 TO 7
			C=128
			A=0
			FOR B=0 TO 7
				P=V*256
				P=P+B
				M=X*8
				P=P+M
				M=Y*2048
				P=P+M
				P=P+1024
				O=PEEK P
				M=C*O
				A=A+M
				C=C/2
			NEXT B

			P=Y*256
			P=P+X
			P=P+65536
			M=V*32
			P=P+M
			H=PEEK P
			P=P+6144
			L=PEEK P
			IF H<L
				A=255-A
			ENDIF
			XBYTE A
		NEXT V
	NEXT X
NEXT Y

XREM "Colors"

FOR Y=0 TO 23
	FOR X=0 TO 31
		FOR V=0 TO 7
			P=Y*256
			P=P+X
			P=P+65536
			M=V*32
			P=P+M
			H=PEEK P
			P=P+6144
			L=PEEK P
			IF H<L
				A=H
				H=L
				L=A
			ENDIF
			M=H*16
			A=M+L

			A=A

			XBYTE A
		NEXT V
	NEXT X
NEXT Y

# Save palette

A=256
FOR I=0 TO 15
	R=PEEK A
	A=A+1
	G=PEEK A
	A=A+1
	B=PEEK A
	A=A+1

	R=R/36
	G=G/36
	B=B/36

	L=R*16+B

	XBYTE L
	XBYTE G
NEXT I

# Machine code loader

BYTE $3E

# Background
A = PEEK 1
BYTE A

BYTE $32,$EB,$F3,$3E,$02,$CD,$5F,$00,$CD,$41,$00,$21,$00,$90,$ED,$5B
BYTE $CB,$F3,$01,$00,$18,$CD,$5C,$00,$21,$00,$A8,$ED,$5B,$C9,$F3,$01
BYTE $00,$18,$CD,$5C,$00,$21,$00,$C0,$11,$80,$1B,$01,$20,$00,$CD,$5C
BYTE $00,$C3,$44,$00

# Write to file

SAVE

