--- title: "Bulletin Board (January 1984)" id: 72027 type: "computer_media" slug: "bulletin-board-january-1984" url: "http://localhost/computer_media/bulletin-board-january-1984/" markdown_url: "http://localhost/computer_media/bulletin-board-january-1984.md" published_at: "2026-10-20T14:07:42+00:00" modified_at: "2026-10-20T14:16:10+00:00" author: "David Anderson" featured_image: url: "http://localhost/wp-content/uploads/2026/10/7_BULLETIN.png" excerpt: "The Synchro-Sette newsletter on screen: two scrolling message windows carry January 1984 Timex industry news, a Pixie ad and a closing gag." category: - name: "Archived Media" slug: "archived-media" taxonomy: "category" url: "http://localhost/category/archived-media/" post_tag: - name: "Downloadable" slug: "downloadable" taxonomy: "post_tag" url: "http://localhost/tag/downloadable/" - name: "TS 1000" slug: "ts1000" taxonomy: "post_tag" url: "http://localhost/tag/ts1000/" model: - name: "Timex/Sinclair 1000" slug: "ts-1000" taxonomy: "model" url: "http://localhost/model/ts-1000/" indiv: - name: "Gene G. Buza" slug: "gene-g-buza" taxonomy: "indiv" url: "http://localhost/indiv/gene-g-buza/" genre: - name: "Banner" slug: "banner" taxonomy: "genre" url: "http://localhost/type/banner/" media_contents: - id: 72029 title: "Synchro-Sette January 1984" type: "computer_media" url: "http://localhost/computer_media/synchro-sette-january-1984/" media_type: "Program" programmers: - name: "Gene G. Buza" slug: "gene-g-buza" taxonomy: "indiv" url: "http://localhost/indiv/gene-g-buza/" mediadate: "1984" images: - url: "http://localhost/wp-content/uploads/2026/10/7_BULLETIN.png" media_type_tags: "Banner" --- # Bulletin Board (January 1984) A scrolling news display for the January 1984 issue. A framed title panel sits between two one-line windows, and each window scrolls its own message across the screen in turn. Pressing `P` pauses the scroll, `B` runs it backward and `F` forward again. The messages are stored in string variables saved with the program. The first reports that Timex is building the TS-2068 in small numbers to keep its price up, that another TS-1500 production run is planned for early 1984, and that TS-1000s with a 16K RAM pack are being cleared through a national distributor for about $30. It also mentions printers, microdrives and modems that Timex had announced but not yet shipped. The second advertises Pixie, a hi-res graphics product for the 2068, offers back issues of Synchro-Sette from 10/82 at $8.00 for two issues with cassette, and ends with a short joke news item. *** ## Program Analysis ### Program Structure Lines 100–140 print three stored block-graphic strings down the screen, then lines 150–260 draw the outer frame, the title panel and the two message boxes. Two scrolling loops alternate between the windows: 3000–3090 show the top message `A$` on row 3 and 3100–3190 show the bottom message `B$` on row 18. Each loop prints a 28-character slice `A$(N TO N+27)` and moves `N` on by one each pass. The reverse routines at 3200 and 3300 step `N` back toward 1. ### Notable Techniques - The program is started with `GOTO 100` (line 9999) instead of `RUN`, so the message strings in the saved variables are not cleared. - Each message starts and ends with a long run of spaces, so the text scrolls in from the right edge of the window and off the left. ### Potential Issues - The loops stop at `LEN A$-32` while each slice is only 28 characters wide, so the last four characters are never shown. Because the messages end in spaces, nothing is lost. ## Source Code ``` 100 FOR N=0 TO 17 110 PRINT AT N,2;S$;AT N,0;U$ 120 PRINT AT N,6;T$;AT N,0;U$ 130 PRINT AT N,5;V$;AT N,0;U$ 140 NEXT N 150 FOR N=1 TO 30 160 PRINT AT 0,N;"▀";AT 21,N;"▄" 170 NEXT N 180 FOR N=1 TO 20 190 PRINT AT N,0;"▌";AT N,31;"▐" 200 NEXT N 210 PRINT AT 0,0;"▛";AT 0,31;"▜";AT 21,0;"▙";AT 21,31;"▟" 220 PRINT AT 9,6;"▌[T][H][E]█[S][Y][N][C][H][R][O][-][S][E][T][T][E]▐";AT 10,6;"▌█[B][U][L][L][E][T][I][N]██[B][O][A][R][D]█▐" 230 PRINT AT 11,6;"▌ FOR ▐";AT 12,6;"▌ [J][A][N][U][A][R][Y][,]█[1][9][8][4] ▐" 240 PRINT AT 8,6;"▛▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▜";AT 13,6;"▙▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▟" 250 PRINT AT 2,1;"▛▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▜";AT 3,1;"▌";AT 3,30;"▐";AT 4,1;"▙▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▟" 260 PRINT AT 17,1;"▛▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▜";AT 18,1;"▌";AT 18,30;"▐";AT 19,1;"▙▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▟" 270 GOTO 3100 3000 LET A=1 3005 FOR N=A TO LEN A$-32 3010 PRINT AT 3,2;A$(N TO N+27) 3020 IF INKEY$ ="P" THEN PAUSE 40000 3030 IF INKEY$ ="B" THEN GOTO 3200 3090 NEXT N 3100 LET A=1 3105 FOR N=A TO LEN B$-32 3110 PRINT AT 18,2;B$(N TO N+27) 3120 IF INKEY$ ="P" THEN PAUSE 40000 3130 IF INKEY$ ="B" THEN GOTO 3300 3190 NEXT N 3199 GOTO 3000 3200 LET A=N 3210 FOR N=A TO 1 STEP -1 3220 PRINT AT 3,2;A$(N TO N+27) 3230 IF INKEY$ ="P" THEN PAUSE 40000 3240 IF INKEY$ ="F" THEN GOTO 3270 3250 NEXT N 3260 GOTO 3000 3270 LET A=N 3299 GOTO 3005 3300 LET A=N 3310 FOR N=A TO 1 STEP -1 3320 PRINT AT 18,2;B$(N TO N+27) 3330 IF INKEY$ ="P" THEN PAUSE 40000 3340 IF INKEY$ ="F" THEN GOTO 3370 3350 NEXT N 3360 GOTO 3100 3370 LET A=N 3399 GOTO 3105 9997 STOP 9998 SAVE "BULLETI[N]" 9999 GOTO 100 ```