Annotation of previous_trunk/src/video.c, revision 1.1.1.1

1.1       root        1: /*
                      2:   video.c
                      3: 
                      4:   This file is distributed under the GNU Public License, version 2 or at
                      5:   your option any later version. Read the file gpl.txt for details.
                      6: 
                      7: */
                      8: const char Video_fileid[] = "Previous video.c : " __DATE__ " " __TIME__;
                      9: 
                     10: #include <stdbool.h>
                     11: #include <SDL_endian.h>
                     12: 
                     13: #include "configuration.h"
                     14: #include "cycInt.h"
                     15: #include "ioMem.h"
                     16: #include "m68000.h"
                     17: #include "screen.h"
                     18: #include "shortcut.h"
                     19: #include "nextMemory.h"
                     20: #include "video.h"
                     21: #include "dma.h"
                     22: #include "sysReg.h"
                     23: #include "tmc.h"
                     24: #include "nd_sdl.hpp"
                     25: 
                     26: /*--------------------------------------------------------------*/
                     27: /* Local functions prototypes                                   */
                     28: /*--------------------------------------------------------------*/
                     29: 
                     30: 
                     31: /*-----------------------------------------------------------------------*/
                     32: /**
                     33:  * Reset video chip
                     34:  */
                     35: void Video_Reset(void) {
                     36:        Video_StartInterrupts(0);
                     37: }
                     38: 
                     39: #define NEXT_VBL_FREQ 68
                     40: 
                     41: /**
                     42:  * Start VBL interrupt
                     43:  */
                     44: void Video_StartInterrupts ( int PendingCyclesOver ) {
                     45:     CycInt_AddRelativeInterruptUs((1000*1000)/NEXT_VBL_FREQ, 0, INTERRUPT_VIDEO_VBL);
                     46: }
                     47: 
                     48: /**
                     49:  * Generate vertical video retrace interrupt
                     50:  */
                     51: static void Video_InterruptHandler(void) {
                     52:        if (ConfigureParams.System.bTurbo) {
                     53:                tmc_video_interrupt();
                     54:        } else if (ConfigureParams.System.bColor) {
                     55:         color_video_interrupt();
                     56:     } else {
                     57:         dma_video_interrupt();
                     58:     }
                     59: }
                     60: 
                     61: 
                     62: /*-----------------------------------------------------------------------*/
                     63: /**
                     64:  * VBL interrupt : set new interrupts, draw screen, generate sound,
                     65:  * reset counters, ...
                     66:  */
                     67: static bool statusBarToggle;
                     68: void Video_InterruptHandler_VBL ( void ) {
                     69:        CycInt_AcknowledgeInterrupt();
                     70:     host_blank(0, MAIN_DISPLAY, true);
                     71:     if(statusBarToggle) Update_StatusBar();
                     72:     statusBarToggle = !statusBarToggle;
                     73:     Video_InterruptHandler();
                     74:     CycInt_AddRelativeInterruptUs((1000*1000)/NEXT_VBL_FREQ, 0, INTERRUPT_VIDEO_VBL);
                     75: }
                     76: 
                     77: 
                     78: 
                     79: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.