Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.
Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.
CARD ARRAY addrs
test=rand(3)
SETIT(px,py,test)
SETIT(px,py,rand(3))
MODULE
BYTE mx=[32]
BYTE my=[9]
BYTE ARRAY tablica(1000)
BYTE FUNC GETIT(BYTE x,y)
RETURN(tablica(y*mx+x))
PROC SETIT(BYTE x,y,c)
tablica(y*mx+x)=c
RETURN
PROC GEN()
BYTE test,px,py
PrintE ("gen")
for py=0 to my-1
do
for px=0 to mx-1
do
test=rand(3)
SETIT(px,py,test)
od
od
RETURN
PROC POKA()
BYTE test,px,py
PrintE ("poka")
for py=0 to my-1
do
for px=0 to mx-1
do
test=GETIT(px,py)
printb (test)
od
printE(" ")
od
RETURN
PROC MAIN()
Graphics(0)
GEN()
POKA()
RETURN
BYTE i
Put(125)
PrintE ("1do10")
for i=1 to 10 step 1
do
PrintF ("%I,",i)
od
PrintE ("")
PrintE ("10do1")
for i=10 to 1 step -1 ; tu po prostu nic sie nie dzieje :/
do
PrintF ("%I,",i)
od
PrintE ("")
PROC MAIN()
BYTE i,continue
CARD scrmem
GRAPHICS(1)
scrmem=peekc(88)
for i=0 to 255
do
poke(scrmem+i,i)
od
RETURN
; petla 0-255 w asm
ldx #0
label
zrób cośtam
inx
bne label
BYTE i
byte pointer scrmem
GRAPHICS(1)
scrmem=peekc(88)
for i=0 to 255
do
scrmem^=i
scrmem==+1
od
; do od
BYTE i,continue,setnew
CARD chset,setadr
GRAPHICS(0)
setnew=peek(106)-4
poke(106,setnew) ;obniżenie gornej granicy ram
chset=57344 ;adres org tablicy znakow
setadr=setnew*256 ;adres nowej tablicy znakow
MOVEBLOCK(chset,setadr,1024) ;kopiowanie tablicy znakow na nowe miejsce
poke(756,setnew) ;wskazanie nowego adresu znakow
for i=0 to 120
do
printf("%C",i)
od
continue = GetD(7)
BYTE i,continue,setnew
CARD chset,setadr
setnew=peek(106)-4
poke(106,setnew) ;obniżenie gornej granicy ram
GRAPHICS(0)
chset=57344 ;adres org tablicy znakow
setadr=setnew*256 ;adres nowej tablicy znakow
MOVEBLOCK(SETADR,CHSET,1024) ;kopiowanie tablicy znakow na nowe miejsce
poke(756,setnew) ;wskazanie nowego adresu znakow
for i=0 to 120
do
printf("%C",i)
od
continue = GetD(7)
Kaz:
Bo mamy nowszą wersje w Bibliotece Atarowca, polecam.SetBlock(scrmem,scrmem+199,0)
Zero(scrmem,scrmem+199)
INCLUDE "H6:SYS.ACT"
PROC test()
BYTE i
FOR i=0 to 10
DO
printE("test")
OD
RETURN
PROC MAIN()
BYTE continue
DO
test()
continue = GetD(7)
IF continue=27 THEN EXIT FI
OD
RETURN
PROC MAIN()
BYTE continue
Close (7)
Open (7,"K:",4,0)
DO
test()
continue = GetD(7)
IF continue=27 THEN EXIT FI
OD
Close (7)
RETURN
BYTE ARRAY blank = [1 1 1 1 1 1 ]
CARD blkmem
blkmem = peekc(@blank)
printCE(blkmem)
BYTE ARRAY blank(100)
CARD blkmem
blkmem = peekc(@blank)
printCE(blkmem)
MODULE
BYTE ARRAY plan(500)
BYTE ARRAY test(500)
CARD PlanAdr
CARD TestAdr
PlanAdr=peekc(@plan)
TestAdr=peekc(@test)
printcE(PlanAdr)
printcE(TestAdr)