[Coco] How Many OR90s can be utilized?
RETRO Innovations
go4retro at go4retro.com
Sat Nov 12 01:17:47 EST 2016
On 11/12/2016 12:03 AM, William Astle wrote:
> On 2016-11-11 10:48 PM, RETRO Innovations wrote:
>> Is it possible to (or does software exist to ) utilize more than Orch 90
>> device in a single system?
>
> You would have addressing conflicts. I don't believe the Orch 90 uses
> the SCS line for it's DAC registers which means its registers are
> present even if its slot isn't active.
>
> If you could relocate the DACs for one or more Orch 90s, you could use
> them all in the same system but it will require either modding the
> Orch 90s so you can set the DAC addresses or a special multipack
> scheme that remaps the Orch 90 registers.
>
I understand, but I have created an orch90 replacement on the CocoFLASH
cart, and so I can control where it sits (or if it sits in memory).
The easiest approach is to do this: (pseudo code)
; assume $ff64 is base reg of CocoFLASH 1, and bit 3 of the base reg
controls if the OR90 support on the CocoFLASH is present or not:
; grab 4 channels of data
; turn bit 3 on in $ff64
; store left1 value in $ff7a
; store right1 value in $ff7b
; turn bit 3 off in $ff64
; now assume $ff68 is location of second CocoFLASH
; turn bit 3 on in $ff68
; store left2 value in $ff7a (will be sent to second CocoFLASH)
; store right2 value in $ff7b
; turn bit 3 off in $ff68
; repeat
The turning of bit 3 on/off is a "cheap way" to accomplish the goal.
But, if doing the twiddle of bit 3 takes too much time, it is also
possible to put the second DAC channels in another location. Two options:
hard coding:
; if CocoFLASH unit is #1, put OR90 regs at $7a/$7b
; if unit is #2, put regs at $7c/7d
; unit # 3, $XX,XX+1
; unit #4, $yy,$yy+1
Advantage: cheap to put in the CPLD.
Disadvantage: very hard coded.
soft coding:
; use special register config to set base address of CocoFLASH #1 OR90 regs
; use a second special register config to set second CocoFLASH base OR90
address
Advantage: highly configurable
Disadvantage: currently takes way too many CPLD macrocells
So, there are my options.
--
RETRO Innovations, Contemporary Gear for Classic Systems
www.go4retro.com
store.go4retro.com
More information about the Coco
mailing list