亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? xmsdemo.c

?? C程序設計經典900例適合初學者
?? C
字號:
#include <stdio.h>
#include <dos.h>
#include <string.h>

// Note: If you want to use XMS function 0xB, this simple 
// xms_access routine only works for tiny, small, or medium 
// models where the value of the data segment does not change.

void xms_access (union REGS *inregs, union REGS *outregs)
  {
     union REGS in, out;
     struct SREGS segs;

     unsigned segs_ds, save_bx;
     unsigned flags;

     void far (*xms)(void);  // pointer to the XMS services

     // Get the entry point to the XMS services
     in.x.ax = 0x4310;
     int86x (0x2F, &in, &out, &segs);

     xms = (void far *) (((long) (segs.es) << 16) + out.x.bx);

     // Assign the input registers to the actual registers
 
     _AX = inregs->x.ax;
     _CX = inregs->x.cx;
     _DX = inregs->x.dx;
     _SI = inregs->x.si;
     _DI = inregs->x.di;    
     _BX = inregs->x.bx;

    xms();   // Call the XMS entry point.

    // Assign the registers to the output register structure  
    asm {     
      pushf
      push bx

      pop save_bx
      pop flags
    }

    outregs->x.ax = _AX;
    outregs->x.bx = save_bx;
    outregs->x.cx = _CX;
    outregs->x.dx = _DX;
    outregs->x.si = _SI;
    outregs->x.di = _DI;

    outregs->x.cflag = flags & 1;
    outregs->x.flags = flags;
  }


void main (void)
  {
    union REGS inregs, outregs;
    struct SREGS segs;

    FILE *data;

    char data_buffer[256];

    struct xms_move {
     long byte_count;         // Number of bytes to move
     unsigned source_handle;  // Data to move
     long source_offset;           
     unsigned destination_handle;  
     long destination_offset;
    } block; 

    unsigned handle;

    int string_length;
    long character_count = 0L;
    int transfer_error = 0;   // 1 if a transfer error occurs  
    int i, extra_byte;

    void xms_access (union REGS *, union REGS *); 
	
    inregs.x.ax = 0x4300;
    int86 (0x2F, &inregs, &outregs);

    if (outregs.h.al != 0x80)
      printf ("XMS driver not installed\n");
    else
      {
	 // Allocate the extended memory 
	 inregs.h.ah = 9;
	 inregs.x.dx = 64;  // Size 64Kb

	 xms_access (&inregs, &outregs);         

	 if (outregs.x.ax == 0)
	   printf ("Error allocating extended memory %2xH\n",
	     outregs.h.bl);
	 else
	   {
	     handle = outregs.x.dx;

	     // Read the file into a conventional memory
	     // buffer and then move the data to extended memory
 
	     if ((data = fopen ("\\AUTOEXEC.BAT", "r")) == NULL)
	       printf ("Error opening AUTOEXEC.BAT\n");
	     else
	       {
		 segread (&segs);

		 while (fgets (data_buffer, sizeof(data_buffer), data))
		   {
		     // Copy data_buffer to extended memory 
		     string_length = strlen(data_buffer);

		     block.byte_count = string_length + 1; 

		     // transfer amount must be even
		     if (block.byte_count % 2)
		       block.byte_count++;

		     block.source_handle = 0; 
		     block.source_offset = (void far *)
			 MK_FP(segs.ds, data_buffer);
		     block.destination_handle = handle;
		     block.destination_offset = character_count;
		     character_count += string_length + 1;

		     inregs.h.ah = 0xB;
		     inregs.x.si = (unsigned) &block;

		     xms_access (&inregs, &outregs);

		     if (outregs.x.ax == 0)
		       {
			  transfer_error = 1;
			  break;
		       }                                                           
		   }
	       }

	     if (transfer_error)
	       printf ("Error in data transfer\n");
	     else
	       {
		  block.destination_handle = 0;
		  block.source_handle = handle;
		  block.destination_offset = (void far *)
		    MK_FP(segs.ds, data_buffer);
		     
		  block.source_offset = 0L;
		  block.byte_count = sizeof(data_buffer);

		  while (block.source_offset <
		     character_count)
		   {    
		     if ((block.byte_count + block.source_offset) 
			> character_count)
		       block.byte_count = character_count - 
			 block.source_offset;

		     // Transfer amount must be even
		     if (block.byte_count % 2)
		       {
			 block.byte_count++;
			 extra_byte = 1;
		       }
		     else 
		       extra_byte = 0;

		     xms_access (&inregs, &outregs);                  
				
		     if (outregs.x.ax == 0)
		       {
			 transfer_error = 1;
			 break; 
		       } 
		      
		     for (i = 0; i < (block.byte_count - 
			  extra_byte); i++)
		       if (data_buffer[i])
			 putchar(data_buffer[i]);
 
		     block.source_offset += block.byte_count;
		  }                        
	       } 

	     if (transfer_error)
	       printf ("Error in data transfer\n");  

	     // Release extended memory 
	     inregs.h.ah = 0x0A;
	     inregs.x.dx = handle;

	     xms_access (&inregs, &outregs);

	     if (outregs.x.ax == 0)
	       printf ("Error releasing extending memory %2xH\n", 
		 outregs.h.bl);
	   }  
      }
  }  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜臀久久99精品久久久久宅男| 国产亚洲1区2区3区| 国产成人欧美日韩在线电影| 日本欧美肥老太交大片| 蜜臀av一区二区在线免费观看| 五月婷婷久久综合| 美国精品在线观看| 国产乱理伦片在线观看夜一区| 麻豆成人免费电影| 国产自产高清不卡| 男人的j进女人的j一区| 美日韩黄色大片| 国产大陆a不卡| 99天天综合性| 欧美卡1卡2卡| 精品国产不卡一区二区三区| 国产欧美一区二区精品仙草咪 | 国产精品99久| 成人av动漫网站| 91国偷自产一区二区三区观看| 精品1区2区3区| 欧美一级二级在线观看| 久久精品欧美一区二区三区不卡 | 亚洲人成精品久久久久久| 亚洲欧美另类在线| 日韩精品国产精品| 国产成+人+日韩+欧美+亚洲| 99久久婷婷国产| 91精品国产一区二区人妖| 久久精品亚洲精品国产欧美kt∨| 国产精品动漫网站| 日韩黄色片在线观看| 国产成人在线视频网址| 欧美主播一区二区三区| 欧美一级生活片| 亚洲视频在线观看一区| 日本午夜精品视频在线观看 | 国产精品亚洲专一区二区三区| 成人国产免费视频| 在线不卡的av| 国产精品理论片在线观看| 午夜精品久久久久久久久| 国产真实乱偷精品视频免| 99久久精品免费精品国产| 欧美tickling网站挠脚心| 亚洲国产成人tv| 成人理论电影网| 欧美sm美女调教| 天天综合日日夜夜精品| 成人av网站在线观看免费| 日韩欧美中文字幕公布| 亚洲一区国产视频| 大美女一区二区三区| 欧美一卡二卡在线| 午夜一区二区三区在线观看| 成人av电影观看| 久久尤物电影视频在线观看| 无码av中文一区二区三区桃花岛| av一本久道久久综合久久鬼色| 久久久综合九色合综国产精品| 午夜成人在线视频| 欧美午夜在线一二页| 亚洲日本一区二区| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 欧美人与z0zoxxxx视频| 亚洲美女电影在线| av午夜一区麻豆| 国产精品美女一区二区三区| 国产一区二区三区四| 91精品国产综合久久久久久漫画| 亚洲一区二区欧美| 在线观看日韩毛片| 一区二区激情视频| 在线亚洲免费视频| 夜夜嗨av一区二区三区网页| 色就色 综合激情| 一区二区三区精品视频| 日本精品一区二区三区高清 | 91国在线观看| 亚洲一区二区视频在线观看| 在线观看日韩精品| 亚洲一区二区美女| 欧美一区二区三区视频免费 | 国产女同性恋一区二区| 国产成a人亚洲精品| 亚洲国产成人自拍| 91丨porny丨户外露出| 一区精品在线播放| 在线免费观看日韩欧美| 亚洲福利一区二区| 日韩一级黄色大片| 国产精品一区三区| 亚洲日本在线观看| 欧美日韩精品免费| 老司机免费视频一区二区| 久久久综合精品| 99国产欧美另类久久久精品| 一区二区日韩av| 精品久久久久久综合日本欧美| 国产专区综合网| 亚洲图片你懂的| 欧美色成人综合| 日韩成人精品视频| 国产丝袜在线精品| 欧美性一二三区| 国产一区二区三区免费看| 亚洲猫色日本管| 日韩午夜小视频| 99re成人在线| 青青国产91久久久久久| 久久久91精品国产一区二区三区| 91丨九色丨国产丨porny| 日日噜噜夜夜狠狠视频欧美人| 欧美精品一区二区久久久| aaa亚洲精品| 另类欧美日韩国产在线| 一区二区三区av电影| 久久这里只有精品视频网| 欧美日韩国产综合一区二区三区 | 懂色av中文一区二区三区| 亚洲国产精品天堂| 国产精品视频在线看| 欧美日韩国产另类一区| www.在线欧美| 国产成人夜色高潮福利影视| 日精品一区二区三区| 国产精品盗摄一区二区三区| 日韩一区二区在线看片| 99久久久久免费精品国产 | 亚洲国产精品ⅴa在线观看| 欧美日韩亚洲综合一区| 97久久超碰国产精品电影| 国产精选一区二区三区| 免费视频一区二区| 婷婷综合在线观看| 亚洲主播在线播放| 17c精品麻豆一区二区免费| 日韩免费电影一区| 宅男噜噜噜66一区二区66| 在线观看亚洲精品视频| 91丨九色丨尤物| 99久久久精品免费观看国产蜜| 国产精品小仙女| 国内成人精品2018免费看| 老汉av免费一区二区三区 | 久久一区二区视频| 日韩欧美在线影院| 91精品国产综合久久久蜜臀粉嫩 | 精品精品欲导航| 欧美成va人片在线观看| 欧美高清一级片在线| 欧美日韩一卡二卡三卡| 在线看日韩精品电影| 欧美在线不卡一区| 欧美午夜精品一区二区三区| 欧美三级日韩三级国产三级| 欧美色网一区二区| 7777精品伊人久久久大香线蕉超级流畅| 91成人在线观看喷潮| 欧美三级欧美一级| 欧美精品aⅴ在线视频| 日韩精品资源二区在线| 久久综合丝袜日本网| 国产欧美精品区一区二区三区 | 亚洲乱码国产乱码精品精可以看 | av一区二区三区在线| 91丝袜美腿高跟国产极品老师| 成人av免费网站| 欧洲一区在线观看| 欧美精品日韩一区| 2022国产精品视频| 亚洲欧洲日韩av| 亚洲www啪成人一区二区麻豆| 琪琪久久久久日韩精品| 国产乱理伦片在线观看夜一区| 暴力调教一区二区三区| 欧美人与禽zozo性伦| 精品国产乱子伦一区| 中文字幕不卡的av| 亚洲国产精品一区二区www| 久久99精品国产91久久来源| 成人丝袜18视频在线观看| 欧美午夜精品久久久久久孕妇| 欧美mv和日韩mv国产网站| 中文字幕在线视频一区| 一区二区三区在线免费播放| 精品一区二区影视| 色综合中文字幕| 欧美成人免费网站| 亚洲另类在线制服丝袜| 免费在线观看一区二区三区| 波多野结衣欧美| 日韩欧美高清dvd碟片| 亚洲人成网站精品片在线观看| 蜜臀久久99精品久久久久宅男| 91在线国产福利| 亚洲精品在线电影| 亚洲成年人网站在线观看| 成人精品视频一区二区三区| 91黄视频在线|