uxn/projects/examples/dev.file.usm

75 lines
1.4 KiB
Plaintext

( Dev/File )
%8+ { #0008 ADD2 }
%MEMORY { #1000 }
%%^! { .% DEI } %%~! { .% DEO }
%%*! { .% DEI2 } %%=! { .% DEO2 }
%%^ { .% PEK } %%~ { .% POK }
%%* { .% PEK2 } %%= { .% POK2 }
( devices )
|00 @System [ &vector $2 &pad $6 &r $2 &g $2 &b $2 ]
|10 @Console [ &pad $8 &char $1 &byte $1 &short $2 &string $2 ]
|20 @Screen [ &vector $2 &width $2 &height $2 &pad $2 &x $2 &y $2 &addr $2 &color $1 ]
|70 @File [ &vector $2 &success $2 &offset $2 &pad $2 &name $2 &length $2 &load $2 &save $2 ]
( variables )
|0000
( init )
|0100 ( -> )
( theme )
#0efc System/r=!
#03cc System/g=!
#03ac System/b=!
( load file )
#1000 File/length=!
;srcpath File/name=!
MEMORY File/load=!
File/success*! #0000 NEQ2 ;on-success JNZ2
;failedtxt Console/string=!
BRK
@on-success ( -> )
;successtxt Console/string=!
( draw image )
MEMORY Screen/addr=!
#0000 #0080
&ver
( save ) OVR2 Screen/y=!
#0000 #0080
&hor
( save ) OVR2 Screen/x=!
( draw ) #41 Screen/color~!
( incr ) Screen/addr*! #0010 ADD2 Screen/addr=!
( incr ) SWP2 8+ SWP2
OVR2 OVR2 LTH2 ,&hor JNZ
POP2 POP2
( incr ) SWP2 8+ SWP2
OVR2 OVR2 LTH2 ,&ver JNZ
POP2 POP2
( save file )
#1000 File/length=!
;dstpath File/name=!
MEMORY File/save=!
BRK
@successtxt "Success! $1
@failedtxt "Failed. $1
@srcpath "projects/pictures/ako10x10.chr $1
@dstpath "bin/image-copy.chr $1