Deprecated: Array and string offset access syntax with curly braces is deprecated in /home/cp1055386/public_html/libraries/vendor/leafo/lessphp/lessc.inc.php on line 749

Deprecated: Array and string offset access syntax with curly braces is deprecated in /home/cp1055386/public_html/libraries/vendor/leafo/lessphp/lessc.inc.php on line 1860

Deprecated: Array and string offset access syntax with curly braces is deprecated in /home/cp1055386/public_html/libraries/vendor/leafo/lessphp/lessc.inc.php on line 2519

Deprecated: Array and string offset access syntax with curly braces is deprecated in /home/cp1055386/public_html/libraries/vendor/leafo/lessphp/lessc.inc.php on line 2573

Mes "interrupteurs" et la gestion des interruptions .... le bordel commence :)

Plus d'informations
29 Juil 2020 20:20 #88 par ZISQUIER
Bon normalement, si je souhaite qu'à un moment mes connexions de Bank en RAM ( et aussi ROM d'ailleurs) soient rétablis à chaque déclenchement des interruptions, il faut que je stock à chaque fois dans quel état se trouve le programme avant de savoir quoi rétablir non ?

Donc je me suis dit que si par exemple je me connectait à un moment en RAM C4, je stock "1" dans un "flag_C4" déclaré en variable.
Admettons que je me connecte en C4 pour copier mes tiles du décors en RAM et PAF pendant un LDIR, y'a une interruption qui se déclenche.
Elle se termine et je me retrouve avec une bank C0.
Donc si pendant mes interruptions j'ai une routine qui rétablit mes banks c'est good non ?

Bon c'était pour expliquer mon raisonnement, voici déjà un extraits de mes "interrupteurs" de bank.
asic_on
	LD		a,1
	LD		(flag_asic),a
	LD 		bc,#7fB8:out (c),c
	ret
asic_off
	LD		a,0
	LD		(flag_asic),a
	LD 		bc,#7fA0:out (c),c
	ret

C0_on
	ld		a,1
	ld		(flag_C0),a
	xor		a
	ld		(flag_C4),a
	ld		(flag_C5),a
	ld		(flag_C6),a
	ld		(flag_C7),a
	LD 		BC,#7FC0:OUT (C),c
	ret

C4_on
	ld		a,1
	ld		(flag_C4),a
	LD 		BC,#7FC4:OUT (C),c
	xor		a
	ld		(flag_C0),a
	ld		(flag_C5),a
	ld		(flag_C6),a
	ld		(flag_C7),a
	ret
C4_off
	ld		a,0
	ld		(flag_C4),a
	ret

Mais j'ai un soucis avec la déconnexion des banks. Là mon C4_off me met mon flag à 0 mais en aucun cas me déconnecte pour me remettre en C0.
Alors bon, je me dit tient je vais coller un
CALL C0_on
juste avant le RET de mon C4_off ..... MAIS ..... çà marche pas bien ... bref y'a une faille et je trouve pas c'est quoi

signé, Zisquier

proverbe de pro-CPC : « çà sert à rien d'avoir des sprites hard et un scroll fluide avec des graph sont dégueu, une palettes moches et un jeu vide»

Connexion ou Créer un compte pour participer à la conversation.