MSX Village forum

La Place des Développeurs Lecture d'un fichier sur la BEER IDE en assembleur Quel vecteurs utiliser et quel registres ???

6502man Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 19/08/2013 à 18h14

Messages: 815

Le 12/11/2014 à 23h42
Donc je recherche tous les infos possibles pour pouvoir accéder au fonctions de lecture de secteurs / lecture de fichier avec la BEER IDE.

Si vous avez des infos, merci d'avance :)


Site web    
GDX Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 17/01/2011 à 08h52

Messages: 3004

Le 13/11/2014 à 00h27
C'est comme sur disquette, il faut utiliser les routines du MSX-DOS 1.xx.

Il y a un exemple sur MRC :

http://www.msx.org/wiki/MSX-DOS

Il est peu documenté pour les débutants par contre. Il faut savoir ce qu'est un FCB par exemple.
   
6502man Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 19/08/2013 à 18h14

Messages: 815

Le 13/11/2014 à 20h31
Merci :)

C'est exactement ce qu'il me faut, il y aussi toute la liste des fonctions et des appels SUPER.


Site web    
6502man Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 19/08/2013 à 18h14

Messages: 815

Le 15/11/2014 à 09h41
J'ai fait quelques test en émulation (blue msx) mais avec une Sunrise IDE car impossible d'émuler la BEER :(

Y a t'il des différences de comportement entre la Sunrise et la Beer au niveau des accès DISK IDE ?


Site web    
GDX Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 17/01/2011 à 08h52

Messages: 3004

Le 15/11/2014 à 10h03
Normalement, la différence majeure entre toutes les sortes de disque, c'est le formatage et partitionage.
Autrement, c'est rare les disques qui ne sont pas compatible au moins avec l'MSX-DOS1.
La Beer n'est pas compatible avec l'MSX-DOS2.
   
6502man Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 19/08/2013 à 18h14

Messages: 815

Le 15/11/2014 à 10h17
Okay donc ca va me permettre de debugger sur emu avec Sunrise avant de tester sur machine réel avec une Beer.

Par contre j'ai un peu de mal avec le Z80, Je n'ai pas compris pourquoi un LD DE,($1000) par exemple me retourne $FF00 au lieu de $00FF :|

Faut que j'étudie un peu plus le Z80 ...


Site web    
z80 Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 17/05/2013 à 22h52

Messages: 956

Le 15/11/2014 à 20h07
Le Z80 utilise de Little Indian comme les CPU Intel. Peut-être que les CPU dont tu as l'habitude utilisent eux le Big Indian, comme le font les CPU Motorola. Edité par z80 Le 15/11/2014 à 20h08


TurboR GT (1Mo), CANON V20! ( en kit, modif 2+ en cours) :top
Pas encore retrouvés: V9990, Grafx9000, SUNRISE IDE 2x CF, SUNRISE MOONSOUND, FM PAC, MUSIC MODULE, NMS8280, SD SNATCHER,... :\'(
   
z80 Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 17/05/2013 à 22h52

Messages: 956

Le 15/11/2014 à 20h10
Je te conseil la lecture de "programmation du z80" par Rodnay Zaks. Il a écrit aussi pour le 6502 que tu sembles connaître.


TurboR GT (1Mo), CANON V20! ( en kit, modif 2+ en cours) :top
Pas encore retrouvés: V9990, Grafx9000, SUNRISE IDE 2x CF, SUNRISE MOONSOUND, FM PAC, MUSIC MODULE, NMS8280, SD SNATCHER,... :\'(
   
SveN Membre non connecté

Villageois

Rang

Avatar

Groupe : compte ++

Inscrit le : 22/11/2011 à 21h14

Messages: 865

Le 19/11/2014 à 12h52
6502man :
J'ai fait quelques test en émulation (blue msx) mais avec une Sunrise IDE car impossible d'émuler la BEER :(
La BEER est pourtant émulée par BlueMSX.. :hum


Philips.NMS.8245/50/80, Sony.F1XV/HBF-700D, Pana.FSA1FX/A1WX(x2)/A1GT, OCM, GR8BIT.... et ...
   
Fabf Membre non connecté

Conseiller Municipal

Rang

Avatar

Groupe : compte ++

Inscrit le : 24/08/2010 à 20h55

Messages: 4833

Le 19/11/2014 à 14h41
SveN :
6502man :
J'ai fait quelques test en émulation (blue msx) mais avec une Sunrise IDE car impossible d'émuler la BEER :(
La BEER est pourtant émulée par BlueMSX.. :hum


Non on s'y est tous cassé les dents dans le topic sur la fabrication de la BEER :(
6502man Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 19/08/2013 à 18h14

Messages: 815

Le 19/11/2014 à 21h52
Merci Z80 :)

Evidemment le Z80 travail en little indian :siffle

Bon j'ai fait des testes en mode lecture par secteur et lecture par fichier (bloc ###) et sans surprise le mode d'accès par secteur est plus fluide (tout du moins sur émulateur avec une sunrise).

....


Site web    
6502man Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 19/08/2013 à 18h14

Messages: 815

Le 19/11/2014 à 23h08
Comment créer une interruption en assembleur sous MSX-DOS et est ce qu'elle restera active même pendant des accès disk ?


Site web    
z80 Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 17/05/2013 à 22h52

Messages: 956

Le 20/11/2014 à 12h04
6502man :
Comment créer une interruption en assembleur sous MSX-DOS et est ce qu'elle restera active même pendant des accès disk ?




Oui, mais une interruption généré par qui? pour faire quoi?


TurboR GT (1Mo), CANON V20! ( en kit, modif 2+ en cours) :top
Pas encore retrouvés: V9990, Grafx9000, SUNRISE IDE 2x CF, SUNRISE MOONSOUND, FM PAC, MUSIC MODULE, NMS8280, SD SNATCHER,... :\'(
   
6502man Membre non connecté

Villageois

Rang

Avatar

Inscrit le : 19/08/2013 à 18h14

Messages: 815

Le 20/11/2014 à 12h16
Une interruption généré par mon programme !



En faite dans l'idée ca serait ca :







START

déclare l'interuption INT



BOUCLEPRINCIPALE

Récupére valeurdeDE

compare D avec $XX

Si égal alors saut à sous routine ADD

JR BOUCLEPRINCIPALE



INT

récupére valeurdeDE

lit un octet en RAM (valeurdeDE)

incemente valeurdeDE

stocke valeurdeDE

sortie de INT



ADD

rempli la RAM

sortie de DE par JR BOUCLEPRINCIPALE





.DB valeurdeDE = $00,$00









Dans le principe c'est ca, évidement le programme seras un peu plus complet et complex ;)


Site web    
GDX Membre non connecté

Conseiller Municipal

Rang

Avatar

Inscrit le : 17/01/2011 à 08h52

Messages: 3004

Le 20/11/2014 à 13h26
Les routines du disque coupent les interruptions et les réactives. On s'en rend compte facilement avec les lecteurs de disquettes lorsque le MSX joue une musique car les accès à la disquette sont lents.
On s'en rend moins compte avec un disque très rapide car ça coupe les interruptions beaucoup moins longtemps. Les interruptions sont aussi coupées et réactivés lors des accès au VDP.

Il faut en tenir compte lorsqu'on veut contrôler les interruptions.
   
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie