- LRHYLRX ;DALOI/HOAK - Playing inside the BOX ;8/28/2005
- ;;5.2;LAB SERVICE;**405**;Sep 27, 1994;Build 93
- ;
- ;
- W @IOF F V=2:2:20 S XX="TXT"_V D @XX D LRBOX(10,V,V,60,TXT)
- Q
- ;
- ;
- LRBOX(X,Y,SIDE,LRHYHZ,TXT) ;This sub routine will draw a box on a VT100 terminal
- N LRHYI
- K DX,DY
- ;X and Y are the 1st coord.
- ;SIDE is the length vertical leg
- ;LRHYHZ is the length of the horozontal leg
- ;TXT is what you put in the box
- D GSET^%ZISS W IOG1
- S DY=Y,DX=X D XY
- W IOTLC
- F LRHYI=1:1:LRHYHZ W IOHL
- W IOTRC
- S DY=Y+1,DX=X D XY F LRHYI=1:1:SIDE W IOVL S DY=DY+1 D XY
- S DY=Y+1,DX=LRHYHZ+X+1 D XY F LRHYI=1:1:SIDE W IOVL S DY=DY+1 D XY
- S DY=Y+SIDE+1,DX=X D XY
- W IOBLC F LRHYI=2:1:LRHYHZ+1 W IOHL
- W IOBRC
- W IOG0 D GKILL^%ZISS
- Q
- XY ;
- X IOXY
- Q
- LRGLIN ;
- N LRHYHZ
- D GSET^%ZISS W IOG1
- F LRHYHZ=1:1:79 W IOHL
- W !,IOG0 D GKILL^%ZISS
- Q
- --- Routine Detail --- with STRUCTURED ROUTINE LISTING ---[H[J[2J[HLRHYLRX 871 printed Feb 18, 2025@23:41:14 Page 2
- LRHYLRX ;DALOI/HOAK - Playing inside the BOX ;8/28/2005
- +1 ;;5.2;LAB SERVICE;**405**;Sep 27, 1994;Build 93
- +2 ;
- +3 ;
- +4 WRITE @IOF
- FOR V=2:2:20
- SET XX="TXT"_V
- DO @XX
- DO LRBOX(10,V,V,60,TXT)
- +5 QUIT
- +6 ;
- +7 ;
- LRBOX(X,Y,SIDE,LRHYHZ,TXT) ;This sub routine will draw a box on a VT100 terminal
- +1 NEW LRHYI
- +2 KILL DX,DY
- +3 ;X and Y are the 1st coord.
- +4 ;SIDE is the length vertical leg
- +5 ;LRHYHZ is the length of the horozontal leg
- +6 ;TXT is what you put in the box
- +7 DO GSET^%ZISS
- WRITE IOG1
- +8 SET DY=Y
- SET DX=X
- DO XY
- +9 WRITE IOTLC
- +10 FOR LRHYI=1:1:LRHYHZ
- WRITE IOHL
- +11 WRITE IOTRC
- +12 SET DY=Y+1
- SET DX=X
- DO XY
- FOR LRHYI=1:1:SIDE
- WRITE IOVL
- SET DY=DY+1
- DO XY
- +13 SET DY=Y+1
- SET DX=LRHYHZ+X+1
- DO XY
- FOR LRHYI=1:1:SIDE
- WRITE IOVL
- SET DY=DY+1
- DO XY
- +14 SET DY=Y+SIDE+1
- SET DX=X
- DO XY
- +15 WRITE IOBLC
- FOR LRHYI=2:1:LRHYHZ+1
- WRITE IOHL
- +16 WRITE IOBRC
- +17 WRITE IOG0
- DO GKILL^%ZISS
- +18 QUIT
- XY ;
- +1 XECUTE IOXY
- +2 QUIT
- LRGLIN ;
- +1 NEW LRHYHZ
- +2 DO GSET^%ZISS
- WRITE IOG1
- +3 FOR LRHYHZ=1:1:79
- WRITE IOHL
- +4 WRITE !,IOG0
- DO GKILL^%ZISS
- +5 QUIT