%%HP: T(1)A(D)F(.);
 -40 CF RCLMENU 1
 m X
  
    WHILE X
    REPEAT TEXT
GROB 131 56 000000000000000000000000000000000000000000000000007000000000000000000000000000000000500000000000000000000000000000000FF3000000000000000000000000000000E00C30000000000000000000000000000C1000C100000000000000000000000000C300000E00000000000000000000000008300000007000000000000000000000000700000000870000000000000000000000F00000000008300000000000000000000E000000000000C1000000000000000000C10000000000000E10000000000000008F3000000000000000E7000000000000008EFFFFFFFFFFFFFFFFF50000000000000083000000000000000007000000000000004100000000000000000A000000000000002100000000000000000210000000000000110000000000000000022000000000000011087FD4ED33D7E9700220000000000008010C43D73D63D43DC00240000000000004010C43D73D43D43D000280000000000002010C7FD7FD43D7F9700201000000000001010C4FC43D43D331C00202000000000080010C4BD43D63D63DC00204000000000040010C43D43D3ED439700208000000000020010000000000000000020010000000001001E97E97FB7FB7E97E120020000000001001CC43DCCCCC033D43320020000000080001CC03D0CCCC033C43020040000000040001C87397CCFC033C7E120080000000020001C0431CCCCC033C40320001000000010001CC43DCCCCC033D43320002000000800001E97E97CCCC87ED4E120004000000400001000000000000000002000800000020000100000000000000000200001000001000010000000000000000020000200000100001000000000000000002000020000800000100000000600F0000020000400004000001000000007089100002000080008300008300008910608D100007000007008EFFFFF200008910608F10000DFFFFF5008300008300008910608B100007000007000100000100000F006C99100002000002008300008300000600FC1F00000700000700C70000C700000000000000008F00008F008200000100000000000000000200000200450000820000000000000000050000050000000001000000000000000002000002000000000000000000000000000000000000C8C0894D0C54D91480C9CCC1C994D5D5004551055514449404418455504445945400AAE48AEA062A4402E04AEE6064AA4A62006AA0AAAA02244802A04AAA2028AA442200165266550772770750265570776772770000000000000000000000000000800000000000000000000000000000000000000000
LCD # 21d # 8d
BLANK DUP DUP
"ABOUT" "(AN(L"
"OK" 6 LIST TMENU
-1 WAIT IP  T
      
        CASE T 14
==
          THEN
CLLCD TEXT
GROB 127 55 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000099299A1138331B39B331300018300008AABAAAAA1099A192198A182818200008BBABAAB3201A22931983282018200008BBABBBBB38BBB3939BBB383839300008AAAA9BAA18B1919293BA181839300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003230000000000000000000000000000055500000000000000000000000000008AA3100000000000000000000000000089A20000000000000000000000000000485900000000000000000000000000000000000000000000000000000000000006253071576012072337076257571000045550115210150255510115525110000AAB289821188309ABB1819A29A900008AAA288011288209AAA080AA2198000089551CD9CD1C518855D1CD19D9CD100000000000000000000000000200000000C59C5000000000000000000000000000CC59480000000000000000000000000044D94000000000000000000000000000C5DDD900000000000000000000000000C55DD9000000000000000000000000000000000000000000000000000000000080400800400000780480008800000000084C0881C84599888D0C49180894100084D4184144DC45B84584D598044D1000845518414454C47845845598044510008845D19D99448501991559119894100040000000000008F00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007000700062022053622606566203735017702773105020553551015315053550351025631252275547717154157717501662754064344075355606736201757000000030000000000000000000000000000000000000000000000000000000000000000000000E000000000000000000000000000000011377300000000000000000000000008C245540000000000000000000000000822255200000000000000000000000008C215510000000000000000000000000011777700000000000000000000000000E00000000000000000
LCD { "" "" "" ""
"" "OK" } TMENU -1
WAIT DROP
          END T 15
==
          THEN m
MENU KILL
          END T 16
==
          THEN 0
'X' STO { } TYPE
TVARS { }  LV L
            
"ARCHIVO" { {
"NUEVO" 0 } {
"ABRIR" 1 } } 1
CHOOSE
              IF 1
==
              THEN
IF 1 ==
THEN
  IF LV SIZE 0 
  THEN LV SIZE 1
SWAP
    FOR I LV I GET
STR DUP SIZE 1 -
DUP 3 - SWAP SUB
      IF ".ARM" ==
      THEN L LV I
GET + 'L' STO
      END
    NEXT
    IF L SIZE 0 ==
    THEN
"NO HAY ARCHIVOS"
MSGBOX { }
    ELSE "ABRIR:" L
1 CHOOSE
      IF 1 ==
      THEN EVAL
      ELSE { }
      END
    END
  ELSE
"NO HAY ARCHIVOS"
MSGBOX { }
  END
ELSE { }
END
              ELSE
m MENU KILL
              END 1
 Dat X1
              
WHILE X1
REPEAT
"ARMADURAS ISOSTATICAS"
{ { "NUDOS:"
"COORDENADAS DE NUDOS [X Y]"
3 } { "BARRAS:"
"CONECCIONES DE LAS BARRAS [NI NF]"
3 } { "CARGAS:"
"CARGAS EN LOS NUDOS [PX PY]"
3 } { "REACCIONES:"
"REACCIONES [#NUDO VX VY]"
3 } } { 1 0 } { }
Dat INFORM
  IF 1 ==
  THEN 'Dat' STO
"GUARDAR DATOS" { {
"SI" 1 } { "NO" 0 }
} 1 CHOOSE
    IF 1 ==
    THEN
      IF 1 ==
      THEN
"GUARDAR CON LA
EXTENCION .ARM"
".ARM" INPUT OBJ
Dat SWAP STO
      END
    END 0 'X1' STO
Dat EVAL CLLCD TEXT
"     Un momento..."
4 DISP  N B C R
     N SIZE EVAL B
SIZE EVAL DROP R
SIZE EVAL DROP 0 
n d b r A
       n d * b r +
2 LIST 0 CON 'A'
STO 1 b
        FOR I 'B(I,
1)' EVAL 'B(I,2)'
EVAL  NI NF
           1 d
            FOR K '
N(NF,K)' EVAL 'N(NI
,K)' EVAL -
            NEXT d
COL DUP ABS / OBJ
DROP 0 d 1 -
            FOR K
DUP 'A(NI*d-K,I)'
STO NEG 'A(NF*d-K,I
)' STO
            NEXT
          
        NEXT 1 r
        FOR I 1 1 d
+
          FOR J 'R(
I,J)' EVAL
          NEXT 1 d
+ ROLL  ND
           d COL
DUP ABS / OBJ DROP
0 d 1 -
            FOR K '
A(d*ND-K,b+I)' STO
            NEXT
          
        NEXT A "A"
TAG C OBJ DROP d
n * COL NEG "P"
TAG DUP2 SWAP /
"F" TAG m MENU -40
SF 1000 0.2 BEEP
      
    
  ELSE
"SALIR DEL PROGRAMA"
{ { "SI" 1 } { "NO"
0 } } 1 CHOOSE
    IF 1 ==
    THEN
      IF 1 ==
      THEN m MENU
KILL
      END
    END
  END
END
              
            
          END
        END
      
    END
  

