So the entire pseudo-code for the first run would be:
b1 = 0x20
b2 = 0x20
Y = 0
do:
b3 = 0
do:
w3 = 0
do:
w4 = 0
do:
w1 = b1 * 0x100 + 0
w1 += b3
w1 += w3
w1 += w4
w2 = w1 + b2 * 0x100
mem[w1 + Y] = 0
w4 += 0x400
until w4 == 0x2000
w3 += 0x80
until w3 // 0x100 == 0x04
b3 += 0x28
until b3 == 0x78
# sleep
Y += 1
until Y == 0x28