何故かnetgetv後のstatは256kバイト固定なので
netfileinfoでファイルサイズ取得して一つのバッファに追加してく方法
#include "hspinet.as"
netinit
neturl "http://hsp.tv/images/bbs/"
screen 1,640,480,2
gsel 0
fname={"
mascot1.jpg
mascot2.jpg
mascot3.jpg
mascot4.jpg
mascot5.jpg
mascot6.jpg
mascot7.jpg
mascot8.jpg
mascot9.jpg
"}
sdim membuf
msize=0
mes "DOWNLOAD 開始"
CL="Content-Length: "
CLlen=strlen(CL)
notesel fname
repeat notemax
noteget f,cnt
button gosub f,*draw
netfileinfo finfo,f
if stat or (instr(finfo,0,"image/jpeg")=-1) :mes finfo:stop
index = instr(finfo,0,CL)+CLlen
fsize(cnt)=int( strmid(finfo,index,instr(finfo,index,"\n")))
mes f+" サイズ:"+fsize(cnt)
netrequest_get f
repeat
netexec res
if res > 0 : break
if res < 0 : goto *bad
await 50
loop
netgetv buf
memoffset(cnt)=msize
memexpand membuf,memoffset(cnt)+fsize(cnt)//必要な分を再確保
memcpy membuf,buf,fsize(cnt),msize,0
msize+fsize(cnt)
wait 1
loop
mes "DOWNLOAD 終了"
stop
*draw
id=stat
gsel 1
memfile membuf, memoffset(id), fsize(id)
picload "MEM:a.jpg"
return
*bad
; エラー
neterror estr
mes "ERROR "+estr
stop