@@ -60,7 +60,6 @@ typedef struct _framerec {
6060 void * lr ;
6161} frame_rec , * frame_rec_t ;
6262
63- static void * exception_xfb = (void * )0xC1700000 ; //we use a static address above ArenaHi.
6463static int reload_timer = -1 ;
6564static u32 rumble_cmds [PAD_CHANMAX ] = {
6665 PAD_MOTOR_STOP , PAD_MOTOR_STOP , PAD_MOTOR_STOP , PAD_MOTOR_STOP
@@ -72,7 +71,6 @@ extern void fpu_exceptionhandler(frame_context*);
7271extern void irq_exceptionhandler (frame_context * );
7372extern void dec_exceptionhandler (frame_context * );
7473extern void default_exceptionhandler (frame_context * );
75- extern void VIDEO_SetFramebuffer (void * );
7674extern void __dsp_shutdown (void );
7775extern void __reload (void );
7876#if defined(HW_DOL )
@@ -260,14 +258,15 @@ static void waitForReload(void)
260258//just implement core for unrecoverable exceptions.
261259void c_default_exceptionhandler (frame_context * pCtx )
262260{
261+ void * framebuffer ;
263262 u16 xstart ,ystart ;
264263 u16 xres ,yres ,stride ;
265264
266265 __dsp_shutdown ();
267266 GX_AbortFrame ();
268267 VIDEO_GetFrameBufferPan (& xstart ,& ystart ,& xres ,& yres ,& stride );
269- CON_Init ( exception_xfb , xstart , ystart , xres , yres , stride * VI_DISPLAY_PIX_SZ );
270- VIDEO_SetFramebuffer ( exception_xfb );
268+ framebuffer = VIDEO_GetCurrentFramebuffer ( );
269+ CON_Init ( framebuffer , xstart , ystart , xres , yres , stride * VI_DISPLAY_PIX_SZ );
271270
272271 kprintf ("\n\n\n\tException (%s) occurred!" , exception_name [pCtx -> nExcept ]);
273272
0 commit comments