J'essaie d'écrire un programme qui lit les caractères d'un fichier .dat correspondant à différentes couleurs à afficher dans le simulateur de DEL; x = off, R = rouge, etc. Mon problème est, je ne peux pas comprendre ce que je fais mal avec l'ouverture du fichier .dat. J'ai regardé autour et essayé tout ce que je peux penser, mais chaque fois que je m'assemble et que je cours, je reçois un -1 en $ v0 signifiant une erreur. Voici mon code pour l'ouverture/lecture/fermeture du fichier:Lecture de fichiers avec l'assemblage MIPS
.data
fin: .asciiz "maze1.dat" # filename for input
buffer: .asciiz ""
.text
#open a file for writing
li $v0, 13 # system call for open file
la $a0, fin # board file name
li $a1, 0 # Open for reading
li $a2, 0
syscall # open a file (file descriptor returned in $v0)
move $s6, $v0 # save the file descriptor
#read from file
li $v0, 14 # system call for read from file
move $a0, $s6 # file descriptor
la $a1, buffer # address of buffer to which to read
li $a2, 1024 # hardcoded buffer length
syscall # read from file
# Close the file
li $v0, 16 # system call for close file
move $a0, $s6 # file descriptor to close
syscall # close file
Le fichier maze1.dat est dans le même répertoire que le programme MIPS. Toute aide ou suggestion est grandement appréciée.