fix volatile flag

This commit is contained in:
Diamond Lewis 2023-07-25 22:38:36 -05:00
parent ef9bea4c57
commit b3a2bd74ae
5 changed files with 9 additions and 6 deletions

View File

@ -218,6 +218,7 @@ extern tgt_param_form LEOtgt_param;
extern leo_sys_form LEO_sys_data;
extern vu8 LEOclr_que_flag;
extern vu16 LEOrw_flags;
// needs to not be volatile in some files
// extern vu16 LEOrw_flags;
#endif

View File

@ -1,7 +1,7 @@
#include <ultra64.h>
#include "libleo/internal.h"
// #pragma GLOBAL_ASM("asm/nonmatchings/libleo/leoint/leointerrupt.s")
extern vu16 LEOrw_flags;
void* read_write_track();

View File

@ -1,6 +1,8 @@
#include <ultra64.h>
#include "libleo/internal.h"
extern vu16 LEOrw_flags;
u32 mseq_tbl[0x10];
const u32 rd_mseq_code[0x10] = {

View File

@ -1,6 +1,8 @@
#include <ultra64.h>
#include "libleo/internal.h"
extern vu16 LEOrw_flags;
void leoRead(void) {
LEOrw_flags = 0;
leoRead_common(0x18);

View File

@ -1,7 +1,8 @@
#include <ultra64.h>
#include "libleo/internal.h"
#ifdef NON_MATCHING
extern u16 LEOrw_flags; // NOT volatile in this file!
void leoWrite(void) {
u32 message;
u32 start_lba;
@ -49,6 +50,3 @@ void leoWrite(void) {
LEOcur_command->header.sense = LEO_SENSE_NO_ADDITIONAL_SENSE_INFOMATION;
LEOcur_command->header.status = LEO_STATUS_GOOD;
}
#else
#pragma GLOBAL_ASM("asm/nonmatchings/libleo/leowrite/leoWrite.s")
#endif