MSX Village forum

La Place des Développeurs Projet Carwar

aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 06/02/2011 à 01h17

Reprise du message précédent

Jipe :
donc ça ne marche vraiment pas sur une vraie machine




Aie !! :'(



Une idée du genre de chose qui fait que ça marche sur BlueMSX et pas un vrai MSX ? :hum



Faut vraiment que je récupère un ordi pour pouvoir tester au fur et à mesure sinon ça va être de plus en plus difficile d'assurer la compatibilité.


On est toujours ignorant avant de savoir.
Github    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 06/02/2011 à 09h56
Voici une nouvelle version de Carwar avec les débuts d'un système d'affichage par tile (pour un éditeur).
Les tiles sont stockés en binaire et peuvent subir rotation et symétrie.
Je vais ajouter une passe d'ombrage pour rendre le résultat plus joli (dès que je trouve comme lire en VRAM).
J'aimerai aussi ajouter une option pour lire directement un circuit depuis une disquette ; avec le BIOS en RAM, c'est jouable ?

Carwar v0.0.4


On est toujours ignorant avant de savoir.
Github    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 06/02/2011 à 16h46
Pour la construction du circuit, je passe pour l'instant par des PSET (attente libération VDP puis envoi de la commande sur les registres 36-46). Par contre, une fois le circuit en mémoire, tout se passe dans la VRAM via des HMMM/LMMM.

Des idées sur ce qui pourrait faire que ça ne marche pas sur un vrai MSX ? :hum Edité par aoineko Le 06/02/2011 à 17h43


On est toujours ignorant avant de savoir.
Github    
Metalion Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 23/12/2009 à 15h32

Messages: 1503

Le 06/02/2011 à 20h00
aoineko :
Des idées sur ce qui pourrait faire que ça ne marche pas sur un vrai MSX ? :hum


Le timing du VDP, probablement.


MSX1: Daewoo DPC-200 / Yamaha CX5M
MSX2: Sony HB-F9P
MSXVR
Vidéo: V9990 (GFX-9)
Audio: MSX-Music (FM-PAC) / MSX-Audio (Audiowave) / OPL4 (Monster Sound FM Blaster) / OPNB (Neotron)
   
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 06/02/2011 à 20h25
Metalion :
Le timing du VDP, probablement.




C-a-d ? Un accès au VDP alors qu'il n'est pas près ? :hum Edité par aoineko Le 06/02/2011 à 20h28


On est toujours ignorant avant de savoir.
Github    
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10730

Le 06/02/2011 à 21h58
je regarde de plus prés demain sur un MSX2 car j'aurai un peu plus de temps


:noel
Site web    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 07/02/2011 à 10h55
Avant chaque accès au VDP, normalement, j'appelle une fonction WaitForVDP contenant :

Code ASM :
;// Check CE bit on register S2
lda,#2
di
out(VDP_ADDR),a
lda,VDP_REG(15)
out(VDP_ADDR),a
WAIT_VDP:
nop
ina,(VDP_ADDR)
rra
jrc,WAIT_VDP
//; RAZ du registre 15
xora
out(VDP_ADDR),a
lda,VDP_REG(15)
ei
out(VDP_ADDR),a


Je vais re-vérifier tous mes appels, mais normalement, de ce coté la, ça devrait être bon.


On est toujours ignorant avant de savoir.
Github    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 07/02/2011 à 12h26
J'ai trouvé 2 fonctions d'initialisation qui n'attendaient pas la libération du VDP.
J'ai fait une nouvelle version à tester sur un vrai MSX : carwar_prb_crashMsx.zip.


On est toujours ignorant avant de savoir.
Github    
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10730

Le 07/02/2011 à 15h58
j'ai essayé cette derniére version et c'est pareil ça bloque sur un écran noir
j'ai essayé avec SHIFT et CTRL sans succés
j'ai essayé screen0 40 col et screen 1 au démarrage pas bon non plus
slot 1 slot 2 odo megaflash ça ne veux rien savoir
sur le turbo r ça bloque le ren-sha pas de led qui clignote mais pas la pause
le caps lock ne s'allume pas
enfin on reprends la main par le reset mais il faut attendre plus longtemps qu'abituellement


:noel
Site web    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 07/02/2011 à 16h09
aie aie aie... :'(

EDIT : Bon, je pense que point de vue attente du VDP, je suis ok. D'autres idées sur ce qui pourrait faire planter un vrai MSX par rapport à BlueMSX ? Sachant que ça marche sur BlueMSX en émulation Turbo-R. Edité par aoineko Le 07/02/2011 à 16h15


On est toujours ignorant avant de savoir.
Github    
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10730

Le 07/02/2011 à 16h46
et que ça marche aussi sur Ru-MSX mais pas sur un vrai MSX2
et que ce programme est trés dur a suivre avec le registre SP qui n'arrête pas de bouger avec des instructions INC SP

normalement dans les programmes que j'ai "un peu" décortiqués le registre SP est mis a une valeur fixe
ensuite on utlise PUSH et POP pour sauvegarder les registres
est ce ton compilateur C qui travaille de cette façon avec SP ?


:noel
Site web    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 07/02/2011 à 16h59
Oui. Je place la stack en mémoire au début, mais ensuite je n'y touche jamais moi-même.
Je sais que le compilateur fait des push/pop lors d'appel de fonction pour passer les paramètres, mais je savais pas qu'il touchait à SP.

Ce soir, je posterai les fonctions qui me semble douteuse. Entre autre, pour tester, j'avais fait une fonction pour passer 60Hz ; c'est peut-être problématique.

En tout cas, j'espère que ça viens de moi ; parce que si ça vient du compilo, j'suis mal barré. :moue


On est toujours ignorant avant de savoir.
Github    
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10730

Le 07/02/2011 à 17h08
peux tu faire une petite démo qui démarre en screen 8 et trace des lignes ou des rectangles pour tester


:noel
Site web    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 07/02/2011 à 18h35
Jipe :
peux tu faire une petite démo qui démarre en screen 8 et trace des lignes ou des rectangles pour tester




A priori, les premières versions du projet marchait sur un vrai MSX comme : carwar.zip et carwar v0.0.1.



Sinon, oui, je pourrai te faire une version super simplifié.


On est toujours ignorant avant de savoir.
Github    
Jipe Membre non connecté

Maire-adjoint

Rang

Avatar

Association

Inscrit le : 02/10/2009 à 19h41

Messages: 10730

Le 07/02/2011 à 18h52
oui ça fonctionne bien avec carwar.zip sur le turbo-r
je regarde les différences demain car ce soir je bosse


:noel
Site web    
aoineko Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : Shoutbox

Inscrit le : 02/01/2011 à 21h17

Messages: 2904

Le 08/02/2011 à 14h10
Nouvelle version de Carwar avec ajout d'un ombreur automatique des circuits : carwar_0_0_5.zip.

J'ai retiré aussi le passage forcé au 50Hz. Si ça plante toujours sur un vrai MSX, je posterai mon code d'initialisation (passage en mode 8 et init des zones mémoires) car c'est la seule partie qui a vraiment changé depuis la dernière version qui marchait.


On est toujours ignorant avant de savoir.
Github    
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie