Missing variable declares: sc w5
Missing + operator LoadBytes("maps/map" + m "-1.txt",map1)
include "sw.inc"
Window 640,480,1
'PI= 4 * ATN (1)
sys pas=1,col=12,r=65,con,z=10
sys a,w,k,m,n,j,x,r,x1,y,y1,py,px,x2,y2
dim PUN(29040)
Sub ESCALON
a=j*2+1
LINE PUN(a)-30, PUN(a), PUN(a), PUN(a), 1, RGB(255,255,255)
LINE PUN(a), PUN(a), PUN(a), PUN(a)-21, 1, RGB(255,255,255)
CIRCLE PUN(a),PUN(a),(pi*2*222)/360, 1,RGB(255,255,0)
CIRCLE PUN(a)-8,PUN(a)-3,3, 1, RGB(25,255,0)
CIRCLE PUN(a)-18,PUN(a)-13,3,1,RGB(25,255,0)
End Sub
Sub ALMACENAR
CON = CON + 1
a=con*2+1
PUN(a) = PX
PUN(a+1) = PY
End Sub
Sub PUNTOS
sys g
g = (N*2*PI)/360
X = COS (g) * R
Y = SIN (g) * R
End Sub
Sub LINEA_PUNTOS2
sys dx,dy,hip,ang
DX = ABS (X1 - X2) :DY = ABS (Y1 - Y2) :HIP = SQR (ABS((DX^2)+(DY^2))):ANG = ATN (DY / DX)
FOR N = 0 TO HIP STEP PAS
Y = SIN (ANG) * N:X = COS (ANG) * N
IF X1 < X2 AND Y1 < Y2 THEN PX = X + X1 :PY = Y + Y1
IF X1 < X2 AND Y1 > Y2 THEN PX = X + X1 :PY = Y1 - Y
IF X1 > X2 AND Y1 < Y2 THEN PX = X + X2 :PY = Y2 - Y
IF X1 > X2 AND Y1 > Y2 THEN PX = X1 - X :PY = Y1 - Y
IF X1 = X2 AND Y1 < Y2 THEN PX = X + X2 :PY = Y2 - Y
IF X1 = X2 AND Y1 > Y2 THEN PX = X + X2 :PY = Y2 + Y
IF X1 < X2 AND Y1 = Y2 THEN PX = X2 - X :PY = Y2 + Y
IF X1 > X2 AND Y1 = Y2 THEN PX = X2 + X :PY = Y2 + Y
IF X1 = X2 AND Y1 = Y2 THEN PX = X1 :PY = Y1
ALMACENAR
NEXT
End Sub
Sub TRAYECTORIA2
FOR N = 270 TO 90 STEP - 1
PUNTOS
PX = X + 80
PY = Y + 80
ALMACENAR
NEXT
X1 = 170:Y1 = 145:X2 = 80:Y2 = 145
LINEA_PUNTOS2
FOR N = 270 TO 315
PUNTOS
PX = X + 170
PY = Y + 210
ALMACENAR
NEXT
X1 = 216:Y1 = 164:X2 = 414:Y2 = 348
LINEA_PUNTOS2
FOR N = 135 TO 90 STEP -1
PUNTOS
PX = X + 458
PY = Y + 300
ALMACENAR
NEXT
X1 = 548:Y1 = 365:X2 = 458:Y2 = 365
LINEA_PUNTOS2
'SEMICIRCULO SUPERIOR
FOR N = 450 TO 270 STEP -1
PUNTOS
PX = X + 548
PY = Y + 300
ALMACENAR
NEXT
X1 = 458:Y1 = 235:X2 = 548:Y2 = 235
LINEA_PUNTOS2
'ARCO INFERIOR SUPERIOR
FOR N = 90 TO 135
PUNTOS
PX = X + 458
PY = Y + 170
ALMACENAR
NEXT
'LINEA INCLINADA HACIA ABAJO
X1 = 414:Y1 = 218:X2 = 216:Y2 = 33
LINEA_PUNTOS2
FOR N = 315 TO 270 STEP -1
PUNTOS
PX = X + 170
PY = Y + 80
ALMACENAR
NEXT
X1 = 80:Y1 = 15:X2 = 170:Y2 = 15
LINEA_PUNTOS2
End Sub
FOR W = 1 TO 5
TRAYECTORIA2
NEXT
FOR K = 1 TO 1452*Z
CLS 0
LINE 0,365,640,365,1, RGB(255,0,0)
LINE 0,145,640,145,1, RGB(255,0,0)
FOR M= 1 TO 1452
a= m*2+1
SetPixel PUN(a),PUN(a+1),RGB(0,255,0)
NEXT
FOR J= 1 + K TO 1452 + K STEP 31
ESCALON
NEXT
FOR W = 1 - K TO 360 - K STEP 6
G = (W*2*PI)/360
X = COS (G) * 63
Y = SIN (G) * 63
CIRCLE X+ 80,Y + 80,3,1, RGB(0,255,255)
CIRCLE X+548,Y +300,3,1, RGB(0,255,255)
CIRCLE 80, 80, 10,1,RGB(0,255,255)
CIRCLE 548,300,10,1,RGB(0,255,255)
NEXT
Sync
NEXT
WaitKey
Quit
I have now this here.
include "sw.inc"
Window 640,480,1
sys pas=1,col=12,r=65,con,z=10
single a,w,k,m,n,j,x,r,k,g,x1,y,y1,py,px,x2,y2
dim PUN(29040)
Sub ESCALON
a=j*2+1
LINE PUN(a)-30, PUN(a), PUN(a), PUN(a), 1, RGB(255,255,255)
LINE PUN(a), PUN(a), PUN(a), PUN(a)-21, 1, RGB(255,255,255)
CIRCLE PUN(a),PUN(a),15*pi+(pi*2*222)/360, 1,RGB(255,255,0)
CIRCLE PUN(a)-8,PUN(a)-3,3, 1, RGB(25,255,0)
CIRCLE PUN(a)-18,PUN(a)-13,3,1,RGB(25,255,0)
End Sub
Sub ALMACENAR
CON = CON + 1
a=con*2+1
PUN(a) = PX
PUN(a+1) = PY
End Sub
Sub PUNTOS
sys g
g = (N*2*PI)/360
X = COS (g) * R
Y = SIN (g) * R
End Sub
Sub LINEA_PUNTOS2
sys dx,dy,hip,ang
DX = ABS (X1 - X2) :DY = ABS (Y1 - Y2) :HIP = SQR (ABS((DX^2)+(DY^2))):ANG = ATN (DY / DX)
FOR N = 0 TO HIP STEP PAS
Y = SIN (ANG) * N:X = COS (ANG) * N
IF X1 < X2 AND Y1 < Y2 THEN PX = X + X1 :PY = Y + Y1
IF X1 < X2 AND Y1 > Y2 THEN PX = X + X1 :PY = Y1 - Y
IF X1 > X2 AND Y1 < Y2 THEN PX = X + X2 :PY = Y2 - Y
IF X1 > X2 AND Y1 > Y2 THEN PX = X1 - X :PY = Y1 - Y
IF X1 = X2 AND Y1 < Y2 THEN PX = X + X2 :PY = Y2 - Y
IF X1 = X2 AND Y1 > Y2 THEN PX = X + X2 :PY = Y2 + Y
IF X1 < X2 AND Y1 = Y2 THEN PX = X2 - X :PY = Y2 + Y
IF X1 > X2 AND Y1 = Y2 THEN PX = X2 + X :PY = Y2 + Y
IF X1 = X2 AND Y1 = Y2 THEN PX = X1 :PY = Y1
ALMACENAR
NEXT
End Sub
Sub TRAYECTORIA2
FOR N = 270 TO 90 STEP - 1
PUNTOS
PX = X + 80
PY = Y + 80
ALMACENAR
NEXT
X1 = 170:Y1 = 145:X2 = 80:Y2 = 145
LINEA_PUNTOS2
FOR N = 270 TO 315
PUNTOS
PX = X + 170
PY = Y + 210
ALMACENAR
NEXT
X1 = 216:Y1 = 164:X2 = 414:Y2 = 348
LINEA_PUNTOS2
FOR N = 135 TO 90 STEP -1
PUNTOS
PX = X + 458
PY = Y + 300
ALMACENAR
NEXT
X1 = 548:Y1 = 365:X2 = 458:Y2 = 365
LINEA_PUNTOS2
FOR N = 450 TO 270 STEP -1
PUNTOS
PX = X + 548
PY = Y + 300
ALMACENAR
NEXT
X1 = 458:Y1 = 235:X2 = 548:Y2 = 235
LINEA_PUNTOS2
FOR N = 90 TO 135
PUNTOS
PX = X + 458
PY = Y + 170
ALMACENAR
NEXT
X1 = 414:Y1 = 218:X2 = 216:Y2 = 33
LINEA_PUNTOS2
FOR N = 315 TO 270 STEP -1
PUNTOS
PX = X + 170
PY = Y + 80
ALMACENAR
NEXT
X1 = 80:Y1 = 15:X2 = 170:Y2 = 15
LINEA_PUNTOS2
End Sub
FOR W = 1 TO 5
TRAYECTORIA2
NEXT
FOR K = 1 TO 1452*Z
CLS 0
LINE 0,365,640,365,1, RGB(255,0,0)
LINE 0,145,640,145,1, RGB(255,0,0)
'FOR M=1 TO 1452
' a= m*2+1
' SetPixel PUN(a),PUN(a+1),RGB(0,255,0)
'NEXT
FOR J= 1 + K TO 1452 + K STEP 31
ESCALON
NEXT
FOR W = 1 - K TO 360 - K STEP 6
G = (W*2*PI)/360
X = COS (G) * 63
Y = SIN (G) * 63
CIRCLE X+ 80,Y + 80,3,1, RGB(0,255,255)
CIRCLE X+548,Y +300,3,1, RGB(0,255,255)
CIRCLE 80, 80, 10,1,RGB(0,255,255)
CIRCLE 548,300,10,1,RGB(0,255,255)
NEXT
Sync
NEXT
WaitKey
Quit
The most ancient of Basics is supported:
Where are Line, circle Pset and so on?you know where... ;D
include "sw.inc"
Window 640,480,1
sys x
'SetFps (80)
while Key(27)=0
cls (0)
Text 0,0,"FRAMES = " + GetFps, white
DrawPoint x,100,12,12, white
DrawPoint x+12,112,12,12, white
DrawPoint x,124,12,12, white
x +=1
if x>640 then x -=x
Redraw
SetFps (80)
wend
Quit
I notice always that you put "SetFps" outside the main Loop.
This is wrong and has no effect.
include "sw.inc"
Window 640, 480, 1
Sub BigPixel(sys x1,y1,x2,y2,w,h)
sys x, y, r, g, b, color
x = x1
y = y1
while y <= y2-h
color = GetPixel x,y
r = GetValueR color
g = GetValueG color
b = GetValueB color
DrawPoint x, y, w, h, RGB(r,g,b)
x = x + w
if x >= x2 - w
x = x1
y = y + h
end if
wend
End Sub
bild= LoadBmp "bmp/bild1.bmp",0
sys a
Text 160,100,"WAIT.....",0
Sync
DrawBmp bild,0,0,640,480,0
For a=1 to 34
SetCaption "PIXELS ARE NOW " a + "x" + a
DrawBmp bild,0,0,640,480,0
BigPixel 0,0,640,480,a,a
WaitMouse
Next
Quit
Include "sbsw.inc"
SUB VARIABLES
z = 0
s = 0
tree = 0
star = 0
flow = 0
weed = 0
END SUB
tree = SW_LoadBmp "tree/mytree.bmp",1
star = SW_LoadBmp "tree/starlight.bmp",3
flow = SW_LoadBmp "tree/flower.bmp",8
weed = SW_LoadBmp "tree/weed.bmp",1
SW_Window 320,240,1
VARIABLES
While SW_Key(27)=0
SW_cls 0
SW_Sprite tree,0,0,0
SW_DrawBmp flow, 0, 111,128,128,z
SW_DrawBmp flow,191,118,128,128,z+4
SW_DrawBmp star,40,0,200,60,s
SW_DrawBmp weed,0,208,320,32,0
z +=1
if z=4 then z=0
s +=1
if s=3 then s=0
SW_Sync
SW_SetFps (8)
Wend
SW_Quit
Yes, that was it.
Is for ScriptBasic.
include "sw.inc"
Window 640,480,1
sys i
For y=0, 480, 30
For x=0, 600, 40
FillBox(x,y,40,30, RGB(i,i,i))
i +=1
Next
Next
WaitKey
Quit
Include "sbsw.inc"
SUB VARIABLES
z = 0
s = 0
tree = 0
star = 0
flow = 0
weed = 0
END SUB
tree = SW_LoadBmp("tree/mytree.bmp",1)
star = SW_LoadBmp("tree/starlight.bmp",3)
flow = SW_LoadBmp("tree/flower.bmp",8)
weed = SW_LoadBmp("tree/weed.bmp",1)
SW_Window 320,240,1
VARIABLES
While SW_Key(27)=0
SW_cls 0
SW_Sprite tree,0,0,0
SW_DrawBmp flow, 0, 111,128,128,z
SW_DrawBmp flow,191,118,128,128,z+4
SW_DrawBmp star,40,0,200,60,s
SW_DrawBmp weed,0,208,320,32,0
z +=1
if z=4 then z=0
s +=1
if s=3 then s=0
SW_Sync
SW_SetFps (8)
Wend
SW_Quit
I can't test. I have always a crash.
I'm astonished that you were able to create such a cool library like Simple Window.
SB has to be one of the easiest languages around to install and program with