| Title: | * * Computer Music, MIDI, and Related Topics * * |
| Notice: | Conference has been write-locked. Use new version. |
| Moderator: | DYPSS1::SCHAFER |
| Created: | Thu Feb 20 1986 |
| Last Modified: | Mon Aug 29 1994 |
| Last Successful Update: | Fri Jun 06 1997 |
| Number of topics: | 2852 |
| Total number of notes: | 33157 |
Are their any other CX5M users out there besides me and P. Kent?
| T.R | Title | User | Personal Name | Date | Lines |
|---|---|---|---|---|---|
| 351.1 | Two of us going nowhere | MINDER::KENT | Tue May 13 1986 10:37 | 6 | |
I guess we must be a dying breed. It would be really interesting
to hear how and what you do with your CX5. I suspect we could exchange
one or two patches and techniques etc. Perhaps we ought to carry
this conversation on VIA VAXMAIL.
PAUL KENT (PK).
| |||||
| 351.2 | At least three | GALLO::MCARLETON | Reality; what a concept! | Fri May 16 1986 16:30 | 11 |
Make that three. I have A CX5M but I have not done much with it.
I don't have the loads of keyboard talent that everyone else in this
file seems to. (That's why I got a music computer instead of a regular
synth) I have been writing a Z80 disassembler to try and find out
how to get to the midi port and keyboard form basic or Z80 code.
I think the best chance is to go through the music BIOS in the synth
ROM. (Hence the Z80 disassembler) I don't think there is much interest
in the CX5M in this file judging by the response to the original
CX5M note that I posted in here (80.0) way back when.
MJC
| |||||
| 351.3 | I USE MINE A LOT | MINDER::KENT | Mon May 19 1986 10:06 | 11 | |
I can't help but think that you 2 haven.t got much use out of your
CX5's due to the poor Yamaha software. Using the local (non YAMAHA)
software I can use mine as a reasonably good multitrack sequencer
as well as a multi-tymbral synth all at the same time, and I can't
play chopsticks on a piano.
RE.-1 I would be interested in how you get on in polling the MIDI
port.
PAUL.
| |||||
| 351.4 | Here it is | MINDER::KENT | Fri Jan 09 1987 03:23 | 43 | |
I seem to have lost the original topic forthos of you who aske for
this this however it seems
relevant here and and I found the time to post it so here goes.
This is an extract from "FEEDBACK" the official magazine of the
YAMAHA "X" series owners group.
Quote -------
This program is a simple routine to send MIDI codes from the SFG MIDI
out socket. This version will only run on CX5M Mk1. The program
addresses the SFG module and therefore will not run unless the module
is connected.
10 CLEAR 200,& HDE00
20 DATA 3E,0C,D3,A8,3E,65,32,F6,7F,3A,00,DE,32,F5,7F,3E,00,D3,A8,C9
30 FOR Z=1 TO 20
40 READ D$
50 POKE & HDE00+Z,VAL("CH"+D$)
60 NEXT Z
70 DEFUSR=HDE01
80 INPUT D$
90 POKE & HDE00,VAL("&H"+D$)
100 A=USR(A)
110 GOTO 80
120 END
In response to the ? enter a single byte HEX data followed by return.
The entered data is then sent across midi. We hope to print future
updates to this program in future magazines.
Unqoute -
Can any Z80 officionados tell me what this program is doing?
I take no responsibility for the performance of this program I haven't
tried it myself. However I would aprreciate hearing how you get
on with it.
Paul.
| |||||
| 351.5 | Thanks for the program..here's some addendum | MERIDN::BULMER | Life is a Classic Performance | Fri Jan 30 1987 10:36 | 45 |
Paul,
I took a stab at the program you left in here and it will work
with a couple of corrections to typos. IN line 50 change the "CH"
to "&H" and in line 70 should be:
70 DEFUSR=&HDE01
As you may know, the bytes in line 20 are machine code that is
executed as a user routine defined in line 70 and called in line 100.
This machine code is stored in RAM addresses DE01 through DE14. The
single byte that you want to send out of MIDI port is stored in RAM
location DE00. The z80 machine code breaks down as follows:
3E0C Load 0C into accumulator
D3A8 Output accumulator to I/O port address A8
(This is port A of the Intel-8255 Programmable Peripheral
interface..not sure what 0C tells the PPI to do)
3E65 Load 65 into accumulator
32F67F Store accumulator (now 65) into RAM loc 7FF6
3A00DE Load the byte the user entered which is now stored at RAM
location DE00 into the accumulator.
32F57F Store accumulator into RAM location 7FF5
3E00 Load 00 into accumulator
D3A8 Output accumulator to I/O port address A8 (To PPI port A)
C9 RETURN
In Appendix F of my MSX BASIC reference manual, there is a minute
amount of information pertaining to the 8255 PPI addresses (ie 'A8'
being port A address). The PPI must use those bytes stored at 7FF5
and 7FF6 somwhow after 00 is output to the port address A8. If
I get a chance I will get a copy of the 8255 data sheet and find
out what it is all about. I used to work with them but I can't
remember ALL of the microcode! Maybe if I get really hooked on
this, I will send away for any CX5M technical info (schematics,
memory maps etc) that Yamaha may have.
-Steve Bulmer
| |||||
| 351.6 | Switch that bank | VINO::MCARLETON | Reality; what a concept! | Wed Apr 22 1987 16:39 | 11 |
This is a little late but...
The PPI is connected to the memory bank switch on the CX5M. MSX
computers support more that 64K of memory by using the PPI to switch
banks in 16K blocks. The SFG05 must be memory mapped at location
7FF5,7FF6 in whatever bank 0C will get you.
Now if I could only get a program to read the midi port.
MJC (the other CX5M owner)
| |||||