projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
moved savedata to thread
[carveJwlIkooP6JGAAIwe30JlM.git]
/
save.c
diff --git
a/save.c
b/save.c
index 76cfb3cdade24194da2dc6583cd0a50c0745ebb5..2c5e8fd3b8b1302a4db0fe4315290b2bf1d04dc7 100644
(file)
--- a/
save.c
+++ b/
save.c
@@
-2,12
+2,25
@@
#define SAVE_C
struct {
#define SAVE_C
struct {
- u8 buf[
1024
];
+ u8 buf[
1024
];
u32 len;
}
static savedata;
u32 len;
}
static savedata;
+static void skaterift_write_savedata_thread(void *){
+ FILE *fp = fopen( "save.bkv", "wb" );
+ if( fp ){
+ fwrite( savedata.buf, savedata.len, 1, fp );
+ fclose( fp );
+ }
+ skaterift_end_op();
+}
+
static void skaterift_write_savedata(void){
static void skaterift_write_savedata(void){
+ if( skaterift.async_op != k_async_op_none ) return;
+
+ skaterift_begin_op( k_async_op_write_savedata );
+
vg_msg sav = {0};
sav.buf = savedata.buf;
sav.max = sizeof(savedata.buf);
vg_msg sav = {0};
sav.buf = savedata.buf;
sav.max = sizeof(savedata.buf);
@@
-26,12
+39,7
@@
static void skaterift_write_savedata(void){
vg_msg_end_frame( &sav );
savedata.len = sav.len;
vg_msg_end_frame( &sav );
savedata.len = sav.len;
-
- FILE *fp = fopen( "save.bkv", "wb" );
- if( fp ){
- fwrite( savedata.buf, sav.len, 1, fp );
- fclose( fp );
- }
+ vg_loader_start( skaterift_write_savedata_thread, NULL );
}
static void skaterift_read_savedata(void){
}
static void skaterift_read_savedata(void){