!*************************** AMUS Program Label ****************************** ! Filename: XMAS2.BAS Date: 12/13/90 ! Category: GRAP Hash Code: 242-370-241-504 Version: 1.0(1) ! Initials: ARCH/US Name: STEVE ARCHULETA ! Company: ALPHA MICRO USERS SOCIETY Telephone #: 3034496917 ! Related Files: XMAS2.SCR ! Min. Op. Sys.: Expertise Level: BEG ! Special: ! Description: Christmas terminal display. Best when run at 9600 baud or ! greater. ! !***************************************************************************** MAP1 SCR'ARRAY(24),S,80 MAP1 ROW,F MAP1 COL,F MAP1 FLASH,F MAP1 TIM,F MAP1 BLOCKS,F LOOKUP "XMAS2.SCR",BLOCKS IF BLOCKS = 0 THEN & PRINT "oops, you need a file named XMAS2.SCR for this program to work" :& GOTO EXIT OPEN #1,"XMAS2.SCR",INPUT ! picture file INPUT LINE #1,SCR'ARRAY(23) ! throw away line FOR ROW = 23 TO 1 STEP -2 ! load slightly INPUT LINE #1, SCR'ARRAY(ROW) ! scrambled screen NEXT ROW FOR ROW = 24 TO 2 STEP -2 INPUT LINE #1, SCR'ARRAY(ROW) NEXT ROW PRINT TAB(-1,29); ! turn cursor off PRINT TAB(-1,0); ! clear screen PRINT TAB(12,1); ! position cursor FOR ROW = 12 TO 23 ! display bottom portion PRINT SCR'ARRAY(ROW) NEXT ROW PRINT SCR'ARRAY(ROW); ! keep screen from scrolling FOR COL = 2 TO 74 STEP 2 ! move santa across screen PRINT TAB(1,1); FOR ROW = 1 TO 10 PRINT RIGHT(SCR'ARRAY(ROW),COL) NEXT ROW NEXT COL FOR FLASH = 1 TO 4 ! flash stuff on screen PRINT TAB(2,17) " "; PRINT TAB(3,19) " "; PRINT TAB(4,21) " "; PRINT TAB(5,74) " "; CALL DELAY PRINT TAB(2,17) "Ho"; PRINT TAB(3,19) "Ho"; PRINT TAB(4,21) "Ho"; PRINT TAB(5,74) "o"; CALL DELAY NEXT FLASH PRINT TAB(13,2) "** MERRY CHRISTMAS FROM AMUS! **"; ! clean up CALL DELAY CALL DELAY CALL DELAY CALL DELAY CALL DELAY PRINT TAB(24,1) "What do you mean that doesn't look like Santa?! "; PRINT TAB(-1,28); ! turn cursor on CLOSE #1 EXIT: END DELAY: ! provide time delay FOR TIM = 1 TO 5000 : NEXT TIM RETURN