+IHandler:
+ exx
+ ex af,af'
+ in a,(3)
+ bit 1,a
+ jr z,notvbl
+ ld hl,GreyCounter
+ inc (hl)
+ ld a,(hl)
+ cp 3
+ ld a,3Ch
+ jr nz,notpage1
+ ld (hl),0
+ ld a,(GreyBuf/256)-0C0h
+notpage1:
+ out (0),a
+notvbl:
+ jp 3Ah
+IHandlerEnd:
+GreyCounter .db 0
+
+DisplayField:
+ ld l,a
+ ld h,0
+ add hl,hl
+ add hl,hl
+ add hl,hl
+ add hl,hl
+ push bc
+ push de
+ ld de,ScrBuffer
+ add hl,de
+ ld de,0FC70h
+ ld bc,00390h
+ ldir
+ ld de,BufSize-390h
+ add hl,de
+ ld de,GreyBuf+70h
+ ld bc,00390h
+ ldir
+ pop de
+ pop bc
+ ret
+
+DispMsg:
+ push hl
+ ld h,a
+ ld l,4
+ ld (_curRow),hl
+ ld hl,0FDE0h
+ ld de,0FDE1h
+ ld (hl),-1
+ ld bc,0BFh
+ ldir
+ pop hl
+ set 3,(iy+5)
+ jp _puts
+
+
+Levels:
+ .db 5,7 ;5 peas, speed 7
+ .db 64,4,0 ;x,y,d
+ .db 57 ;field height
+ .db 0 ;no additional lines
+
+ .db 8,6
+ .db 4,14,40h
+ .db 57
+ .db 1
+ .db 28,28,100,28
+
+ .db 99,5
+ .db 4,14,40h
+ .db 100
+ .db 2
+ .db 28,28,28,72
+ .db 100,28,100,72
+