Welcome, Guest |
You have to register before you can post on our site.
|
Online Users |
There are currently 168 online users. » 0 Member(s) | 166 Guest(s) Applebot, Bing
|
Latest Threads |
Printing with FZX
Forum: Help & Support
Last Post: boriel
07-17-2025, 09:08 PM
» Replies: 1
» Views: 355
|
Strange Happenings
Forum: Bug Reports
Last Post: boriel
05-23-2025, 09:15 AM
» Replies: 4
» Views: 2,528
|
.tap file code not execut...
Forum: Help & Support
Last Post: Zoran
04-28-2025, 10:59 AM
» Replies: 4
» Views: 2,708
|
Exit from more than one l...
Forum: Wishlist
Last Post: Duefectu
04-23-2025, 10:06 PM
» Replies: 3
» Views: 2,259
|
put small ASM programs li...
Forum: How-To & Tutorials
Last Post: Zoran
04-18-2025, 02:02 PM
» Replies: 6
» Views: 5,258
|
Creating +3 Menus - Loadi...
Forum: Help & Support
Last Post: merlinkv
04-16-2025, 02:08 PM
» Replies: 6
» Views: 3,694
|
Randomize not very random...
Forum: Help & Support
Last Post: Zoran
04-08-2025, 10:40 AM
» Replies: 4
» Views: 3,426
|
Scope rules
Forum: Bug Reports
Last Post: Zoran
04-04-2025, 09:46 AM
» Replies: 2
» Views: 1,949
|
Using constants not allow...
Forum: Bug Reports
Last Post: baltasarq
03-19-2025, 10:00 PM
» Replies: 8
» Views: 4,734
|
404 page not found
Forum: Documentation
Last Post: boriel
03-08-2025, 07:16 PM
» Replies: 5
» Views: 5,431
|
|
|
why is there 2 halt on waitretrace macro? |
Posted by: maeloterkim - 09-09-2021, 06:02 PM - Forum: Help & Support
- Replies (1)
|
 |
why is there 2 halt on waitretrace macro?
i found in the library this waitretrace macro in the retrace.bas file
REM simple WaitRetrace macro
#ifndef waitretrace
#define waitretrace 'REM Retrace \
asm \
halt \
halt \
end asm
#endif
Is not better put only one halt for better timer control of the programmer?
if there was only one halt is more easy to control
with one halt we can do
waitretrace -> only 1 halt 1/50 seconds
2 halt -> 2/50seconds
waitretrace
waitretrace
N halt -> N/50seconds
for i = 1 to N
waitretrace
next i
|
|
|
Is posible put a ubyte variable just after DIM |
Posted by: maeloterkim - 09-04-2021, 02:17 PM - Forum: Help & Support
- Replies (2)
|
 |
Hi
Is posible put a ubyte variable just after DIM WITHOUT ASSEMBLER maybe with AT @ or something
Example:
Code: DIM udg(1, 7) AS uByte => {{0,1,3,7,15,31,63,127}, _
{1,2,4,7,15,31,63,127}}
DIM myVariable as ubyte
I WANT THIS VARIABLE VALUE JUST THE NEXT BYTE AT THE END OF LAST UDG DIM BYTE LIKE THIS
ADDRESS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
VALUE 0 1 3 7 15 31 63 127 1 2 4 7 15 31 63 127 myVariable
-------------------- DIM UDG -------------------------------
|
|
|
struggle on using/implementing sprite libraries |
Posted by: nitrofurano - 08-25-2021, 08:02 PM - Forum: Wishlist
- Replies (2)
|
 |
since a long time i was thinking how simple or possible would be using sprite engines/libraries on zxbasic-compiler (just like those used on z88dk and so on)
so i started to try this (very glitchy and inefficient, as the code shows... )
(wsad or cursors for moving)
Code: ink 1
border 1:ink 5:bright 1: paper 1: cls
sub putudgsprite(txp1 as uinteger,typ1 as uinteger,tad1 as uinteger)
poke uinteger $5C7B,tad1+(7-(typ1 mod 8))+(txp1 mod 8)*32
print at int(typ1/8),int(txp1/8);"\A\C"
print at 1+int(typ1/8),int(txp1/8);"\B\D"
end sub
yo=0:xo=0
putudgsprite(xo,yo,@udg01)
x1=128:y1=128
do
cn1=((255-(in 64510)) band 2)/2 bor ((255-(in 65022)) band 2) bor ((255-(in 65022)) band 1)*4 bor ((255-(in 65022)) band 4)*2 :'- wsad
cn2=((255-(in 61438)) band 8)/8 bor ((255-(in 61438)) band 16)/8 bor ((255-(in 63486)) band 16)/4 bor ((255-(in 61438)) band 4)*2 :'-7658
cn0=cn1 bor cn2
x1=x1-((cn0 band 4)/4)
x1=x1+((cn0 band 8)/8)
y1=y1-((cn0 band 1)/1)
y1=y1+((cn0 band 2)/2)
over 1
putudgsprite(xo,yo,@udg01)
xo=x1:yo=y1
putudgsprite(x1,y1,@udg01)
pause 1
loop
do:loop
udg01:
asm
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %11111111
defb %11111111
defb %11111111
defb %11111111
defb %11111111
defb %11111111
defb %11111111
defb %11111111
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %01111111
defb %01111111
defb %01111111
defb %01111111
defb %01111111
defb %01111111
defb %01111111
defb %01111111
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %10000000
defb %10000000
defb %10000000
defb %10000000
defb %10000000
defb %10000000
defb %10000000
defb %10000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00111111
defb %00111111
defb %00111111
defb %00111111
defb %00111111
defb %00111111
defb %00111111
defb %00111111
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %11000000
defb %11000000
defb %11000000
defb %11000000
defb %11000000
defb %11000000
defb %11000000
defb %11000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00011111
defb %00011111
defb %00011111
defb %00011111
defb %00011111
defb %00011111
defb %00011111
defb %00011111
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %11100000
defb %11100000
defb %11100000
defb %11100000
defb %11100000
defb %11100000
defb %11100000
defb %11100000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00001111
defb %00001111
defb %00001111
defb %00001111
defb %00001111
defb %00001111
defb %00001111
defb %00001111
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %11110000
defb %11110000
defb %11110000
defb %11110000
defb %11110000
defb %11110000
defb %11110000
defb %11110000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000111
defb %00000111
defb %00000111
defb %00000111
defb %00000111
defb %00000111
defb %00000111
defb %00000111
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %11111000
defb %11111000
defb %11111000
defb %11111000
defb %11111000
defb %11111000
defb %11111000
defb %11111000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000011
defb %00000011
defb %00000011
defb %00000011
defb %00000011
defb %00000011
defb %00000011
defb %00000011
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %11111100
defb %11111100
defb %11111100
defb %11111100
defb %11111100
defb %11111100
defb %11111100
defb %11111100
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000001
defb %00000001
defb %00000001
defb %00000001
defb %00000001
defb %00000001
defb %00000001
defb %00000001
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %11111110
defb %11111110
defb %11111110
defb %11111110
defb %11111110
defb %11111110
defb %11111110
defb %11111110
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
defb %00000000
end asm
so, any idea of using "true" sprites instead of that attempt above?
|
|
|
GOTO inside a function question? |
Posted by: RandomiserUsr - 06-05-2021, 03:14 PM - Forum: Help & Support
- Replies (3)
|
 |
I have two functions that have a return 0
Code: FUNCTION processTest(test INTEGER) as INTEGER
......processing stuff
IF X=1 THEN
poke TestAddress, 1
GOTO displayMsg
END IF
return 0
END FUNCTION
Does the this cause any memory leaks on the stack?
i.e. by not "returning" something is left on the stack and won't be removed?
I remember something about GOSUB/RETURN having this or am I okay to not RETURN (I am experimenting before you may say it's not "good practice )
Thanks in advance
|
|
|
|