Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Music Construction Set manual?

149 views
Skip to first unread message

aiia...@gmail.com

unread,
Sep 16, 2012, 11:17:21 AM9/16/12
to
I made a cheat-sheet for keyboard commands. If asimov
maintainer wants it, send me email.

I would like : Disk command list. I know there are
CATALOG, LOAD, SAVE

What does it take to save as a Mockingboard player file?

It will do speaker music, mockingboard. There must be
a "Mockingboard SAVE" command somewhere? I save my
files and try to play them with the MCS player (from
basic, using MCS player on Mockingboard disk1,
not within Music Construstion set), and they
won't play...

I see the program SAVES:
SONG1
SONG1.OBJ

what is the format for these files? What will play
them besides the Music Construction Set program?

Rich

hotrod...@gmail.com

unread,
Sep 16, 2012, 11:35:33 AM9/16/12
to
I found these in an old text file (as a start anyway).

======================================
MUSIC CONSTRUCTION SET DOCUMENTATION
=======================================

WRITTEN BY: LOWELL YURA

KEY BOARD MODE:

<--,-->,A,Z:-MOVEMENT
1-5:-16TH NOTES THROUGH HOLE NOTES
6-0:-16TH RESTS THROUGH HOLE RESTS
K AND L:-32ND NOTES AND S2ND RESTS
(ONLY USE THROUGH KEYBOARD)

T:-TREBLE CLEF
B:-BASS CLEF
S:-SHARP
F:-FLAT
N:-NATURAL
D:-DOT
I:-TIE
O:-OCTAVE RAISER

<ESC>-ERASES WHATEVER IS BEING POINTED
AT OR HELD
<SPACE-BAR>-PUTS DOWN ANOTHER OF WHAT-
EVER YOU PUT DOWN LAST
U-TURNS THE NOTE OR TIE YOU'RE CARRY-
ING UPSIDE DOWN
=:-SCROLLS SCREEN FORWARD ONE MEASURE
H:-SEND HAND TO BEGINING OF SONG
Q:-SENDS HAND TO THE QUARTER REST IN
THE PARTS COLLECTION
P:-CAUSES THE NOTE INDICATOR TO FUNCTION
<CTRL>-S:-TOGGLES THE NOTE INDICATOR
BETWEEN MANUAL AND AUTOMATIC
<CTRL>-P:-BEGINS PRINTING

ICONS

ICONS ARE PICTURES USED TO EXPLAIN
COMMANDS THEY ARE LOCATED IN THE
BOTTOM RIGHT OG THE SCREEN.

PLUG ICON:-TELL COMPUTER THE HARDWARE
YOU ARE USING
PIANO ICON:-PLAYS THE MUSIC IN MEMORY
ARROW ICONS:SCROLL BACK AND FORTH
HOME ICON:-SEND YOU TO THE BEGINNIG
OF SONG
DISK ICON:-LETS YOU ACCESS THE DRIVE
TYPE LOAD..., OR SAVE...
TYPE CATALOG TO SEE THE
DIRECTORY
CUT ICON:-LETS YOU ERASE PLACE THE
SCISSORS OVER A MEASURE AND
HIT THE NUMBER ON THE KEY-
BOARD OF THE NUMBER OF
MEASURES YOU WANT TO ERASE
PASTE ICON:-THIS LETS YOU PUT THE LAST
THING ERASED OTHER PLACES
IN THE SONG


THE MUSIC CONSTRUCTION SET (MCS) WILL
LET YOU PLAY CHORDS OF UF 2 NOTES.
IF YOU OWN A MOCKINGBOARD SOUND AND
SPEACH GENERATOR YOU CAN PLAY A CHORD
OF UPTO 6 NOTES.

THE 5 GAUGES IN THE CENTER LET YOU
CONTROL PLAYBACK SPEED, VOLUME, AND
SOUND QUALITY. THE SOUND AND VOLUME
GAUGES ONLY WORK IF YOU OWN A MOCKING-
BOARD, THE LEFT ONE IS FOR THE TOP
STAFF THE RIGHT ONE IS FOR THE BOTTOM.
THERE ARE FOUR AVAILABLE SOUNDS:
AT THE TOP POSITION-REGULAR
2ND POSITION-SMOOTH (CONTINUES)
3RD POSITION-VIBRATTO (WAVY)
4TH POSITION-DRUM LIKE

I HOPE THAT IS ENOUGH TO GET YOU
STARTED.

aiia...@gmail.com

unread,
Sep 20, 2012, 3:32:15 PM9/20/12
to
On Sunday, September 16, 2012 8:17:21 AM UTC-7, (unknown) wrote:
> I made a cheat-sheet for keyboard commands. If asimov
>
>

Thanks to Unknown for the text file.


> What does it take to save as a Mockingboard player file?
>
> It will do speaker music, mockingboard. There must be
> a "Mockingboard SAVE" command somewhere? I save my
> files and try to play them with the MCS player (from
> basic, using MCS player on Mockingboard disk1,
> not within Music Construstion set), and they
> won't play...
>
> I see the program SAVES:
> SONG1
> SONG1.OBJ
>
> what is the format for these files? What will play
> them besides the Music Construction Set program?
>

I guess this is some sort of black magic. MockingBoard Disk1 says:
"Music Demonstration
Featuring Selections developed using the music construction set by electronic arts"

it then BRUNS MCS (music const. set player)

But the MCS **player** won't play songs saved to disk using the SAVE command within the Music Construction Set **editor**.

I think I have the MCS *player* format figured out. It is different than those saved in the *MusicConstructionSet Editor*. I've been dissecting Michael J Mahons CVT.MIDI program to convert MIDI music to the proper format.

Daniel Kruszyna figured out that in Music Construction Set within SAVEd files:
The two data sets are mapped to the treble and bass clefs.
The format in general is based on how the music looks in the editor
instead of what the player needs to do (the opposite of Electric Duet).


So, what program would have been used to enter the music that plays on the MockingBoard Disk1? Or is there a special command from the MCS Editor that allows conversion of the music file?

Rich

Hot Rod

unread,
Sep 20, 2012, 5:17:33 PM9/20/12
to
On Thursday, September 20, 2012 2:32:15 PM UTC-5, (unknown) wrote:
> On Sunday, September 16, 2012 8:17:21 AM UTC-7, (unknown) wrote:
>
>
>
> Thanks to Unknown for the text file.
>
That was me. I looked around for some more docs, but that was all I found. There is a player dissassembled source file on the MCS disk though, which might be of some help.

>
>
>
> I guess this is some sort of black magic. MockingBoard Disk1 says:
>
> "Music Demonstration
>
> Featuring Selections developed using the music construction set by electronic arts"
>
>
>
> it then BRUNS MCS (music const. set player)
>

On the 'MOCKD1A' disk from Asimov, it seems to do something different. The songs are binaries that load at $4000, and the player is called MUSIC DRIVER YS, which loads at $7400. Then to play the songs, it pokes the lo/hi address of the music file into $26/$27, and then calls $7403 to play them.

>
>
> But the MCS **player** won't play songs saved to disk using the SAVE command within the Music Construction Set **editor**.
>
>
>
> I think I have the MCS *player* format figured out. It is different than those saved in the *MusicConstructionSet Editor*. I've been dissecting Michael J Mahons CVT.MIDI program to convert MIDI music to the proper format.
>
>
>
> Daniel Kruszyna figured out that in Music Construction Set within SAVEd files:
>
> The two data sets are mapped to the treble and bass clefs.
>
> The format in general is based on how the music looks in the editor
>
> instead of what the player needs to do (the opposite of Electric Duet).
>
>
>
>
>
> So, what program would have been used to enter the music that plays on the MockingBoard Disk1? Or is there a special command from the MCS Editor that allows conversion of the music file?
>
>
>
> Rich

On the back side of the above mentioned disk ('MOCKD1B' on Asimov), there's some stuff on there about installing the Mockingboard driver onto the MCS disk itself. There's a program for installing it. Maybe that's a clue.

(I haven't dug deeply into this, but thought it might of some use.)

Hot Rod

unread,
Sep 20, 2012, 6:58:41 PM9/20/12
to
On Sunday, September 16, 2012 10:17:21 AM UTC-5, (unknown) wrote:
> I save my
>
> files and try to play them with the MCS player (from
>
> basic, using MCS player on Mockingboard disk1,
>
> not within Music Construstion set), and they
>
> won't play...
>

Where does one find this "Mockingboard disk1" that has the player in question?

aiia...@gmail.com

unread,
Sep 20, 2012, 7:25:59 PM9/20/12
to
On Thursday, September 20, 2012 3:58:41 PM UTC-7, Hot Rod wrote:
>
> Where does one find this "Mockingboard disk1" that has the player in question?

http://mirrors.apple2.org.za/ftp.apple.asimov.net/images/hardware/sound/mockingboard/mockingboard1.dsk.gz

option C from the main menu

Rich



Hot Rod

unread,
Sep 21, 2012, 12:14:31 AM9/21/12
to
Ok, so I think I figured it out (mostly). In order to save the Mockingboard music files from Music Construction Set, you do a 'BSAVE filename' instead of a 'SAVE'. Using BSAVE creates a single file with an address of $1000 and length of $900; using SAVE creates the two files (one at $4000, and the .OBJ at $7400).

Now the gory details, and how to use it...

The player file that's on the 'Mockingboard 1' disk ('MCS') is the same player file that's on the first Music Construction Disk image (as 'MUSIC'), and which has the text file source disassembly. The difference is that the one on the Mockingboard disk is assembled to start at $8500, while the one on the MCS disk is at $4900.

To use the player from the Mockingboard disk, you BLOAD it as is (will load at $8500). But a few more things are needed. There's another file on the Mockingboard disk called PRIMARY; BLOAD that too (loads at $9000). Then the music file itself needs to load at $4000 instead of $1000 (more on that later).

There are two parameters that need to be set at $8512 and $8513 though. $8512 is the tempo (actually the time signature), and $8513 is 'decay' (not entirely sure what that controls).

Then to start the song, just do an $8503G. The monitor prompt will return, and music will be playing from from the Mockingboard.

Now, to stop it, you do a $C40E:40 <return>, but this will leave the last two notes still playing. This is where the PRIMARY file comes in. To stop each note, do a $9021G and a $904DG.

So in summary:
- BLOAD MCS
- BLOAD PRIMARY
- BLOAD <song file>, A$4000
- set $8512 and $8513 to the time signature and decay
- $8503G
- to stop:
- $C40E:40
- $9021G
- $904DG

Some caveats: the time signature should be able to be determined from MCS, but I didn't figure the exact mapping. The default seems to be $8512:4 3, which is 4/4 time and '3' as decay. You can see other songs use 2 2, 3 3, and I don't know what combos are valid. I BSAVED the Canon off the MCS disk, and 4 3 seems to work for it.

Since MCS only saves A$1000, L$900, it doesn't look like the longer songs fit into that. The ones on the Mockingboard demo seem to, but longer songs on the MCS disk don't seem to convert in short enough space.

At $8514-15 is the lo/hi address of treble clef portion of the song, while at $8516-17 is the bass clef (I think; could be swapped). Except you'll see these set as FE3F and 7E44; they are two bytes before the actual start due to the way the program handles the addressing. In theory, if you wanted to load the song file into $1000 instead of $4000, should just be able to change these values (e.g. FE0F and 7E14 instead). I didn't try it though.

But with this info, I was able to LOAD the CANON song from MCS, BSAVE it to another disk, MCS created just one file at an address of $1000, length of $900, which I was then able to play via the Mockingboard MCS file.

How'd I figure it out? I got lucky. I was comparing the music files on the Mockingboard disk, and it looked like there were two sets of note info combined, whereas the MCS files had separate files. The data looked similar though. And the player on the Mockingboard disk being the same as on the MCS disk suggested that there must be a way to create this one combined format. I was looking at other files on the MCS disk when I noticed some text at the end of the HELLO binary file: ",A$1000,L$900" - that matched exactly the file address and length I was after. So then the question was, where and how was this used? I also noticed a "BSAVE" in the nearby text, which was the other clue. So then I used AppleWin and the debugger to reverse engineer when that was used, and realized that the BSAVE alone (with a filename) was the only key (MCS fills in the rest automatically, thus the fixed length of $900).

The tricky part is going to be figuring out the values for $8512-13, and the size limitation.

Hope that helps.

]HR



aiia...@gmail.com

unread,
Sep 21, 2012, 12:47:18 AM9/21/12
to
On Thursday, September 20, 2012 9:14:32 PM UTC-7, Hot Rod wrote:
> Ok, so I think I figured it out (mostly). In order to save the Mockingboard music files from Music Construction Set, you do a 'BSAVE filename' instead of a 'SAVE'. Using BSAVE creates a single file with an address of $1000 and length of $900; using SAVE creates the two files (one at $4000, and the .OBJ at $7400).
>
> The tricky part is going to be figuring out the values for $8512-13, and the size limitation.
> Hope that helps.
>
>

Cool, thanks a bunch! I'm suprised this hasn't made it to the FAQs yet...

I almost have midi files playing through MCS player.

Rich

aiia...@gmail.com

unread,
Sep 21, 2012, 1:35:28 AM9/21/12
to
On Thursday, September 20, 2012 9:14:32 PM UTC-7, Hot Rod wrote:
>
>
> Now, to stop it, you do a $C40E:40 <return>, but this will leave the last two notes still playing. This is where the PRIMARY file comes in. To stop each note, do a $9021G and a $904DG.
>
>

8500- 4C B1 85 JMP $85B1 JMP INTRUPT
8503- 4C 7C 87 JMP $877C JMP INIT
8506- 4C C8 86 JMP $86C8 JMP INITMOCK
8509- 4C 3D 87 JMP $873D JMP SONGADDS
850C- 4C E0 87 JMP $87E0 JMP PAUSE $87E0
850F- 4C F3 87 JMP $87F3 JMP CONTINUE $87F3


I haven't checked, but $87F3 and $87E0 might be able to pause/continue playing as well...


The PRIMARY file doesn't have to be loaded to play music...

This works:
BLOAD MCS, A$8500
Bload Music,a$4000
poke 34066,tempo
poke 34067,decay
Call 34051



>
> At $8514-15 is the lo/hi address of treble clef portion of the song,
>while at $8516-17 is the bass clef (I think; could be swapped).
> In theory, if you wanted to load the song file into $1000 instead
>of $4000, should just be able to change these values (e.g. FE0F and
>7E14 instead). I didn't try it though.

I was thinking the length of song might be able to be changed as well, by changing where the "bass clef" is stored. The end of song data is indicated by both note and duration being = 0.

> But with this info, I was able to LOAD the CANON song from MCS, BSAVE it to another disk, MCS created just one file at an address of $1000, length of $900, which I was then able to play via the Mockingboard MCS file.
>

Neat!

Rich

Daniel Kruszyna

unread,
Sep 21, 2012, 8:10:22 AM9/21/12
to
I haven't been following too closely, so apologies if these have been
answered already...

I'm a little confused about the two file formats.
Can't MCS play music using the Mockingboard directly from the editor?
Does the editor convert to this intermediate format before calling the player?
Or is this intermediate format only used by the standalone player?
Was the standalone player included with the official MCS release, or did
someone else later figure out how to separate it?
Is there a similar player for 1bit sound?
Does it use the same intermediate format?

-- Daniel

(Hoping to add MCS support to 1tracker)

Hot Rod

unread,
Sep 21, 2012, 9:02:04 AM9/21/12
to
On Friday, September 21, 2012 7:10:23 AM UTC-5, Daniel Kruszyna wrote:
>
> I'm a little confused about the two file formats.
>
> Can't MCS play music using the Mockingboard directly from the editor?

Yes, MCS can play music directly through the Mockingboard from the editor.

>
> Does the editor convert to this intermediate format before calling the player?
>

No, I don't think so. It looks like both formats are maintained in memory at the same time by MCS. I *think* it uses the split format when it plays from the editor though (but haven't dug through the code to confirm that). The buffers for the $4000 and $7400 portions seem larger.


> Or is this intermediate format only used by the standalone player?
>
That would be my guess.


> Was the standalone player included with the official MCS release, or did
> someone else later figure out how to separate it?

Dunno. I find it on the first version of MCS I have (1983), but not on the later version (1985).

>
> Is there a similar player for 1bit sound?
>
> Does it use the same intermediate format?
>
>
I don't know what that is.



]HR

Hot Rod

unread,
Sep 21, 2012, 9:58:46 AM9/21/12
to
> > Is there a similar player for 1bit sound?
>
> > Does it use the same intermediate format?
>
>
> I don't know what that is.
>
>

Oh - you mean for just Apple speaker (duh). I've not seen one.
However, when looking at the 1985 version of the MCS disk, there are these .S files, one for each type of output (Apple Speaker, Mockingboard, Casette Port, etc). They seem like they are source files of some type, but are binary format and don't read as straight text. They do have a mixture of text and object code in them though. The APPLE SPEAKER.S file seems like it might be the player, but would require some study to see how it works.



aiia...@gmail.com

unread,
Sep 21, 2012, 12:03:41 PM9/21/12
to
On Thursday, September 20, 2012 9:14:32 PM UTC-7, Hot Rod wrote:
> BSAVE alone (with a filename) was the only key

Hi,

I found these Music Construction Disks on asimov, I'm using Applewin:

Leslie Cheung Kwok Wing's music- Construction Set'.zip
--I can LOAD H, BSAVE H. Seems to write to disk for BSAVE. Then resets to title screen. When trying to edit music, resets to title screen

Music Construction Set (Dr. Encinitas crack).dsk
--I can LOAD CANON, but BSAVE CANON isn't recognized as a command

Music Construction Set (Midwest Pirates Guild crack).dsk
--I can LOAD CANON, BSAVE CANON Looks like this one works

music_construction_set.dsk.gz
--LOAD TURKEY. Play it. Resets to title screen
--LOAD TURKEY. BSAVE TURKEY. return to editor. Resets to title screen

music_construction_set_85(mouse).dsk
--Go to DISK button, CATALOG. Resets to title screen

Any tips on why it keeps on resetting to title screen? I tried it like this:
boot AppleWin with PRODOS running, control-reset, PR#6. I also ejected my HD and booted straight to slot6.

I am using input type KOALA (works best on emulator),

Rich

Hot Rod

unread,
Sep 21, 2012, 12:49:05 PM9/21/12
to
On Friday, September 21, 2012 11:03:41 AM UTC-5, (unknown) wrote:
>
> Music Construction Set (Midwest Pirates Guild crack).dsk
>
> --I can LOAD CANON, BSAVE CANON Looks like this one works
>

As it turns out, this is the version I was using. Guess I got lucky again.

>
> Any tips on why it keeps on resetting to title screen? I tried it like this:
>


I'll have to try one of the other versions to see what it does.

aiia...@gmail.com

unread,
Sep 21, 2012, 1:01:01 PM9/21/12
to
On Friday, September 21, 2012 9:03:41 AM UTC-7, (unknown) wrote:
> Music Construction Set (Midwest Pirates Guild crack).dsk
>
> --I can LOAD CANON, BSAVE CANON Looks like this one works

Using this DSK image I can :

1)make my own music, BSAVE, and then play with MCS interrupt driven player
2)load previously entered music, BSAVE, and then play with MCS interrupt driven player

It still resets to title screen pretty often, but I can get stuff done if I do it quick, and sometimes have to try about 4 times before it will save before resetting.

within disk command prompt:
,D1 and ,D2 work in the > prompt, to save/bsave/load to DRIVE1/2. Pressing RETURN at > prompt will return to editor.

Thanks HotRod!

%99 done getting a BASIC program to convert (MJM's CVT.MIDI8 output) to (MCS interrupt player format).

Rich

Hot Rod

unread,
Sep 21, 2012, 1:04:58 PM9/21/12
to
On Friday, September 21, 2012 11:03:41 AM UTC-5, (unknown) wrote:
>
> music_construction_set_85(mouse).dsk
>
> --Go to DISK button, CATALOG. Resets to title screen
>

This one seems to work OK for me. I do a CATALOG and I get a catalog listing. I can LOAD CANON and it loads, then pressing return goes back to the editor and I can play it. I don't get a reset.

I'm using AppleWin 1.21.1.0, and Joystick as the input.

So perhaps the issue lies elsewhere?

aiia...@gmail.com

unread,
Sep 21, 2012, 1:10:41 PM9/21/12
to
On Friday, September 21, 2012 10:04:59 AM UTC-7, Hot Rod wrote:
> > music_construction_set_85(mouse).dsk
>
> > --Go to DISK button, CATALOG. Resets to title screen
>
>
> This one seems to work OK for me. I do a CATALOG and I get a catalog listing. I can LOAD CANON and it loads, then pressing return goes back to the editor and I can play it. I don't get a reset.
>
> I'm using AppleWin 1.21.1.0, and Joystick as the input.
> So perhaps the issue lies elsewhere?

AppleWin has been working fine for all PRODOS hobby stuff... I've checked out about %5 of what you have uploaded, and had no problems.

The debugger reports AppleWin version 1.21.1.0. Perhaps it is my choice of the Koala pad... And I have joystick in AppleWin set as mouse emulated.

Frustrating have it reset on me every couple of seconds.. But it's enough to keep me going on my project.

Rich




Hot Rod

unread,
Sep 21, 2012, 1:31:33 PM9/21/12
to
When you say resets to title screen, do you mean it reboots? (goes through the EA text screen, then the title graphics inside the editor). Or is it just bringing back the title graphics inside the editor?

aiia...@gmail.com

unread,
Sep 21, 2012, 2:19:06 PM9/21/12
to
On Friday, September 21, 2012 10:31:33 AM UTC-7, Hot Rod wrote:
> When you say resets to title screen, do you mean it reboots? (goes through the EA text screen, then the title graphics inside the editor). Or is it just bringing back the title graphics inside the editor?

I said it in my head... Did you hear that?

Yeah, it goes back to EA text screen, then back to editor graphics screen, most times with no music data (a few times it went through the text screen, back to HGR, and had the music I loaded before it ?rebooted?)

Maybe a RAM init bug in AppleWin???

Rich

aiia...@gmail.com

unread,
Sep 21, 2012, 2:22:40 PM9/21/12
to
On Friday, September 21, 2012 11:19:06 AM UTC-7, (unknown) wrote:
> Yeah, it goes back to EA text screen, then back to editor graphics screen, most times with no music data (a few times it went through the text screen, back to HGR, and had the music I loaded before it ?rebooted?)
>

It "resets" at random some times, others it will "reset" when exiting the > prompt by pressing RETURN without any input.

"reset" includes:
1)EA text title screen,
2)then to the HGR editor,
3)then to PRESS RETURN TO SKIP DEMO,
4)then to SELECT INPUT, DEVICE, PRINTER


Rich

aiia...@gmail.com

unread,
Sep 21, 2012, 2:38:55 PM9/21/12
to
On Friday, September 21, 2012 11:22:40 AM UTC-7, (unknown) wrote:
> It "resets" at random some times, others it will "reset" when exiting the > prompt by pressing RETURN without any input.
>

I switched to Joystick control, using PC joystick, and problems seem to have gone away.

Rich

Hot Rod

unread,
Sep 21, 2012, 2:52:06 PM9/21/12
to
I tried Koalapad (boy, that is nicer!), and it still seems to be behaving OK for me. I haven't experienced any reboots. Weird.

aiia...@gmail.com

unread,
Sep 21, 2012, 3:20:05 PM9/21/12
to
On Friday, September 21, 2012 11:52:07 AM UTC-7, Hot Rod wrote:
>
> I tried Koalapad (boy, that is nicer!), and it still seems to be behaving OK for me. I haven't experienced any reboots. Weird.


way nicer.

I think this might be the problem:

I connected a joystick weeks ago, shows up in windows control panel (although windows reported problem installing drivers for device), but when setting Joystick control to PC joystick in the AppleWin config, I would get an error "no joystick connected"

I plugged in another joystick, Windows recognized it, AppleWin saw it. No longer resets on the Music Construction Set (Midwest Pirates Guild crack).dsk

I think somehow the USB joystick that I had connected before was causing problems with AppleWin and forcing reboot.

I still get reboot with my current setup with the Leslie Cheung disk. Set up controls, device, printer, wait 5 seconds and it resets.

Seems strange that so many DSK images of the same software (I know, different versions) would cause reset problems...


Rich

0 new messages