--- title: "MUSIcomp" type: "article" slug: "musicomp" url: "http://localhost/article/musicomp/" markdown_url: "http://localhost/article/musicomp.md" published_at: "2026-01-25T22:15:13+00:00" modified_at: "2026-06-21T23:23:55+00:00" featured_image: url: "http://localhost/wp-content/uploads/2022/04/20230809-041332.jpg" excerpt: "This program is a very basic music writer using the A,B,C… method for inputing the notes, once loaded a menu is displayed, 1-INPUT DATA FILE, 2-CLEAR DATA FILE, 3-SAVE FILE, 4-LOAD FILE, 5-COMPILE CODE, 6-COPY and 7-QUIT PROGRAM. 1-INPUT DATA You input the data with an editor, like a word-processor. EX: O3 +A-2 -B+2 P4…" category: - name: "Byte Power" slug: "byte-power" taxonomy: "category" url: "http://localhost/category/periodicals/byte-power/" post_tag: - name: "Downloadable" slug: "downloadable" taxonomy: "post_tag" url: "http://localhost/tag/downloadable/" - name: "Full Text" slug: "fulltext" taxonomy: "post_tag" url: "http://localhost/tag/fulltext/" - name: "TS 2068" slug: "ts2068" taxonomy: "post_tag" url: "http://localhost/tag/ts2068/" model: - name: "Timex/Sinclair 2068" slug: "ts-2068" taxonomy: "model" url: "http://localhost/model/ts-2068/" indiv: - name: "Eric Boisvert" slug: "boisvert-eric" taxonomy: "indiv" url: "http://localhost/indiv/boisvert-eric/" publication_r: id: 38570 title: "Byte Power 1st Class Magazine" type: "periodical" url: "http://localhost/periodical/byte-power-1st-class/" authors_r: - name: "Eric Boisvert" slug: "boisvert-eric" taxonomy: "indiv" url: "http://localhost/indiv/boisvert-eric/" issues_articles: - id: 38574 title: "Byte Power Nov 1986" type: "issue" url: "http://localhost/issue/byte-power-4/" pubdate: "November 1986" archive_link: true article_media: - id: 63294 title: "Music Play" type: "computer_media" url: "http://localhost/computer_media/music-play/" --- # MUSIcomp This program is a very basic music writer using the A,B,C… method for inputing the notes, once loaded a menu is displayed, 1-INPUT DATA FILE, 2-CLEAR DATA FILE, 3-SAVE FILE, 4-LOAD FILE, 5-COMPILE CODE, 6-COPY and 7-QUIT PROGRAM. 1-INPUT DATA You input the data with an editor, like a word-processor. EX: O3 +A-2 -B+2 P4 ( +B1 : B2 .O3 Means Octave n#3, Octave must be between 0 and 8, default 3. A,B,C,… are the notes, a minus sign before a note will set the note 1 octave lower than the previously set Octave, and a plus sign will set the note 1 octave higher. A minus sign after a note will set the note 1/2 a tone lower (same effect as a flat sign), a plus sign will set the note 1/2 tone higher (same effect as a sharp sign). The numbers after a letter are the duration of that note. So -A+2 would be A sharp of 2 of duration, 1 octave lower. P4 stands for PAUSE (rest), 4 of duration. : is a repeat sign, it will repeat a section or part of a piece from either the arrow (power sign [on the H key]), the last repeat sign, or the start if no indication where to start.^ (power sign) will indicate start of repetition. ( or (1 is use as the 1st ending in a repetition. When the strain is repeated the 1st ending is omitted and the 2nd ending is played instead (but the 2nd is right after the repeat sign so the computer will automatically know). There is a maximum of 2 endings per repetition. EX: O3 ^ A1 B+1 (1 B2 : C2 . —— The computer will play up to the repeat sign, repeat the underlined part, then jump after the repeat sign.. is use to terminate a music. Note that the music is in the G Clef. To go back to the MAIN MENU, press [SYMBL SHIT] & [CAPS SHIFT], (EXTENDED MODE). 2 CLEAR FILE Will clear the working file and go into editing mode. 3-SAVE, 4-LOAD Will save or load working file. 5-COMPILE Will compile the file into bytes of data, the data will be compiled in a few seconds. The code is at 60000 but can relocated by the user. You will be asked to either play the music, or save the codes entering anything but S, or ENTER, you will go back to MAIN MENU. Before playing you will have to enter the tempo (1 to 20000). 6-COPY a part of the music This option lets you copy a part of your file. Follow the prompts. To move the cursor use the arrow keys, then press ENTER. 7-QUIT PROGRAM (NEW) Will erase all the program and data… good old new! DATA CONFIGURATION Each note is composed of 3 bytes, the 1st byte is the fine tune, the 2nd is the coarse, and the 3rd the duration. The 1st byte is also used to see if the note is a pause or if it is the end. Pause is 254, and the end of music is 255. A small program is provided so you can understand more about the way on how to use the data file. A working file is also provided, just after MUSIcomp. Choose option 4 in main menu, the name is SOLFEG EX. The small program is right after SOLFEG EX. file and is AUTO-RUN and will load its own data file. ## Source Code: Music Play ``` 10 REM MUSIC PLAY written by Eric Boisvert ©1986 BYTE POWER 15 IF PEEK 23681=0 THEN CLS : LIST 9999: STOP 20 LET tempo=5: REM tempo 30 LET start=60000: REM start of data to play 35 REM LOOP TO READ AND PLAY 40 LET fine=PEEK start: LET coarse=PEEK (start+1): LET pause=PEEK (start+2): LET start=start+3 50 IF fine=254 THEN GO TO 80: REM if pause (254) 60 IF fine=255 THEN GO TO 150: REM if end (255) 65 REM SET UP FOR METALLIC SOUND and ENVELOPE GENERATIOR (see AUGUST & OCTOBER issues) 70 SOUND 0,fine;1,coarse;2,fine+1;3,coarse;8,16;9,16;7,60;13,0;12,pause*5 80 REM wait for note to finish 90 PAUSE tempo*pause 100 GO TO 35 150 REM END 160 STOP 9000 REM LOAD DATA FILE 9010 REM NOTES MAY BE ANY WHERE 9020 LOAD "MUSIC DEMO"CODE 6e4 9030 GO TO 10 9999 SAVE "MUSIC PLAY" LINE 9000: SAVE "MUSIC DEMO"CODE 6e4,1594: VERIFY "": VERIFY ""CODE ```