@@ -51,6 +51,7 @@ VMFILE vram;
51
51
52
52
extern fifo_t serial_in ;
53
53
54
+ int active = 0 ;
54
55
55
56
56
57
typedef VMINT (* vm_get_sym_entry_t )(char * symbol );
@@ -233,8 +234,8 @@ void err_str(const char* str){
233
234
234
235
UInt32 rtcCurTime (void ){
235
236
VMUINT ret ;
236
- // vm_get_utc(&ret); // Get time since Epoch
237
- return (UInt32 )vm_get_tick_count ();
237
+ vm_get_utc (& ret ); // Get time since Epoch
238
+ return ret ; // (UInt32)vm_get_tick_count();
238
239
}
239
240
240
241
void * emu_alloc (_UNUSED_ UInt32 size ){
@@ -252,6 +253,7 @@ void handle_sysevt(VMINT message, VMINT param) {
252
253
switch (message ) {
253
254
case VM_MSG_CREATE :
254
255
case VM_MSG_ACTIVE :
256
+ active = 1 ;
255
257
layer_hdls [0 ] = vm_graphic_create_layer (0 , 0 , scr_w , scr_h , -1 );
256
258
layer_hdls [1 ] = vm_graphic_create_layer (0 , 0 , scr_w , scr_h , tr_color );
257
259
@@ -378,24 +380,28 @@ void handle_sysevt(VMINT message, VMINT param) {
378
380
break ;
379
381
380
382
case VM_MSG_INACTIVE :
383
+ active = 0 ;
381
384
vm_switch_power_saving_mode (turn_on_mode );
382
385
if ( layer_hdls [0 ] != -1 ){
383
- vm_graphic_delete_layer (layer_hdls [0 ]);
384
386
vm_graphic_delete_layer (layer_hdls [1 ]);
387
+ vm_graphic_delete_layer (layer_hdls [0 ]);
388
+ layer_hdls [0 ] = -1 ;
385
389
}
386
390
387
391
// Delete timers
388
392
if (soc_cycle_timer_id != -1 )
389
393
vm_delete_timer (soc_cycle_timer_id );
394
+ soc_cycle_timer_id = -1 ;
390
395
if (screen_timer_id != -1 )
391
396
vm_delete_timer (screen_timer_id );
397
+ screen_timer_id = -1 ;
392
398
393
399
// Commit data to file
394
- vm_file_commit (sd );
400
+ // vm_file_commit(sd);
395
401
396
402
// Close file handlers
397
- vm_file_close (sd );
398
- vm_file_close (vram );
403
+ // vm_file_close(sd);
404
+ // vm_file_close(vram);
399
405
break ;
400
406
case VM_MSG_QUIT :
401
407
if ( layer_hdls [0 ] != -1 ){
0 commit comments