--- title: "Christmas Specials" type: "article" slug: "christmas-specials" url: "http://localhost/article/christmas-specials/" markdown_url: "http://localhost/article/christmas-specials.md" published_at: "2020-10-27T17:18:16+00:00" modified_at: "2026-06-21T23:37:16+00:00" featured_image: url: "http://localhost/wp-content/uploads/2022/04/20230809-041332.jpg" excerpt: "Here are two programs that give a moving graphics representation of the holiday spirit. The first version is for the 1000 series of computers and the second is for the TS-2068. In the 2068 version, the graphics characters are entered in the following manner - press SHIFT \"9\" to get into the graphics mode (remember…" category: - name: "Synchro-Sette" slug: "synchro-sette" taxonomy: "category" url: "http://localhost/category/periodicals/synchro-sette/" post_tag: - name: "1983" slug: "year-1983" taxonomy: "post_tag" url: "http://localhost/tag/year-1983/" - name: "Full Text" slug: "fulltext" taxonomy: "post_tag" url: "http://localhost/tag/fulltext/" - name: "TS 1000" slug: "ts1000" taxonomy: "post_tag" url: "http://localhost/tag/ts1000/" - name: "TS 2068" slug: "ts2068" taxonomy: "post_tag" url: "http://localhost/tag/ts2068/" - name: "Type-in program" slug: "type-in-program" taxonomy: "post_tag" url: "http://localhost/tag/type-in-program/" model: - name: "Timex/Sinclair 1000" slug: "ts-1000" taxonomy: "model" url: "http://localhost/model/ts-1000/" - name: "Timex/Sinclair 2068" slug: "ts-2068" taxonomy: "model" url: "http://localhost/model/ts-2068/" indiv: - name: "Gene G. Buza" slug: "gene-g-buza" taxonomy: "indiv" url: "http://localhost/indiv/gene-g-buza/" publication: "Synchro-Sette" publication_r: id: 10244 title: "Synchro-Sette" type: "periodical" url: "http://localhost/periodical/synchro-sette/" authors: "Gene G. Buza" volume: "2" issue: "11" issues_articles: - id: 26673 title: "Synchro-Sette v2 n11" type: "issue" url: "http://localhost/issue/synchro-sette-v2-n11/" pages: "6" pubdate: "December 1983" archive_link: false volumeissue: "v2n11" article_media: - id: 61883 title: "Christmas Special" type: "computer_media" url: "http://localhost/computer_media/christmas-special/" --- # Christmas Specials Here are two programs that give a moving graphics representation of the holiday spirit. The first version is for the 1000 series of computers and the second is for the TS-2068. In the 2068 version, the graphics characters are entered in the following manner – press SHIFT “9” to get into the graphics mode (remember to press SHIFT “9” again to exit from the mode when not being used). Then press the following keys to get the proper graphic’s character: Santa’s sleigh in the variable “a$” in line #1000 is represented by the “b” key. The reindeer in the same variable are represented by the “e” key and the connecting lines by the “c” key. Santa’s sleigh in the variable “b$” in line $1000 is represented by the “a” key. The reindeer in the same variable are represented by the “a” key and the connecting lines by the “c” key. The trees in line #2010 represented by the “f” key. are With a relatively small amount of programming lines, the 2068 version represents quite a sophisticated display. ## Source Code: Christmas Special ``` 5 LET sk=0: LET s=0: DIM c$(32) 10 POKE USR "e",BIN 00000101 20 POKE USR "e"+1,BIN 00000010 30 POKE USR "e"+2,BIN 00000010 40 POKE USR "e"+3,BIN 10000110 50 POKE USR "e"+4,BIN 11111111 60 POKE USR "e"+5,BIN 01111110 70 POKE USR "e"+6,BIN 01010101 80 POKE USR "e"+7,BIN 01010101 100 POKE USR "a",BIN 10100000 120 POKE USR "a"+1,BIN 01000000 130 POKE USR "a"+2,BIN 01000000 140 POKE USR "a"+3,BIN 01100001 150 POKE USR "a"+4,BIN 11111111 160 POKE USR "a"+5,BIN 01111110 180 POKE USR "a"+7,BIN 10101010 200 POKE USR "b",BIN 10100000 210 POKE USR "b"+1,BIN 10110001 220 POKE USR "b"+2,BIN 10110001 230 POKE USR "b"+3,BIN 11111110 240 POKE USR "b"+4,BIN 11111100 250 POKE USR "b"+5,BIN 01000100 270 POKE USR "b"+6,BIN 01000100 280 POKE USR "b"+7,BIN 11111110 300 POKE USR "c",BIN 00000000 310 POKE USR "c"+1,BIN 00000000 320 POKE USR "c"+2,BIN 00000000 330 POKE USR "c"+3,BIN 11111111 340 POKE USR "c"+4,BIN 00000000 350 POKE USR "c"+5,BIN 00000000 360 POKE USR "c"+6,BIN 00000000 370 POKE USR "c"+7,BIN 00000000 400 POKE USR "d",BIN 00000101 410 POKE USR "d"+1,BIN 10001101 420 POKE USR "d"+2,BIN 10001101 430 POKE USR "d"+3,BIN 01111111 440 POKE USR "d"+4,BIN 00111111 450 POKE USR "d"+5,BIN 00100010 460 POKE USR "d"+6,BIN 00100010 470 POKE USR "d"+7,BIN 01111111 500 POKE USR "f",BIN 00011000 510 POKE USR "f"+1,BIN 00011000 520 POKE USR "f"+2,BIN 00111100 530 POKE USR "f"+3,BIN 00111100 540 POKE USR "f"+4,BIN 01111110 550 POKE USR "f"+5,BIN 01111110 560 POKE USR "f"+6,BIN 00011000 570 POKE USR "f"+7,BIN 00011000 1000 LET a$=" \b\c\e\e\c\e\e\c\e\e\c\e\e ": LET b$=" \a\a\c\a\a\c\a\a\c\a\a\c\d " 1100 PAPER 0: BORDER 7: INK 7: CLS 2000 FOR n=1 TO 250: PRINT AT INT (22*RND),INT (32*RND);".": NEXT n 2010 INK 4: FOR n=1 TO 50: PRINT AT INT (RND*10)+8,INT (RND*21);"\f": NEXT n: PRINT AT 9,25;"\f";AT 13,27;"\f" 3000 INK 7: PLOT 0,10: DRAW 255,10: PLOT 0,20: DRAW 255,10 3010 PLOT 193,35: DRAW 30,0: DRAW 0,15: DRAW -15,10: DRAW -15,-10: DRAW 0,-15 3020 DRAW -20,30: DRAW 0,15: DRAW 20,-30 3030 PLOT 173,80: DRAW 15,10: DRAW 20,-30 3040 PLOT 189,90: DRAW 15,-10: DRAW 20,-30 3050 PLOT 184,88: DRAW 0,8: DRAW 8,0: DRAW 0,-8 3060 PLOT 180,84: DRAW 0,18: DRAW 5,-6 3070 PLOT 180,102: DRAW 8,0: DRAW 4,-6 3075 REM go to 3200 3090 FOR n=195 TO 221: FOR i=35 TO 49 3100 IF n>210 AND n<216 AND i<44 AND i>37 THEN GO TO 3120 3110 PLOT n,i 3120 NEXT i: NEXT n 3130 LET a=50: FOR n=196 TO 208: FOR i=50 TO a 3150 PLOT n,i 3160 NEXT i: LET a=a+.7: NEXT n 3170 LET a=58: FOR n=208 TO 220: FOR i=a TO 49 STEP -1 3180 PLOT n,i 3190 NEXT i: LET a=a-.7: NEXT n 3200 FOR j=1 TO 2: LET i=52: FOR n=194 TO 176 STEP -1 3210 PLOT n,1: DRAW 12,10 3220 LET i=i+1.5: NEXT n 3230 LET i=59: FOR n=209 TO 189 STEP -1 3240 PLOT n,i: DRAW 15,-8 3250 LET i=i+1.5: NEXT n 3260 NEXT j 3270 PLOT 192,38: LET a=38: FOR n=192 TO 173 STEP -1: PLOT n,a: DRAW 0,10: LET a=a+1.5: NEXT n 3300 FOR n=i TO 64 3310 PRINT AT 3,0;a$( TO 32) 3320 LET a$=a$(64)+a$( TO 63) 3330 PAUSE 20: NEXT n 3335 GO SUB 4000 3340 FOR n=1 TO 64 3350 PRINT AT 6,0;b$( TO 32) 3360 IF LEN b$>1 THEN LET b$=b$(2 TO LEN b$)+b$(1) 3370 PAUSE 10: NEXT n 3380 GO SUB 4000 3999 GO TO 3300 4000 GO SUB 4005: GO SUB 4050: GO SUB 4005: GO TO 5100 4005 GO SUB 5050: PAUSE 20: GO SUB 5050: PAUSE 20 4010 BEEP .25,10: BEEP .25,13: BEEP .27,6: BEEP .25,8: BEEP .75,10: PAUSE 30 4030 BEEP .25,11: BEEP .25,11: BEEP .25,11: BEEP .1,11: BEEP .1,11: BEEP .25,11: BEEP .25,10: BEEP .25,10 4040 BEEP .1,10: BEEP .1,10: BEEP .25,10 4045 RETURN 4050 BEEP .25,8: BEEP .25,8: BEEP .25,10: BEEP .5,8: BEEP .5,13 4055 RETURN 4999 STOP 5050 FOR n=1 TO 3: BEEP .25,10: NEXT n: RETURN 5100 BEEP .25,13: BEEP .25,11: BEEP .25,8: BEEP 1,6 5110 PAUSE 50: RETURN ```