;GPRIMS taken from TP01_all_macros.txt ;GPRIMS 4/10/76 ; Primitives updated from 61.pdf "Blue tape" 12/8/77 PRIM ' 1, PRIM = 2, PRIM OR 3, PRIM AND 4, PRIM NOT 5 PRIM LT 6, PRIM LE 7, PRIM EQ 8, PRIM NE 9, PRIM GE 10, PRIM GT 11 PRIM + 12, PRIM - 13, PRIM * 14, PRIM / 15, PRIM EXP 16 ;new value for TYPE PRIM TYPE 17 PRIM $ 20 PRIM GO 21, PRIM AV 22, PRIM @ 23, PRIM CY 24, PRIM FNTH 25 PRIM FIND 26, PRIM RP 27, PRIM : 28, PRIM NEW 29, PRIM OLD 30 ;PRIM IF 31, PRIM TYPE 32, PRIM IF 32 PRIM ABUG 33, PRIM ITMS 34, PRIM GRPS 35 PRIM LNS 36, PRIM RHA 37, PRIM LINA 38, PRIM CLA 39 PRIM READ 40 ;PRIM GRIN 42, PRIM AIN 43 ;PRIM LEFT 46, PRIM GARB 47 PRIM GRIN 41 PRIM AIN 42 PRIM PROT 43 PRIM LOCAL 44 PRIM DIR 45 PRIM SS 47 PRIM LEFT 48 PRIM GARB 49 PRIM % 50 ; new SRC PRIM SRC 51 PRIM DEST 52, ; APTO and CRF not in this version ;PRIM APTO 53, PRIM CRF 54 ; RES not in this version ;PRIM RES 55, PRIM SAVE 56, PRIM NAME 57 ;, PRIM SS 58 ;new PRIM ALFA 58 PRIM OP 60, PRIM NUTR 61, PRIM DNTR 62, PRIM UPTR 63, PRIM FIG 64 PRIM MOVE 65, PRIM SCALE 66, PRIM ROT 67, PRIM ROTX 68, PRIM ROTY 69 ;PRIM UNITY 71,PRIM LIN 72 PRIM UNITY 70, PRIM LIN 71, PRIM HARM 72 ;new PRIM ARC0 73, PRIM TREE 74, PRIM SETCOL 75 PRIM COLR 77, PRIM FAD0 78, PRIM LEVEL 79 ;PRIM ARC0 78, PRIM TREE 79, PRIM PERSP 80, PRIM EXIT 90, PRIM EXTR 91 PRIM STOP 100 ; user defined primitives, start group, end group used at start,end frame PRIM SG 101 PRIM EG 102 :NL<<^>>, :PRINT<##(OP)>, PRINT"PRIMITIVES LOADED" ; then has PROT(DIR) not sure what that does, omitted ;PROT(DIR) ; added DFLT and ARG1 from TP01_all movier :DFLT[:#1(ARG1#2(@#1 CY 1)0)] :ARG1<#1> ;VIEWER 2/9/77 from 61.pdf )"WAIT FOR VIEWER TO LOAD"(OP ;OLD((CSYS)),:CSYS VIEWER ;:VIEWER VIEWER PICTURE PIC ADPIC DEPIC ANIM CH THEN HOLD AFTER AFTALL( ; )END NEWQ SSQ EXFR ESEQ RSTQ VIEW VU0 NFR SEC MSEC F B T :PICTURE[:TRTP#1] :PIC[DNTR,##,UPTR] :ABT[:II 0, @-1 1,MOVE(ABT0),(CY 7),MOVE($(-II))] :ABT0[-(CY 1),'II=II+1,GO((AV 1 TYPE)EQ 1)ABT0] :ANIM[:ANM0[SSQ#0>#1(SFNO,CEFN#2##)<]] :SSQ[#2##(FNO),EXIT(#4 GT FNO),RP(RHA(@#1 FIND(SS 4))),UNITY] :CEFN[+EFNO=SFNO+(NFR##),EXIT(+EFNO LE FFNO),'FFNO=EFNO] :CH[IF(RHA(@#1 FIND(SS 4)))[@(RHA)],:#1(CY "ZZ", CY ANM0)#2##] :THEN[:SFNO(EFNO),GO NEWQ] :AFTER[:SFNO((NFR##)+SFNO),GO NEWQ] :AFTALL[:SFNO(FFNO),GO NEWQ] :OFF [NEW #1, @OLST :0 #1, PRIM #1 46] :ON [OLD(@(@OLST FIND #1) CY I), :I] :OLST :FADE (NEW #1 (FAD1 #1 (CEFN##) OFF0 (EFNO) -), @OLST :0 #1) :MIXON [EXIT(@(@OLST FIND #1),NOT TYPE) OLD#1, NEW#1(FAD1 #1 (CEFN##) ON0 (-SFNO) +)] :FAD1 <[GO( >#2< LE FNO) >#3<]( CY#1) [FAD0( >#4#5< FNO) >(+EFNO-SFNO)< ]> :OFF0[PRI #0 46] :ON0[ON #0, GO #0] :HOLD['SFNO=FFNO-1,NEWQ,'SFNO=FFNO+(NFR##),'EFNO=SFNO IF(+FNO LT SFNO)['FNO=SFNO],GO NEWQ] :NEWQ[IF(+SFNO GT FFNO)['FFNO=SFNO],EXIT(+FNO GE SFNO,BCK) EXFR,GO QLOG] :EXFR[SG(FNO),NUTR,PIC(TRTP),EXTR(FR),EG,NFNO,GO(+FNO LE SFNO)EXFR] :FILM[NEW NFNO['FNO=(+LFNO=FNO)+FREP],RSOL :FNO 2,SEQ0##,RSOL,OLD NFNO] :FREP 2 :VIEW[:FNO 0,:FNO(NFR(READ"?")),GO VU0] :VU0[RSOL,OFF QLOG,:QLOG,OFF FR,SEQ0##,GO(-BCK)VU0 PRINT"SEQUENCE ENDS AT FRAME "(FFNO),GO VIEW] :RSOL[OLD(OLST),:OLST] :SEQ0[:BCK,:SFNO 0,:EFNO 0,:FFNO 0,:LFNO 0,##,END] :END['SFNO=FFNO,GO NEWQ] :NFNO[PRINT" "(NL)"FRAME "(FNO) :BCK(IF((FNO)GT(+FNO=(NFR(READ"?"))))2) EXIT(0 LE FNO),:FNO 1] :FR[+FNO-LFNO] :NFR[(1+FNO,#2#1)+(#4#3)] :SEC[#1*25] :MSEC[#1/40] :F[#1+FNO] :B[+FNO-#1] :T[NEW EXFR[OLD EXFR,EXIT "ZZ"]] :QLOG[PRINT(FNO)#0##] ;)"LOADED"(OP,SRC 0,VIEW )"LOADED"(OP PRINT"STACK LEFT "(LEFT) :FLY[PICTURE BFLIES : A2 0,: A3 0,: A4 0 : FLAP 0,: AWAY 0 0 AFTER 2 ANIM LIN 5 CH A2 -90 ANIM LIN 5 CH A3 -180 ANIM LIN 5 CH A4 -270 HOLD 1 ANIM LIN 5 CH FLAP 90 THEN ANIM LIN 5 CH AWAY 0 4000 ANIM LIN 5 CH FLAP 0 THEN ANIM LIN 5 CH FLAP 90 THEN ANIM LIN 5 CH FLAP 0 THEN HOLD 1 ] :BFLIES[PIC BFLY 0 PIC BFLY A2 PIC BFLY A3 PIC BFLY A4 ] :BFLY[FIG BODY 0 PIC LWING PIC RWING MOVE(AWAY) ROT(#1) ] :LWING[PIC RWING SCALE -100 100 ] :RWING[FIG WING ROTY(FLAP) ] )FLY" LOADED"(OP : BODY 33!60 430 170 180 240 -240 240 -770 180 -1220 ( ) 70 -1480 0 -1520 -70 -1480 -180 -1220 -240 -770 ( ) -240 -240 -170 180 -60 430 -240 460 -370 570 ( ) -410 660 -400 760 -360 850 -270 920 -160 970 ( ) -460 1950 -160 970 -40 990 40 990 160 970 ( ) 460 1950 160 970 270 920 360 850 400 760 ( ) 410 660 370 570 240 460 )BODY" LOADED("OP : WING 33!208 32 624 592 800 976 1040 1360 ( ) 1216 1568 1488 1792 1568 1184 1504 960 ( ) 2256 1280 2640 1344 2896 1296 2608 464 ( ) 1952 -206 2256 -480 2352 -704 2320 -1024 ( ) 2256 -1456 1600 -1568 1248 -1408 896 -928 ( ) 1168 -1616 1216 -1968 1136 -2112 944 -2048 ( ) 640 -1760 720 -2448 688 -2704 624 -2816 ( ) 512 -2448 416 -2064 304 -1424 256 -768 ( ) 256 -352 )WING" LOADED"(OP VIEW FLY 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 T STOP