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,23*HORIZ,URCOR,3*SPACE,ULCOR,23*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,VERT,3*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,VERT / DATA LN03 / VERT,EGZCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,ULCOR,12*HORIZ, URCOR,DOTCHR,VERT,3*SPACE,VERT,DOTCHR,ULCOR,12*HORIZ,URCOR,DOTCHR, ULCOR,4*HORIZ,URCOR,EGZCHR,VERT / DATA LN04 / VERT,DOTCHR,LLCOR,4*HORIZ,LRCOR,DOTCHR,LLCOR,12*HORIZ, LRCOR,DOTCHR,LLCOR,3*HORIZ,LRCOR,DOTCHR,LLCOR,12*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,VERT / DATA LN06 / VERT,DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR,ULCOR,4*HORIZ, URCOR,DOTCHR,TRIGHT,8*HORIZ,TDOWN,HORIZ,TDOWN,8*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, SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, VERT,SPACE,VERT,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,8*HORIZ,TLEFT,DOTCHR,LLCOR,HORIZ,LRCOR,DOTCHR, TRIGHT,8*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,VERT,4*SPACE,VERT,DOTCHR,ULCOR,6*HORIZ,TLEFT / DATA LN10 / LLCOR,6*HORIZ,LRCOR,DOTCHR,LLCOR,4*HORIZ,LRCOR,DOTCHR, ULCOR,8*HORIZ,3*DOOR,8*HORIZ,URCOR,DOTCHR,LLCOR,4*HORIZ,LRCOR, DOTCHR,LLCOR,6*HORIZ,LRCOR / DATA LN11 / 7*TUNCHR,2*SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,VERT,19*SPACE,VERT,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,2*SPACE,7*TUNCHR / DATA LN12 / ULCOR,6*HORIZ,URCOR,DOTCHR,ULCOR,4*HORIZ,URCOR,DOTCHR, LLCOR,19*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,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,8*HORIZ,TDOWN,HORIZ,TDOWN, 8*HORIZ,TLEFT,DOTCHR,LLCOR,4*HORIZ,LRCOR,SPACE,DOTCHR,SPACE,DOTCHR, SPACE,DOTCHR,SPACE,DOTCHR,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,VERT,SPACE,VERT,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, 13*HORIZ,URCOR,DOTCHR,VERT,SPACE,VERT,DOTCHR,ULCOR,13*HORIZ,URCOR, DOTCHR,VERT,SPACE,ULCOR,2*HORIZ,LRCOR,DOTCHR,VERT / DATA LN17 / VERT,EGZCHR,SPACE,DOTCHR,SPACE,VERT,SPACE,VERT,DOTCHR, LLCOR,13*HORIZ,LRCOR,DOTCHR,LLCOR,HORIZ,LRCOR,DOTCHR,LLCOR,13*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,3*SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,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,8*HORIZ,TDOWN,HORIZ,TDOWN, 8*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,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,VERT,SPACE,VERT,DOTCHR,SPACE,DOTCHR,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,VERT,4*SPACE,VERT,SPACE, DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,SPACE,DOTCHR,VERT / DATA LN21 / VERT,DOTCHR,ULCOR,6*HORIZ,LRCOR,4*SPACE,LLCOR,8*HORIZ, URCOR,DOTCHR,VERT,SPACE,VERT,DOTCHR,ULCOR,8*HORIZ,LRCOR,4*SPACE, LLCOR,6*HORIZ,URCOR,DOTCHR,VERT / DATA LN22 / VERT,DOTCHR,LLCOR,20*HORIZ,LRCOR,DOTCHR,LLCOR,HORIZ, LRCOR,DOTCHR,LLCOR,20*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,VERT / DATA LN24 / LLCOR,51*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 = 26 #START OUT FROM PRISON INIROW = 18 #PACMAN STARTING LOCATION INICOL = 27 LPRISR = 11 #LEFTY STARTING LOCATION LPRISC = 26 CPRISR = 11 #CURLY STARTING LOCATION CPRISC = 28 FPRISR = 11 #FLUFFY STARTING LOCATION FPRISC = 24 NPRISR = 11 #NELLIE STARTING LOCATION NPRISC = 30 FRUROW = 13 #FRUIT LOCATION FRUCOL = 27 RETURN 100 FORMAT (62A1) END