CPC Rulez
https://cpcrulez.fr/forum/

DMA CPC+ / AY LIST (sujet divisé)
https://cpcrulez.fr/forum/viewtopic.php?f=4&t=3804
Page 2 sur 2

Auteur :  hERMOL [ 26 Juil 2009, 11:07 ]
Sujet du message :  Re: DMA CPC+ / AY LIST (sujet divisé)

j'ai rien qui sort du speaker, j'ai mis le truc dans une boucle jp et utiliser ton exemple (fano)..

Auteur :  fano [ 26 Juil 2009, 11:20 ]
Sujet du message :  Re: DMA CPC+ / AY LIST (sujet divisé)

Désolé mais si tu as utilisé le code ASM que j'avais posté, il y a un petit bug que j'avais pas vu , l'AY list doit être à une adresse paire me semble t'il sinon ça décale tout :?

Dans le code que j'avais posté le label 'ay_list' doit être après le org #8800

Auteur :  AsT [ 26 Juil 2009, 11:23 ]
Sujet du message :  Re: DMA CPC+ / AY LIST (sujet divisé)

L'unité de pause est un registre 8 bits (#6c02) dont a mettre dans a, pas dans hl. C'est peut etre un début de piste.

Il faudrait regarder l'AYLIST de plus près ;-)

Auteur :  fano [ 26 Juil 2009, 11:38 ]
Sujet du message :  Re: DMA CPC+ / AY LIST (sujet divisé)

oki , c'est fixé pour l'unité de pause, je croyais que vu que les registres étaient espacés de 2 octets, il étaient de cette taille.

Par contre, je charge le sna avec WinAPE et ça fonctionne , certes le son n'est pas très fort mais ça sort.Par contre effectivement, ça ne se répète pas mais il faudrait pour ça que tu recharges le pointeur de l'AY list je pense dans ta boucle, or à ce que j'ai vu ta boucle revient à l'activation du canal DMA qui est déjà actif, il aurait fallu, je pense , revenir plus haut, peut être même couper le canal DMA, attendre quelques scanlines et relancer le son, histoire de faire ça proprement.

EDIT
Suis je bête, un simple REPEAT (defw #2xxx ou xxx est le nombre de boucles) au début et un LOOP (defw #4001) à la fin de l'AY list avant le stop ( defw #4020) serait plus simple ! Je crois même qu'on peu combiner STOP et LOOP mais je suis pas que ça marcherai comme tu veux.

Auteur :  MacDeath26 [ 26 Juil 2009, 13:00 ]
Sujet du message :  Re: DMA CPC+ / AY LIST (sujet divisé)

Donc si je comprend bien, on vas peut être avoir un RickDangerous "PLUS" avec les cris si jouissifs (ou frustrants) des versions 16 bit sur nos bon vieux 6128+ ?

Et un tel concept sera peut être appliqué aux mises à jours "Plus" ultérieures alors...

Kool !

Euh, esque par exemple un jeux version 64Ko bin c'est plus simple de faire ces supersons en "Plus" en passant finalement le jeux en 128Ko de Ram necessaire ?
Ou esqu'il vaut mieux que le jeux ai à la base de la mémoire de libre donc on comble les "trous" de la sorte...

Après y'a peut être aussi le fait qu'oin vire les sons originaux et les remplacent.
Mais il faut alors recoder pour inclure les fonctionnalitées du son PLUS en DMA.
ça tient sans doute plus de place que les pauvres sons de départ je suppose ?

Pardon si c'est légèrement HS.

Auteur :  fano [ 26 Juil 2009, 14:54 ]
Sujet du message :  Re: DMA CPC+ / AY LIST (sujet divisé)

Malheureusement, ce n'est pas si simple, ces samples prennent tout de même énormement de place, celui du cri fait 3728 octets, c'est énorme.Même en optimisant en recherchant les redondances de bloc, ça fait 3664 octets :? C'est d'autant plus frustrant que pour un sample sur 4 bits, on genère une instruction sur 16 bits :sigh:

En plus, les AY lists doivent être mémoire centrale hors de la zone ASIC ce qui complique encore les choses.Il serait évidemment possible de réduire la taille des samples et d'exploiter les banks supplémentaires mais demanderait l'implémentation d'un vrai player qui génèrerait les AY lists à la volée et qui serait alimenté par les interruptions de la AY list.

Après si Hermol peut trouver les points d'entrée et un peu de place libre dans les bons endroits pour alimenter les AY lists, je veux bien l'écrire le player.

En attendant je vais essayer de finir ma skin pour color lines :D (reste plus que le game over et les curseurs !)

Auteur :  hERMOL [ 27 Juil 2009, 04:08 ]
Sujet du message :  Re: DMA CPC+ / AY LIST (sujet divisé)

Citer :
En plus, les AY lists doivent être mémoire centrale hors de la zone ASIC ce qui complique encore les choses.

faut dire qu'a l'origine l'ASIC est fait pour marcher en duo avec une cartouche

Auteur :  marcel [ 04 Mai 2021, 17:01 ]
Sujet du message :  Re: DMA CPC+ / AY LIST (sujet divisé)

puisqu'on remonte ce topic :P

RASM fait la conversion WAV 8,16,24 bits, mono,stéréo => DMA list à la volée et les DMA list se compressent deux fois
Une première fois avec l'usage des répétitions de pause et une deuxième fois à la main (cruncher LZ de votre choix)

Exemple =>

Code :
sample: lz48 :  incbin 'smp_thomas.wav',DMA : lzclose


y a d'autres options, j'sais plus si la doc est à jour, pour choisir le canal PSG utilisé, etC.

Page 2 sur 2 Le fuseau horaire est UTC+1 heure
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/