Search the Community
Showing results for tags 'computer Blues'.
-
How much can you change a program before it becomes a different program? I believe I have reached that point with Computer Blues. Version 4 got rid of the base repeats and Version 5 gave each voice its own channel and different patches for the JAM() and base notes. Fixing the timing can be done but would require a major rewrite. Here are the resulting sound and program files for Version 5. MIDI Computer Blues 5 - 3 channels.zip These are the changes made to version 4 to produce Version 5. Added "16 POKE 559,0" - turned off display to speed up processing. May have improved timing. The port setup routine was modified to include sending out program changes for each channel. JAM() was assigned to channel 1 and uses patch 97 - Vibes LOW() was assigned to channel 2 and uses patch 27 - ElecBass BASE() was assigned to channel 3 and uses patch 27. 3000 CLOSE #1:OPEN #1,9,0,"R2:":XIO 36,#1,14,0,"R2:":XIO 38,#1,32,0,"R2:":XIO 40,#1,0,0,"R2:" 3100 PUT #1,192:PUT #1,97:REM C1-I97 3110 PUT #1,193:PUT #1,27:REM C2-I27 3120 PUT #1,194:PUT #1,27:REM C3-I27 3130 RETURN The (channel# - 1) was added to CMD for note on and note off to direct the note information to the correct channel. The JAM() did not require changing, going to channel #1. 535 CMD=145:MIDINOTE=LOW(CHORD):VELOCITY=90:GOSUB 3 540 CMD=146:MIDINOTE=BASE(CHORD,THNOT):VELOCITY=90:GOSUB 3 700 CMD=129:MIDINOTE=LOW(CHORD):VELOCITY=0:GOSUB 3 710 CMD=130:MIDINOTE=BASE(CHORD,THNOT):VELOCITY=0:GOSUB 3 That's it for me and the Blues. I had thought about setting up the ST and record the MIDI data using Tiger Cub and then quantize the music, add tracks, and ……; or feed it into the MIDIMAX on another A8 computer. Brain Fart: What if I had a MIDIJOY setup. Then I could output the RAMO equipped A8 MIDI data to the MIDIJOY equipped A8. It would sound just like playing it on an A8 machine. Updated Hardware: Although I may not be playing Computer Blues, I'm sure I will be using the hardware for other music programs. The hardware was rebuilt to free up the shields for future projects and have a permanent setup for the A8 (or any other RS232 equipped computer). Remember at the end of the first blog on this subject there was a photo of the parts for an optional setup. Those parts were mounted on a wood plaque and wired. Slightly more permanent. http://atariage.com/forums/blog/572/entry-13269-midi-computer-blues-setting-up-the-hardware/ I looked up some prices and found the major parts would cost about $16. Arduino UNO compatible = $5.00 RS232 to TTL converter = $7.00 MIDI Socket - Panel mount = $2.77 220 ohm - $.90/100 I had a lot of incidentals laying around and was able to use them at no additional cost. There is a MIDI switch box connected to the R2: port of the 850 on my system. The cable between them is wired so that the pin outs of the box outputs follow the standard(?) for an IBM RS232 port or USB-to-RS232 converter with DB9 male connector(Data Terminal). The Shield had a DB9 Female connector wired to be a Data Set, thus allowing the use of a standard cable (db9-female to db9-male). The RS-232 to TTL converter I purchased has a DB9 male and was wired as a Data Terminal. A null-modem cable is needed to connect the two Data Terminals. How you solve your cable problems is up to you.
-
- Computer Blues
- 850
-
(and 2 more)
Tagged with:
-
After listening to MIDI Computer Blues V2, I decided to try to simulate some wind chimes but before that was going to happen I had to be able to transmit data at a faster rate. If the tempo of MIDI Computer Blues V2 could be improved there was a chance of making the wind chimes sound real. The Arduino Uno interface loop() was shortened to two lines. I didn't think this was going to make much of a difference and it didn't. /*RS232 to MIDI v2 - 9/14/16 * Pack007 * * This program reads bytes from an RS-232 source * and sends it out to MIDI Device. * * Programmed as an interface between the Atari 850 * Interface Module and a MIDI device. Max baud rate * of 850 is 9600 bps and 31250 bps is required for * MIDI. * */ #include <SoftwareSerial.h> SoftwareSerial RS850(5,6);//RS232 - A850 connection void setup() { RS850.begin(9600); Serial.begin(31250); } void loop() { while(RS850.available()<1){}//wait for data from Atari Serial.write(RS850.read());//read and write byte Next I did the obvious tricks to the BASIC program; moving the send data routine to the start of the program, combined some note information to reduce the number of send short block XIO command and turned off the screen. The increase in speed was minimal but noticeable. Then the 850 manual was read again and decided to OPEN the channel with Aux1 = 9. "9 signifies that you are going to use the port for output only(concurrent mode)". Then the XIO 40 command was issued. BINGO!! The tempo was so fast that the speed was set at 3 for recording. This caused the base note to be played 3 times in quick succession. The lack of a note attack and decay on the Atari masked this effect in the original program. The ZIP file contains a two minute recording of the music made by the program in the ATR. Better Blues.zip So to run this program all you need is this program, an A8, an 850 Interface, an Arduino with an RS-232 and MIDI port, and a MIDI Synth. I'm thinking about adding one more requirement for the next program by writing the Wind Chimes to run under the Diamond GOS. Related Blog Links: http://atariage.com/forums/blog/572/entry-13269-midi-computer-blues-setting-up-the-hardware/ http://atariage.com/forums/blog/572/entry-13277-midi-computer-blues-note-on-note-off/ http://atariage.com/forums/blog/572/entry-13282-midi-computer-blues-v20/
-
After hearing Computer Blues through a MIDI synthesizer, I can understand how some parents feel while hearing their child's first recital. Its not so much listening to the music as it is hearing the potential. It is in this spirit that I post these zipped sound files. Atari computer blues 8.m4a - the original sound from the A8 with 8 as the speed Midicb piano.m4a - recorded the Casio CKT-481 synth at speed 1 Midich organ.m3q - Organ sound Midich organ and drum - Organ with drum pattern. computer blues.zip Download this for the .ATR of the A8 files and the Arduino sketch. MIDI CB - program .zip The technical side: I wanted to make as few changes to the original program as possible. Follow along with a listing of the program CBMIDI2.BAS. 1000-1050 Data statements were converted from Atari pitch values to MIDI Note numbers. 9 consolidate lines 1-6 and move 8 to 15. Free up some line numbers at beginning of program. 1 REM program title information. 2 GOSUB 3000 sets up RS232 port for output to Arduino. 3000 Open R2: at 9600 baud - no translation 2500 Send MIDI command data subroutine Replace SOUND command with data setup and call to 2500 subroutine NOTE ON: 260 CMD=144:MIDINOTE=JAM(CHORD,NT),VELOCITY=NT*10+65:GOSUB 2500 535 CMD=144:MIDINOTE=LOW(CHORD):VELOCITY=60:GOSUB 2500 540 CMD=144:MIDINOTE=BASE(CHORD,THNOT):VELOCITY=60:GOSUB 2500 NOTE OFF: 700 CMD=128:MIDINOTE=LOW(CHORD):VELOCITY=0:GOSUB 2500 710 CMD=128:MIDINOTE=BASE(CHORD,THNOT):VELOCITY=0:GOSUB 2500 At this point the Computer Blues music was recognizable, although slow. The synth is able to play up to 16 notes at a time. This allowed 14 melody notes (+2 for the base) to be playing at the same time. When the 15 note was added the first note would tuned off. The following line was added to turn off the melody note before playing the next. Once in a while you'll notice that a note duration seems to be shortened. When the LASTNOTE = MIDINOTE, line 265 will turn off the melody note that was just started in line 260. This little quirk didn't degrade the song quality and may perhaps improved it. 265 CMD=144:MIDINOTE=LASTNOTE:VELOSITY:0:GOSUB 2500:LASTNOTE=JAM(CHORD,NT) The original goal of this project has been reached. It is possible to write Atari BASIC programs that can output MIDI data to a MIDI device, if you have an 850 and an Arduino with RS232 in/MIDI out. The speed of BASIC and the 850 interface will definitely impact most results. Trying to optimize the Atari BASIC code should increase its functionality. Then you also have to ask what happens when you let the Arduino do some of the work? Of course you could port Computer Blues directly into the Arduino, but where's the fun in that? Links to the two proceeding blogs The Hardware http://atariage.com/forums/blog/572/entry-13269-midi-computer-blues-setting-up-the-hardware/ Testing the Hardware. http://atariage.com/forums/blog/572/entry-13277-midi-computer-blues-note-on-note-off/
-
- midi
- computer blues
-
(and 3 more)
Tagged with: