備忘録。本当はこれの移植をやりたくて調べていたんだけど、コンソール上のカーソルの設定方法がわからなかった(構造体を使うしかない…)ため断念したのでまとめておく。
コンソールなのであまり気にすることはないと思うけど、dll使っているので環境依存です。linuxでは多分動かないかな?
#runtime "hsp3cl"
#define STD_OUTPUT_HANDLE -11
#define STD_ERROR_HANDLE -12
#uselib "kernel32"
#cfunc GetStdHandle "GetStdHandle" int
#func SetConsoleTextAttribute "SetConsoleTextAttribute" int,int
#func WriteConsole "WriteConsoleA" int,str,int,int
mes "いつもの色"
hErr=GetStdHandle(STD_ERROR_HANDLE)
repeat $100
SetConsoleTextAttribute hErr,cnt
puts=strf("%02X ",cnt)
WriteConsole hErr,puts,strlrn(puts),0
if cnt\$10=$F : mes ""
loop
SetConsoleTextAttribute hErr,$7