Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Where does Boriel assemble to?
#1
So this is like an etch-o-sketch but It doesn't like the screen grabbing part. This all works fine in Sinclair BASIC. I'm guessing the picture data collides with Boriel's compiled code. I'm also guessing that Boriel decides where to inline ASM sections. Can you explicitly tell Boriel where to assemble to ?

Code:
#include <fastPlot.bas>

DIM cx,cy,x,y,cl  AS UINTEGER

10 REM The variables
20 LET cx=128: LET cy=80: LET x=cx: LET y=cy:LET cl=0: INK 0
30 INK cl: fastPlot(x,y)
100 IF INKEY$="a" AND x>=0 THEN LET x=x-1: END IF
120 IF INKEY$="s" AND x<=255 THEN LET x=x+1: END IF
130 IF INKEY$="o" AND y<=175 THEN LET y=y+1: END IF
150 IF INKEY$="k" AND y>=0 THEN LET y=y-1: END IF
160 IF INKEY$="f" THEN PRINT AT 0,0;"Frame grabbed!": grabScreen(): END IF
170 IF INKEY$="g" THEN PRINT AT 0,0;"Frame pasted!": CLS : dumpScreen() : END IF
180 IF INKEY$="n" AND cl>=0 THEN LET cl=cl-1: END IF
190 IF INKEY$="m" AND cl<=7 THEN LET cl=cl+1: END IF

200 GO TO 30

SUB grabScreen()
ASM

LD HL,16384
LD DE,51200
LD BC,6912
LDIR
RET
END ASM
END SUB

SUB dumpScreen()
ASM

LD HL,51200
LD DE,16384
LD BC,6912
LDIR
RET
END ASM
END SUB

What i found strange also was that sometimes it seems to work fine, and sometimes it doesn't. Pressing f button does the frame grab
but FUSE freezes, the border goes blue and you might get garbled stuff at bottom of screen.
Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)