How to use the Olivetti Prodest PC128 6-bit DAC?

C'est la catégorie reine de l'ordinophile, 8 bits et pas un de plus!
Single board ou bus S-100 acceptés.

Modérateurs : Papy.G, fneck, Carl

spotlessmind1975
Messages : 66
Inscription : 24 oct. 2021 15:47

How to use the Olivetti Prodest PC128 6-bit DAC?

Message par spotlessmind1975 »

I have read far and wide the forum before posting, and that all the answers that have been given, although very interesting, do not work (literally!) for me. In short: how do you use the 6-bit DAC that comes with the Thomson MO6 (aka Olivetti Prodest PC128) computer?

At the moment I was able to use only the buzzer (address $A7C1, bit 0) with a technique very similar to PFM. With this technique, however, I get sounds in a "small" range of frequencies, all very high (and noisy!). Moreover, the sounds expands to less than two octaves. Besides, of course, consuming a lot of CPU time.

I would like to use the DAC to take advantage of a more "classic" technique, which would produce lower frequency sounds for sure but over a greater number of octaves, so that I can use it as a "basic instrument" for reproduce songs. Unfortunately, accessing the $A7CD and $A7CF registers does not seem to have any effect (I'm doing tests on the DCMOTO emulator).

Is there anyone who can help me?
Thank you!
Daniel
Messages : 17400
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: How to use the Olivetti Prodest PC128 6-bit DAC?

Message par Daniel »

In order to use the 6 bits DAC, you must first set the six bits as an output.

Code : Tout sélectionner

; Initialisation CNA en sortie
  LDB   #$A7           ; $A7 pour MO
  TFR   B,DP           ; initialisation DP
  LDA   <$CF           ; lecture registre de controle B
  ANDA  #$FB           ; raz bit 2 
  STA   <$CF           ; selection DDRB
  LDB   #$3F           ; set bits 0-5 
  STB   <$CD           ; bits CNA en sortie
  ORA   #$04           ; set b2
  STA   <$CF           ; selection PB
After that you can send each sample to $A7CD
Daniel
L'obstacle augmente mon ardeur.
spotlessmind1975
Messages : 66
Inscription : 24 oct. 2021 15:47

Re: How to use the Olivetti Prodest PC128 6-bit DAC?

Message par spotlessmind1975 »

Thanks a lot, now it works! Finally!! :D
spotlessmind1975
Messages : 66
Inscription : 24 oct. 2021 15:47

Re: How to use the Olivetti Prodest PC128 6-bit DAC?

Message par spotlessmind1975 »

... just another question: Is it possible to change the frequency at which the interrupt service routine (ISR) located at location $2061 is called? At the moment it seems to me that it works at 50 Hz, but I don't know if this is a "fixed" parameter or if it is possible to change it by acting on some register.

Thanks again to those who will be able to help me!
Daniel
Messages : 17400
Inscription : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: How to use the Olivetti Prodest PC128 6-bit DAC?

Message par Daniel »

With the MO5, MO6 and PC128 the frequency of interruptions is fixed and cannot be changed.
With the TO computers the interrupt is generated by the 6846 timer and the frequency can be changed.
Daniel
L'obstacle augmente mon ardeur.
Répondre