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

XREM "SC2 Header"

XBYTE 254,0,0,255,55,0,0

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 "Order"

FOR I=0 TO 767
	O=I&255
	XBYTE O
NEXT I

XREM "Spite Padding"
FOR I=0 TO 31
	XBYTE $D1,0,I,15
NEXT I

# 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

FOR I=$1BA0 TO $1FFF
	XBYTE 0
NEXT I

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

# Write to file (14343 bytes)

RECENT "msx_in_sc2.txt"

SAVE

