[Coco] The CoCo PSG cartridge How To.

coco at jechar.ca coco at jechar.ca
Fri Nov 5 14:31:46 EDT 2021


Ok I will try it out, thanks !

On 2021-11-05 15:28, go4retro at go4retro.com wrote:
> The mpi code should be left in.  It will not affect non mpi operation
> 
> Jim
> On Nov 5, 2021, 12:21 PM -0500, coco at jechar.ca, wrote:
>> 
>> What lines do I need to change or delete if I am not using a Multipack
>> but rather a disk on Drivewire ?
>> 
>> On 2021-11-04 17:30, Robert "Exile In Paradise" Murphey wrote:
>> > On Thu, 2021-11-04 at 16:14 -0400, coco at jechar.ca wrote:
>> > >
>> > > Does anyone have any information about accessing The CoCo PSG
>> > > cartridge
>> > > from a Radio Shack Disk Basic program.
>> > >
>> > > Things like what to poke where to implement a function.
>> > >
>> > > The CoCo PSG cartridge documentation is extremely limited and geared
>> > > to
>> > > Assembly language not Basic.
>> > >
>> > > Charlie.
>> > >
>> >
>> > Here's a BASIC program that selects a CoCoPSG in MPI slot 1, then plays
>> > some sound.
>> >
>> > The square-wave sound chip in the CoCoPSG is register compatible with
>> > the PSG in a Speech Sound Cart.
>> >
>> > Programming the CoCoPSG from BASIC is easier than the Speech Sound Cart
>> > since you don't have to watch for one register to say the chip is
>> > ready.
>> >
>> > The CoCo PSG registers you want are in R and D.
>> > R is the address to poke in which sound chip register to program.
>> > D is the address to poke the data you want in that sound chip.
>> >
>> > Hope this helps.
>> >
>> > 10 CLS
>> > 20 A=PEEK(&HFF7F) AND &HF0:POKE &HFF7F,A
>> > 30 X=&HFF00
>> > 40 POKE X+1,52:POKE X+3,63:POKE X+35,60
>> > 50 R=&HFF5E:D=&HFF5F
>> > 60 GOSUB 290: 'SETUP REGISTERS
>> > 70 CLS 1
>> > 80 PRINT "SOUND"
>> > 90 SOUND 89,30
>> > 100 CLS 2
>> > 110 PRINT "PLAY"
>> > 120 PLAY "L2;V31;O3C"
>> > 130 CLS 3
>> > 140 PRINT "COCOPSG 2MHZ"
>> > 150 A=PEEK(&HFF7F) AND &HF0: POKE &HFF7F,A
>> > 160 POKE X+1,52:POKE X+3,63:POKE X+35,60
>> > 170 POKE &HFF5D,1
>> > 180 POKE R,0:POKE D,222
>> > 190 POKE R,1:POKE D,1
>> > 200 POKE R,7:POKE D,62
>> > 210 POKE R,8:POKE D,15
>> > 220 FOR I=0 TO 900:NEXT
>> > 230 PRINT "COCOPSG 1MHZ"
>> > 240 POKE &HFF5D,0
>> > 250 POKE R,0:POKE D,239
>> > 260 POKE R,1:POKE D,0
>> > 270 FOR I=0TO900:NEXT
>> > 280 GOTO 70
>> > 290 POKE R,0:POKE D,221: 'TONE A FINE
>> > 300 POKE R,1:POKE D,1 : 'TONE A COARSE
>> > 310 POKE R,2:POKE D,0 : 'TONE B FINE
>> > 320 POKE R,3:POKE D,0 : 'TONE B COARSE
>> > 330 POKE R,4:POKE D,0 : 'TONE C FINE
>> > 340 POKE R,5:POKE D,0 : 'TONE C COARSE
>> > 350 POKE R,6:POKE D,8 : 'NOISE 00001000
>> > 360 POKE R,7:POKE D,62 : 'MIXER 00111110 A ON
>> > 370 POKE R,8:POKE D,0
>> > 380 POKE R,9:POKE D,0
>> > 390 POKE R,10:POKE D,0
>> > 400 POKE R,11:POKE D,0
>> > 410 POKE R,12:POKE D,12
>> > 420 POKE R,13:POKE D,9
>> > 430 RETURN
>> > 440 END
>> >
>> > --
>> > Robert "Exile In Paradise" Murphey <exile at weylan-yutani.com>
>> > Weylan-Yutani Corporation
>> 
>> --
>> Coco mailing list
>> Coco at maltedmedia.com
>> https://pairlist5.pair.net/mailman/listinfo/coco


More information about the Coco mailing list