-
-
Notifications
You must be signed in to change notification settings - Fork 500
poke
Denis Maslennikov edited this page Nov 13, 2017
·
25 revisions
poke addr val
- addr : the address in RAM to which to write
- val : the value to write to the specified address
This function allows you to write to the virtual RAM of TIC.
The address should be specified in hexadecimal format, and values should be given in decimal.
-- demo poke
function TIC()
--Make some video noise
for i=0,(240*136)/2-1 do
poke(0x0000+i,(i*i*time())/3000000000%2+1)
end
--Sound it
m=0
for i=30,80 do
m=m+peek(0x0000+6000+i)
end
f=math.floor((10+((1+m)/20))*400)
poke(0xFF80+0,f&0XFF)
poke(0xFF80+2,(f&0XFF00)>>8)
poke(0xFF80+8,f&0XFF)
poke(0xFF80+10,(f&0XFF00)>>8)
end
-- demo poke
l1=49
w1=18
l2=21
w2=12
function TIC()
--Video noise
for i=0,(240*136)/2-1 do
poke(0x0000+i,(i*i*time())/3000000000%2+1)
end
--Sounds
if btnp(0,3,3)then l1=l1-1 end
if btnp(1,3,3)then l1=l1+1 end
if btnp(2,3,3)then w1=w1-1 end
if btnp(3,3,3)then w1=w1+1 end
l1=l1<136 and l1 or 135
l1=l1>0 and l1 or 0
w1=w1<120 and w1 or 112
w1=w1>2 and w1 or 2
if btnp(8,3,3)then l2=l2-1 end
if btnp(9,3,3)then l2=l2+1 end
if btnp(10,3,3)then w2=w2-1 end
if btnp(11,3,3)then w2=w2+1 end
l2=l2<136 and l2 or 135
l2=l2>0 and l2 or 0
w2=w2<120 and w2 or 112
w2=w2>2 and w2 or 2
--S1
off1=l1*120
m=0
for i=60-w1/2,60+w1/2 do
m=m+peek(0x0000+off1+i)
end
f=(10+((1+m)/w1))*800
f=math.floor(f)
print(l1..'-'..w1..'-'..f,0,0)
poke(0xFF80+0,f&0XFF)
poke(0xFF80+2,(f&0XFF00)>>8)
--Draw line
for i=60-w1/2,60+w1/2 do
poke(0x0000+off1+i,136)
end
--S2
off2=l2*120
m=0
for i=60-w2/2,60+w2/2 do
m=m+peek(0x0000+off2+i)
end
f=(10+((1+m)/w2))*800
f=math.floor(f)
print(l2..'-'..w2..'-'..f,0,10)
poke(0xFF80+8,f&0XFF)
poke(0xFF80+10,(f&0XFF00)>>8)
--Draw line
for i=60-w2/2,60+w2/2 do
poke(0x0000+off2+i,102)
end
end
TIC-80 tiny computer https://tic80.com | Twitter | Telegram | Terms
Built-in Editors
Console
Platform
RAM & VRAM | Display | Palette | Bits per Pixel (BPP) |
.tic
Format | Supported Languages
Other
Tutorials | Code Snippets | Libraries | External Tools | FFT
API
- BDR (0.90)
- BOOT (1.0)
- MENU
- OVR (deprecated)
- SCN (deprecated)
- TIC
- btn & btnp
- circ & circb
- clip
- cls
- elli & ellib (0.90)
- exit
- fget & fset (0.80)
- font
- key & keyp
- line
- map
- memcpy & memset
- mget & mset
- mouse
- music
- peek, peek4
- peek1, peek2 (1.0)
- pix
- pmem
- poke, poke4
- poke1, poke2 (1.0)
- rect & rectb
- reset
- sfx
- spr
- sync
- ttri (1.0)
- time
- trace
- tri & trib (0.90)
- tstamp (0.80)
- vbank (1.0)