1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-13 15:27:28 +00:00

MUNCH - TV-munching square.

This commit is contained in:
Lars Brinkhoff 2018-07-30 15:41:37 +02:00
parent 8c90c591b8
commit 1e02a45164
3 changed files with 209 additions and 0 deletions

View File

@ -443,6 +443,10 @@ respond "\n" "TTY==120\r"
respond "\n" "DIS==130\r\003"
expect ":KILL"
# TV-munching square.
respond "*" ":midas sys2;ts munch_sysen2;munch\r"
expect ":KILL"
# Hunt the Wumpus
respond "*" ":midas sys1;ts wumpus_games; wumpus\r"
expect ":KILL"

View File

@ -150,6 +150,7 @@
- MSPLIT, split a file into smaller parts.
- MTBOOT, make bootable tapes.
- MUDDLE, MDL interpreter.
- MUNCH, TV-munching square.
- NAME, shows logged in users and locations, aka FINGER.
- NETIME, network time dragon.
- NICNAM/NICWHO, look up someone in the Arpanet directory.

204
src/sysen2/munch.3 Executable file
View File

@ -0,0 +1,204 @@
title the prverbial munching squares
a=1 ;position of square
b=2
c=3
d=4
e=5 ;square in use
f=6 ;flags
p=17
time==3 ;time (in 30'ths) between munches
pdl==10
tv=2000*100
begflg==10 ;first time around
pstack: -pdl,,.
block pdl
munch: move p,pstack
tro f,begflg
movei b,0
.call [setz
'corblk
1000,,300000
1000,,-1
[-10,,100]
1000,,-2
setz b]
.value
.value [asciz/:proced
/]
.rtime a,
andi a,7
loop: move b,square(e)
pushj p,put
movei b,time
.sleep b,
move b,square(e)
pushj p,unput
addi a,18.
idivi a,440.*18.
skipe a
trz f,begflg
movei a,(b)
caige a,18.
subi a,1
jumpge a,.+2
movei a,17.
addi e,1
cail e,nsquar ;the number of diff. squares
movei e,0
jrst loop
square: -sqlen,,squar1
-sqlen,,squar2
-sqlen,,squar3
-sqlen,,squar4
nsquar==.-square
put: movei c,(a)
put1: caige c,440.*18.
jrst put2
jrst put3
put2: move d,(b)
iorm d,tv(c)
put3: subi c,18.
jumpge c,put4
addi c,440.*18.+1
trne f,begflg
popj p,
put4: aobjn b,put1
popj p,
unput: movei c,(a)
unput1: caige c,440.*18.
jrst unput2
jrst unput3
unput2: move d,(b)
andcam d,tv(c)
unput3: subi c,18.
jumpge c,unput4
addi c,440.*18.+1
trne f,begflg
popj p,
unput4: aobjn b,unput1
popj p,
radix 2
squar1: 000000000000000000000000000000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
sqlen=.-squar1
squar2: 000000000000000000000000000000000000
000011111111100000111111111100000000
000011111111110001111111111100000000
000011111111111011111111111100000000
000001111111110001111111111000000000
000001111111111011111111111000000000
000001111111111111111111111000000000
000001111111111111111111111000000000
000001111111111111111111111000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
ifn .-squar2-sqlen , .err bad block
squar3: 000000000000000000000000000000000000
000111111000000000000000001110000000
000111111100000000000000011110000000
000111111110000000000000111110000000
000111111111000000000001111110000000
000111111110000000000000111110000000
000111111100000000000000011110000000
000011111111000000000001111100000000
000011111111110000000111111100000000
000011111111100000000011111100000000
000011111111000000000001111100000000
000011111111110000000111111100000000
000001111111111100011111111100000000
000001111111111000001111111000000000
000001111111111100011111111000000000
000000111111111110111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111111111111111110000000000
000000111111110000111111110000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
ifn .-squar3-sqlen, .err square 3 is bad
squar4: 000000000000000000000000000000010000
110000000000000000000000000001110000
111100000000000000000000000111110000
111111000000000000000000011111110000
111110000000000000000000001111110000
011100000000000000000000000111100000
011111000000000000000000011111100000
011111110000000000000001111111100000
011111111100000000000111111111100000
001111111000000000000011111111000000
001111110000000000000001111111000000
001111111100000000000111111111000000
001111111111000000011111111111000000
000111111110000000001111111110000000
000111111100000000000111111110000000
000111111111000000011111111110000000
000011111111110001111111111100000000
000011111111111011111111111100000000
000011111111111111111111111100000000
000001111111111111111111111100000000
000001111111111001111111111100000000
000000111111100000011111111000000000
000000111110000000000011110000000000
000000110000000000000000110000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
000000000000000000000000000000000000
ifn .-squar4-sqlen, .err bad square 4
end munch