SUBROUTINE MAZDRW IMPLICIT INTEGER (A-Z) # # THIS SUBROUTINE DRAWS THE INITIAL PACMAN MAZE (BOARD) ON THE VT100 # INCLUDE/NL SY:UVT100.DAT INCLUDE/NL SY:PACMAN.CMN BYTE MAZE(CMAR,RMAR) EQUIVALENCE (MAZE,LN01) DATA LN01 / ULCOR,25*HORIZ,URCOR,4*SPACE,ULCOR,25*HORIZ,URCOR/ DATA LN02 / VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,VERT, 4*SPACE,VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,VERT / DATA LN03 / VERT,EGZCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,ULCOR,14*HORIZ, URCOR,DOTCHR,VERT,4*SPACE,VERT,DOTCHR,ULCOR,14*HORIZ,URCOR,DOTCHR, ULCOR,4*HORIZ,URCOR,EGZCHR,VERT / DATA LN04 / VERT,DOTCHR,LLCOR,4*HORIZ,LRCOR,DOTCHR,LLCOR,14*HORIZ, LRCOR,DOTCHR,LLCOR,4*HORIZ,LRCOR,DOTCHR,LLCOR,14*HORIZ,LRCOR,DOTCHR, LLCOR,4*HORIZ,LRCOR,DOTCHR,VERT / DATA LN05 / VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,VERT / DATA LN06 / VERT,DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,ULCOR,4*HORIZ, URCOR,DOTCHR,TRIGHT,10*HORIZ,TDOWN,2*HORIZ,TDOWN,10*HORIZ,TLEFT, DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,VERT / DATA LN07 / VERT,DOTCHR,LLCOR,4*HORIZ,LRCOR,DOTCHR,VERT,4*SPACE,VERT, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,VERT,2*SPACE,VERT,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,VERT,4*SPACE,VERT,DOTCHR,LLCOR,4*HORIZ,LRCOR,DOTCHR,VERT / DATA LN08 / VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, VERT,4*SPACE,TRIGHT,10*HORIZ,TLEFT,DOTCHR,LLCOR,2*HORIZ,LRCOR, DOTCHR,TRIGHT,10*HORIZ,TLEFT,4*SPACE,VERT,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,SPACE,DOTCHR,VERT / DATA LN09 / TRIGHT,6*HORIZ,URCOR,DOTCHR,VERT,4*SPACE,VERT, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,VERT,4*SPACE,VERT,DOTCHR,ULCOR,6*HORIZ,TLEFT / DATA LN10 / LLCOR,6*HORIZ,LRCOR,DOTCHR,LLCOR,4*HORIZ,LRCOR,DOTCHR, ULCOR,10*HORIZ,4*DOOR,10*HORIZ,URCOR,DOTCHR,LLCOR,4*HORIZ,LRCOR, DOTCHR,LLCOR,6*HORIZ,LRCOR / DATA LN11 / 7*TUNCHR,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,VERT,24*SPACE,VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,SPACE,DOTCHR,7*TUNCHR / DATA LN12 / ULCOR,6*HORIZ,URCOR,DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR, LLCOR,24*HORIZ,LRCOR,DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,ULCOR, 6*HORIZ,URCOR / DATA LN13 / TRIGHT,6*HORIZ,LRCOR,DOTCHR,VERT,4*SPACE,VERT,DOTCHR, SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,VERT,4*SPACE,VERT,DOTCHR,LLCOR,6*HORIZ,TLEFT / DATA LN14 / VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, LLCOR,4*HORIZ,LRCOR,DOTCHR,TRIGHT,10*HORIZ,TDOWN,2*HORIZ,TDOWN, 10*HORIZ,TLEFT,DOTCHR,LLCOR,4*HORIZ,LRCOR,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,VERT / DATA LN15 / VERT,DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,VERT,2*SPACE,VERT, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,VERT / DATA LN16 / VERT,DOTCHR,LLCOR,2*HORIZ,URCOR,SPACE,VERT,DOTCHR,ULCOR, 15*HORIZ,URCOR,DOTCHR,VERT,2*SPACE,VERT,DOTCHR,ULCOR,15*HORIZ,URCOR, DOTCHR,VERT,SPACE,ULCOR,2*HORIZ,LRCOR,DOTCHR,VERT / DATA LN17 / VERT,EGZCHR,SPACE,DOTCHR,SPACE,VERT,SPACE,VERT,DOTCHR, LLCOR,15*HORIZ,LRCOR,DOTCHR,LLCOR,2*HORIZ,LRCOR,DOTCHR,LLCOR, 15*HORIZ,LRCOR,DOTCHR,VERT,SPACE,VERT,SPACE,DOTCHR,SPACE,EGZCHR, VERT / DATA LN18 / LLCOR,2*HORIZ,URCOR,DOTCHR,VERT,SPACE,VERT,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,VERT,SPACE,VERT,DOTCHR,ULCOR,HORIZ,HORIZ, LRCOR / DATA LN19 / ULCOR,HORIZ,HORIZ,LRCOR,DOTCHR,LLCOR,HORIZ,LRCOR,DOTCHR, ULCOR,4*HORIZ,URCOR,DOTCHR,TRIGHT,10*HORIZ,TDOWN,2*HORIZ,TDOWN, 10*HORIZ,TLEFT,DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,LLCOR,HORIZ,LRCOR, DOTCHR,LLCOR,HORIZ,HORIZ,URCOR / DATA LN20 / VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, VERT,4*SPACE,VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,SPACE,DOTCHR,SPACE,VERT,2*SPACE,VERT, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,VERT,4*SPACE,VERT,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,SPACE,DOTCHR,SPACE,VERT / DATA LN21 / VERT,DOTCHR,ULCOR,6*HORIZ,LRCOR,4*SPACE,LLCOR,10*HORIZ, URCOR,DOTCHR,VERT,2*SPACE,VERT,DOTCHR,ULCOR,10*HORIZ,LRCOR,4*SPACE, LLCOR,6*HORIZ,URCOR,DOTCHR,VERT / DATA LN22 / VERT,DOTCHR,LLCOR,22*HORIZ,LRCOR,DOTCHR,LLCOR,2*HORIZ, LRCOR,DOTCHR,LLCOR,22*HORIZ,LRCOR,DOTCHR,VERT / DATA LN23 / VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,VERT / DATA LN24 / LLCOR,56*HORIZ,LRCOR / # # DRAW MAZE AND SET STARTING LOCATION COORDINATES # CALL UVT100(ED,2) #ERASE SCREEN DO I = 1,RMAR [ #DRAW MAZE CALL UVT100(CUP,I,1) WRITE (5,100) (MAZE(J,I),J=1,CMAR) ] RDOOR = 9 #LOCATION WHERE MONSTERS CDOOR = 29 #START OUT FROM PRISON INIROW = 18 #PACMAN STARTING LOCATION INICOL = 30 LPRISR = 11 #LEFTY STARTING LOCATION LPRISC = 29 CPRISR = 11 #CURLY STARTING LOCATION CPRISC = 31 FPRISR = 11 #FLUFFY STARTING LOCATION FPRISC = 27 NPRISR = 11 #NELLIE STARTING LOCATION NPRISC = 33 FRUROW = 13 #FRUIT LOCATION FRUCOL = 29 RETURN 100 FORMAT (62A1) END