示例#1
0
void mon_setup_dlg()
{
#ifdef MOD_SETTINGS
   setup_dlg();
   temp.rflags = RF_MONITOR;
   set_video();
#endif
}
示例#2
0
void main(void)
{
	/* First, copy the boot header into the "zeropage" */
	copy_boot_params();

	/* End of heap check */
	if (boot_params.hdr.loadflags & CAN_USE_HEAP) {
		heap_end = (char *)(boot_params.hdr.heap_end_ptr
				    +0x200-STACK_SIZE);
	} else {
		/* Boot protocol 2.00 only, no heap available */
		puts("WARNING: Ancient bootloader, some functionality "
		     "may be limited!\n");
	}

	/* Make sure we have all the proper CPU support */
	if (validate_cpu()) {
		puts("Unable to boot - please use a kernel appropriate "
		     "for your CPU.\n");
		die();
	}

	/* Tell the BIOS what CPU mode we intend to run in. */
	set_bios_mode();

	/* Detect memory layout */
	detect_memory();

	/* Set keyboard repeat rate (why?) */
	keyboard_set_repeat();

	/* Set the video mode */
	set_video();

	/* Query MCA information */
	query_mca();

	/* Voyager */
#ifdef CONFIG_X86_VOYAGER
	query_voyager();
#endif

	/* Query Intel SpeedStep (IST) information */
	query_ist();

	/* Query APM information */
#if defined(CONFIG_APM) || defined(CONFIG_APM_MODULE)
	query_apm_bios();
#endif

	/* Query EDD information */
#if defined(CONFIG_EDD) || defined(CONFIG_EDD_MODULE)
	query_edd();
#endif
	/* Do the last things and invoke protected mode */
	go_to_protected_mode();
}
示例#3
0
void init_n64()
{
	init_interrupts();
	
	init_video();
	set_video();
	dfs_init(DFS_DEFAULT_LOCATION);
	controller_init();
	timer_init();
}
示例#4
0
void mon_scr(char alt)
{
   temp.scale = temp.mon_scale;
   apply_video();

   memcpy(save_buf, rbuf, rb2_offs);
   paint_scr(alt);
   flip(); if (conf.noflic) flip();
   memcpy(rbuf, save_buf, rb2_offs);

   while (!process_msgs()) Sleep(20);
   temp.rflags = RF_MONITOR;
   temp.mon_scale = temp.scale;
   temp.scale = 1;
   set_video();
}
示例#5
0
        void PptvMedia::parse_url()
        {
            /*
             * 补充vvid、type、platform
             * cdn.jump.bwtype也在PptvMedia统一处理
             * cdn.jump.server_host 也在PptvMedia统一处理
             * cdn.drag.* 由派生类处理
             * cdn.* 
             * p2p.* 
             */
            url_.protocol("http");

            if (parse_video_param(parsed_video_, url_.param("cdn.video"))) {
                set_video(parsed_video_);
            }
            url_.param("cdn.video", ""); // clear

            if (parse_jump_param(parsed_jump_, url_.param("cdn.jump"))) {
                set_jump(parsed_jump_);
            }
            url_.param("cdn.jump", ""); // clear

            p2p_params_ = url_.param("p2p");
            url_.param("p2p", "");

            if (url_.param("type").empty()) {
                url_.param("type", str_cdn_type);
            }
            if (url_.param("platform").empty()) {
                url_.param("platform", str_cdn_platform);
            }
            if (url_.param("auth").empty()) {
                url_.param("auth", "55b7c50dc1adfc3bcabe2d9b2015e35c");
            }
            if (url_.param("vvid").empty()) {
                framework::string::Uuid vvid;
                vvid.generate();
                url_.param("vvid", vvid.to_string());
            }
        }
示例#6
0
        void PptvLive2::handle_async_open(
            boost::system::error_code const & ec)
        {
            if (ec) {
                response(ec);
                return;
            }

            framework::string::Url url;

            switch(open_step_) {
                case StepType::closed:
                    if (jump_ && video_ && segment_) {
                        open_step_ = StepType::finish;
                        response(ec);
                        break;
                    }
                    open_step_ = StepType::jumping;
                    LOG_INFO("jump: start");
                    async_fetch(
                        get_jump_url(url),
                        dns_live2_jump,
                        jump_info_, 
                        boost::bind(&PptvLive2::handle_async_open, this ,_1));
                    break;
                case StepType::jumping:
                    jump_info_.video.delay = jump_info_.delay_play_time;
                    set_video(jump_info_.video);
                    set_jump(jump_info_.jump);
                    set_segment(seg_);
                    open_step_ = StepType::finish;
                    response(ec);
                    break;
                default:
                    assert(0);
                    break;
            }
        }
示例#7
0
int main(void)
{
	int choice = 0;
	int ret = -1;
	char video_mode = 0;

	ret = dev_open();
	if(ret < 0) {
		PRINT_ERR("can not open \"%s\"\n", DEV_NAME);
		return -1;
	}

	while(1){
		printf("\n\n\n=====================================\n");
		printf("    0. Exit\n");
		printf("    1. sii902xA_GET_RAW_EDID_BLOCK_0\n");
		printf("    2. sii902xA_GET_RAW_EDID_BLOCK_1\n");
		printf("    3. sii902xA_GET_TIMING_DESC\n");
		printf("    4. sii902xA_GET_TIMING_BITMAP\n");
		printf("    5. sii902xA_SET_VIDEO\n");
		printf("    6. sii902xA_SET_AUDIO\n");
		printf("    7. sii902xA_START\n");
		printf("=====================================\n");
		printf("please input your choice number: ");
		scanf("%d", &choice);
		printf("_____________________________\n");
		switch(choice) {
			case 0:
				PRINT_INFO("Exit success\n\n");
				dev_close();
				return 0;
			case 1:
				get_raw_edid_0(edid, 128);
				break;
			case 2:
				get_raw_edid_1(edid, 128);
				break;
			case 3:
				get_timing_desc(&std_timing);
				break;
			case 4:
				get_timing_bitmap(&timing_bmp);
				break;
			case 5:
				printf("    please input video mode number: ");
				scanf("%d", &video_mode);
				set_video(&video_mode);
				break;
			case 6:
				PRINT_INFO("sii902xA_SET_AUDIO\n");
				break;
			case 7:
				hdmi_start();
				break;

			default:
				break;		
		};
	
	};

	dev_close();
	PRINT_INFO("Exit success\n\n");
	return 0;
}
示例#8
0
static error_t parse_opt (int key, char *arg, struct argp_state *state)
{
	int s,d;
	struct arguments *arguments = state->input;

	switch (key)
	{
		case 's':
			show_type();
			show_zcd();
			show_fnc();
			show_ycm();
			show_fblk();
			show_volume();
			show_mute();
			break;

		case 'm':
	        	mute();
			break;

		case 'u':
	        	unmute();
			break;

		case 'l':
			set_volume(atoi(arg));
			break;

		case 'z':
			set_zcd(atoi(arg));
			break;

		case 'f':
			set_fnc(atoi(arg));
			break;

		case 'y':
			set_ycm(atoi(arg));
			break;

		case 'v':
			if ( parse_route_arg(arg,&s,&d) < 0 )
			{
				return ARGP_ERR_UNKNOWN;
			}

			set_video(s,d);

			break;

		case 'a':
			if ( parse_route_arg(arg,&s,&d) < 0 )
			{
				return ARGP_ERR_UNKNOWN;
			}

			set_audio(s,d);

			break;

		default:
			return ARGP_ERR_UNKNOWN;
	}

	return 0;
}
示例#9
0
文件: iehelp.cpp 项目: tslabs/zx-evo
void showhelppp(const char *anchor = 0) //Alone Coder 0.36.6
{
   if (!hMSHTML) hMSHTML = LoadLibrary("MSHTML.DLL");
   if (!hURLMON) hURLMON = LoadLibrary("URLMON.DLL");

   tShowHTMLDialog Show = hMSHTML? (tShowHTMLDialog)GetProcAddress(hMSHTML, "ShowHTMLDialog") : 0;
   tCreateURLMoniker CreateMoniker = hURLMON? (tCreateURLMoniker)GetProcAddress(hURLMON, "CreateURLMoniker") : 0;

   HWND fgwin = GetForegroundWindow();
   if (!Show || !CreateMoniker)
   { MessageBox(fgwin, "Install IE4.0 or higher to view help", 0, MB_ICONERROR); return; }

   char dst[0x200];
   GetTempPath(sizeof dst, dst); strcat(dst, "us_help.htm");

   FILE *ff = fopen(helpname, "rb"), *gg = fopen(dst, "wb");
   if (!ff || !gg) return;

   for (;;)
   {
      int x = getc(ff);
      if (x == EOF) break;
      if (x == '{')
      {
         char tag[0x100]; int r = 0;
         while (r < sizeof(tag)-1 && !feof(ff) && (x = getc(ff)) != '}')
             tag[r++] = x;
         tag[r] = 0;
         if (tag[0] == '?')
         {
            RECT rc;
            GetWindowRect(fgwin, &rc);
            if (tag[1] == 'x')
                fprintf(gg, "%d", rc.right-rc.left-20);
            if (tag[1] == 'y')
                fprintf(gg, "%d", rc.bottom-rc.top-20);
         }
         else
         {
            char res[0x100]; GetPrivateProfileString("SYSTEM.KEYS", tag, "not defined", res, sizeof res, ininame);
            char *comment = strchr(res, ';'); if (comment) *comment = 0;
            int len; //Alone Coder 0.36.7
            for (/*int*/ len = strlen(res); len && res[len-1] == ' '; res[--len] = 0);
            for (len = 0; res[len]; len++) if (res[len] == ' ') res[len] = '-';
            fprintf(gg, "%s", res);
         }
      } else putc(x, gg);
   }
   fclose(ff), fclose(gg);

   char url[0x200];
   sprintf(url, "file://%s%s%s", dst, anchor?"#":nil, anchor?anchor:nil);
   WCHAR urlw[0x200];
   MultiByteToWideChar(AreFileApisANSI()? CP_ACP : CP_OEMCP, MB_USEGLYPHCHARS, url, -1, urlw, _countof(urlw));
   IMoniker *pmk = 0;
   CreateMoniker(0, urlw, &pmk);

   if (pmk)
   {
      bool restore_video = false;
      if (!(temp.rflags & (RF_GDI | RF_CLIP | RF_OVR | RF_16 | RF_32)))
      {
          temp.rflags = temp.rflags | RF_GDI;
          set_video();
          restore_video = true;
      }
      Show(fgwin, pmk, 0,0,0);
      pmk->Release();
#if 0
      if (dbgbreak)
      {
          temp.rflags = RF_MONITOR;
          set_video();
      }
      else
#endif
      {
          if (restore_video)
              apply_video();
      }
   }

   DeleteFile(dst);
}