青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

socketref,再見(jiàn)!高德

https://github.com/adoggie

  C++博客 :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
  246 Posts :: 4 Stories :: 312 Comments :: 0 Trackbacks

常用鏈接

留言簿(54)

我參與的團(tuán)隊(duì)

搜索

  •  

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

  
硬盤(pán)鎖 HDD3.EXE

   程序:   zbin    
1997-04-01  上海市經(jīng)濟(jì)管理學(xué)院
    
    曾有許多人抱怨自己工作的PC由于他人非法的使用,而導(dǎo)致工作文件丟失損壞,或者操作系統(tǒng)損壞,所以諸多人采用CMOS 加密的方法,但只有高版本的BIOS才具此功能,況且在CMOS放電之后此功能失效,故行之有效的方法就是對(duì)硬盤(pán)進(jìn)行加密.
    本人采用重寫(xiě)硬盤(pán)主引導(dǎo)扇區(qū)的方法,隱藏硬盤(pán)分區(qū)表,接管INT 13H,徹底實(shí)現(xiàn)只能從硬盤(pán)啟動(dòng),拒絕啟動(dòng)軟盤(pán)訪問(wèn)硬盤(pán)的功能.
    首先闡述一下PC啟動(dòng)的步驟:
    
1. PC 加電BIOS 自舉,將硬盤(pán)物理第一扇區(qū)(主引導(dǎo)扇區(qū))讀至 0000:7C00H , 檢測(cè)引導(dǎo)扇區(qū)的標(biāo)志55H AAH ,程序 IP 跳至 7C00H
    
2. 主引導(dǎo)扇區(qū)得到控制權(quán),引導(dǎo)程序檢測(cè)分區(qū)表是否非法,取得可啟動(dòng)分區(qū)的系統(tǒng)引導(dǎo)扇區(qū)的位置,調(diào)用INT 13H 將系統(tǒng)引導(dǎo)扇區(qū)(諸如 DOS 系統(tǒng))讀到0000:7C00H,IP 跳至7C00H.
    
3.系統(tǒng)(DOS)開(kāi)始啟動(dòng),讀IO.SYS,MSDOS.SYS,CONFIG.SYS,AUTOEXEC.BAT,       完成一系列啟動(dòng)工作.
本人程序主要思路如下:
1.    將原有主引導(dǎo)扇區(qū)WRITE 至 0磁頭0道13H扇,將漢字的字模WRITE至0磁頭0道21H之后的三個(gè)扇區(qū)
  
2.  改寫(xiě)原有主引導(dǎo)扇區(qū)
     使啟動(dòng)軟盤(pán)不可訪問(wèn)硬盤(pán)

  

  
本程序的特點(diǎn)是在操作系統(tǒng)啟動(dòng)之前,
利用BIOS 10H AH
=11H 的子功能,將漢字顯示在
屏幕上,所以事先應(yīng)取得所要顯示漢字的字模
,將二進(jìn)制字模轉(zhuǎn)換成能插入?yún)R編程序,且
能被MASM.EXE編譯的數(shù)據(jù)(CPP,PROMPT1
之后的數(shù)據(jù))



     ;        ;
97'     張斌
     code segment
     assume cs:code,ds:code,es:code       ; 程序同段
    
 first:
               mov ax,ds
               mov old_ds,ax
               mov ch,
0
               mov cl,
byte ptr es:[80h]
               cmp cx,
0
               jne xxx
               jmp begin
    xxx:       mov si,81h
    loop1:      lodsb
               cmp al,
'#'
                  je m1
                  loop loop1
                  jmp begin
         m1:
                  lodsb
                  cmp al,
'u'
                  jne t1

         t2:
                     mov ax,cs
                     mov es,ax
                     mov ax,201h
                     mov bx,offset buf
                     mov cx,13h
                     mov dx,80h
                     
int 13h
                     cmp 
byte ptr es:[buf+1fdh],'B'        ;
                     je t3
                  
                      mov ax,cs
                      mov ds,ax
                      lea dx,msg3
                      mov ah,
9
                      
int 21h
                      jmp exit

         t3:          
                     mov 
byte ptr es:[buf+1fdh],0
                     mov ax,cs
                     mov es,ax
                     mov ax,301h     
                     mov bx,offset buf
                     mov cx,01h
                     mov dx,80h
                     
int 13h
                     mov ax,301h
                     mov bx,offset buf
                     mov dx,80h
                     mov cx,13h
                     
int 13h
                     mov ax,cs
                     mov ds,ax
                     lea dx,msg4
                     mov ah,
9
                     
int 21h
                     jmp exit
                      
          t1:         cmp al,
'U'
                     je t2
               ;
**********************
                     push ax
                   mov ax,cs
                   mov es,ax
                   mov bx,offset buf
                   mov ax,201h
                   mov cx,21h
                   mov dx,80h
                   
int 13h
                   pop ax
                   mov di, offset buf
+226
                   mov word ptr cs:[buf
+224],0
                   cmp al,
'p'
                   jne p1

       p2:         lodsb
                   cmp al,0dh
                   je p3
                   stosb
                   inc word ptr cs:[buf
+224]
                   jmp p2

         p3:       
                    mov ax,cs
                    push ax
                    pop es
                   mov ax,0301h
                mov bx,offset buf
                mov cx,21h
                mov dx,80h
                
int 13h
                jmp exit

      p1:       cmp al,
'P'
                je p2  
      begin:      
                mov ax,code
                mov ds,ax
                mov es,ax
                jmp second                    ; 以上為程序拾取命令行參數(shù)
;
**************************  程序說(shuō)明
cpp  db  008h,01dh,0f1h,011h,011h,0fdh,011h,038h,035h,054h,050h,091h,010h,010h,017h,010h
 db  004h,0feh,004h,004h,004h,0fch,004h,000h,0fch,020h,020h,0fch,020h,020h,0feh
 db  000h,001h,000h,03fh,020h,02fh,020h,021h,020h,02fh,020h,020h,020h,040h,040h
 db  082h,001h,000h,088h,0fch,000h,0f8h,020h,040h,080h,0fch,088h,090h,080h,080h
 db  080h,080h,000h,000h,000h,000h,000h,018h,018h,000h,000h,000h,018h,018h,000h
 db  000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h
 db  000h,000h,000h,000h,000h,000h,000h,0feh,0c6h,086h,00ch,018h,030h,060h,0c2h
 db  0c6h,0feh,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h
 db  000h,018h,018h,000h,000h,000h,000h,000h,000h,0fch,066h,066h,066h,07ch,066h
 db  066h,066h,066h,0fch,000h,000h,000h,000h,000h,000h,018h,018h,000h,038h,018h
 db  018h,018h,018h,018h,03ch,000h,000h,000h,000h,000h,000h,000h,000h,000h,0dch
 db  066h,066h,066h,066h,066h,066h,000h,000h,000h,000h,000h,000h,000h,000h,000h
 db  000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h
 db  000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,03ch
 db  066h,0c2h,0c0h,0c0h,0c0h,0c0h,0c2h,066h,03ch,000h,000h,000h,000h,02eh,057h
 db  0cfh,06dh,0c5h,07eh,0feh,0eeh,0d7h,0ceh,0efh,07dh,0a2h,068h,08eh,047h,07dh
 db  03dh,023h,018h,083h,0ffh,0eeh,0f7h,0eeh,07eh,077h,0fch,066h,061h,0f3h,043h
 db  045h,053h,053h,021h,072h,0c7h,0ceh,0c6h,0cfh,0cfh,0d7h,07eh,056h,04dh,0feh
 db  021h,0e4h,014h,0fdh,066h,067h,06eh,07dh,07dh,067h,076h,06fh,0e6h,047h,046h
 db  047h,045h,054h,050h,05fh,05bh,021h,03ah,01eh,018h,05dh,05eh,05fh,07ch,045h
 db  04eh,021h,07bh,001h,000h,045h,046h,050h,077h,0dch,0dfh,0edh,0fch,0ceh,07ch
 db  04eh,0cfh,07dh,054h,046h,041h,0f4h,061h,0e5h,06fh,076h,067h,076h,076h,067h
 db  0feh,054h,021h,008h,00ch,045h,053h,053h,07fh,070h,0fdh,031h,033h,03fh,030h
 db  036h,05fh,043h,04fh,050h,059h,040h,023h,00fh,000h,047h,053h,045h,047h,052h
 db  045h,041h,044h,021h,0bfh,00fh,000h,046h,053h,0d6h,0c7h,0d7h,0ceh,0ceh,0e7h
 db  0deh,07ch,07dh,053h,054h,049h,04dh,045h,021h,05eh,011h,000h,047h,07fh,0d6h
 db  0feh,0c9h,0c3h,0cfh,07ch,021h,0b6h,011h,000h,046h,053h,054h,052h,04ch,0ddh
 db  07eh,067h,0edh,063h,068h,0ffh,05fh,04dh,04bh,04eh,041h,04dh,045h,0afh,003h
 db  000h,006h,05fh,05fh,05fh,062h,072h,06bh,0f3h,000h,000h,008h,05fh,05fh,07fh
 db  07ah,07fh,07eh,07dh,07ah,0dbh,018h,07eh,007h,05fh,05fh,05fh,073h,062h,072h
 db  06bh,0f3h,000h,007h,05fh,05fh,072h,07fh,07eh,065h,072h,081h,000h,009h,05fh
 db  07ah,06dh,0efh,0f7h,0f6h,0ffh,0f7h,0efh,0fch,03ch,006h,05fh,063h,070h,075h
 db  074h,073h,068h,007h,000h,009h,05fh,063h,072h,065h,061h,074h,06eh,065h,077h
 db  013h,006h,07eh,0dfh,0e7h,0f6h,07fh,067h,076h,076h,06dh,07dh,070h,013h,006h
 db  000h,00ah,05fh,07eh,0e7h,0f6h,0e7h,07dh,0eeh,0eeh,0efh,0e7h,07dh,005h,000h
 db  009h,05fh,066h,069h,06eh,064h,06eh,065h,078h,0feh,0a3h,00ah,009h,05fh,066h
 db  070h,075h,074h,063h,068h,079h,07ah,0fbh,01ch,018h,05fh,07fh,07dh,07ch,07eh
 db  069h,073h,06bh,0afh,008h,000h,01ch,07fh,07fh,07dh,07ch,07ch,07dh,078h,07ch
 db  07fh,06eh,066h,06fh,0e1h,013h,000h,008h,05fh,068h,061h,072h,0feh,065h,072h
 db  072h,02fh,00ch,000h,005h,05fh,069h,074h,07fh,06dh,0ceh,0c7h,0d7h,0dfh,0efh
 db  0e7h,06dh,07bh,06dh,070h,078h,00dh,007h,05fh,0ffh,0ebh,0f4h,0e5h,0fdh,076h
 db  09eh,00fh,0c6h,07fh,070h,075h,074h,063h,068h,062h,0d6h,0ffh,0f9h,040h,018h
 db  000h,000h,000h,000h,000h,0e0h,0ffh,0c2h,041h
 



;
********************輸入啟動(dòng)密碼 保存到21H 扇區(qū)  load address 0:8200h
prompt1 db  020h,020h,020h,0fdh,022h,045h,050h,093h,0fah,013h,03ah,0d3h,012h,012h,012h,012h
 db  040h,0a0h,0a0h,010h,00eh,0f4h,000h,0c4h,054h,0d4h,054h,0d4h,054h,044h,044h
 db  0cch,004h,002h,001h,001h,001h,002h,002h,002h,004h,004h,008h,008h,010h,020h
 db  040h,080h,000h,000h,000h,000h,000h,080h,080h,080h,040h,040h,020h,020h,010h
 db  010h,00eh,004h,001h,000h,01fh,010h,010h,010h,01fh,010h,010h,010h,017h,024h
 db  024h,044h,087h,004h,000h,084h,0feh,004h,004h,004h,0fch,000h,000h,004h,0feh
 db  004h,004h,004h,0fch,004h,000h,000h,07ch,000h,001h,0feh,010h,010h,020h,024h
 db  042h,0feh,042h,001h,002h,004h,040h,040h,040h,044h,0feh,044h,044h,044h,044h
 db  044h,084h,084h,084h,004h,028h,010h,002h,001h,07fh,042h,089h,028h,04bh,00ch
 db  077h,001h,021h,021h,021h,021h,03fh,020h,000h,000h,0feh,002h,024h,0c8h,004h
 db  010h,0f0h,000h,008h,008h,008h,008h,0f8h,008h,000h,07dh,010h,011h,011h,021h
 db  03dh,065h,0a5h,024h,024h,027h,024h,03ch,024h,000h,010h,0f8h,010h,010h,010h
 db  010h,010h,010h,0fch,004h,024h,0f4h,004h,004h,014h,008h,000h,000h,000h,000h
 db  018h,018h,000h,000h,000h,018h,018h,000h,000h,000h,000h,000h,000h,000h,000h
 db  000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h   
;prompt1_number dw 
224
password_long dw 
3             ;密碼長(zhǎng)度
password db 
'pig',0 ,10 dup(0)     ;密碼存放處
password_buf db 
20 dup(0)       ; ;輸入密碼的緩沖區(qū)
 cur_pos dw 0e20h       
              number dw 
0 
          tmpdi dw 
0
          tmpal db 
0
tmpip dw 
0
tmpcs dw 
0

;
*************************************
              ;從此開(kāi)始512字節(jié)為改寫(xiě)的硬盤(pán)引導(dǎo)程序,將被寫(xiě)入引導(dǎo)扇區(qū) 
v1:                     ;hard disk boot from here
!
                 mov ax,
0
                 mov ss,ax
                 mov ds,ax
                 mov es,ax
                 mov sp,7c00h
                 sti
                mov ah,
0
                   mov al,03h
                   
int 10h      ;80*25  模式
                mov cx,200h
                mov si,7c00h
                mov di,600h
                rep movsb
                db 0eah
                dw bb
-v1+600h,0h

          bb:
                mov ax,0600h
                mov bh,00h
                mov cx,
0
                mov dx,2050h
                
int 10h       ;清屏
            ;
***********************    
                ;
**********
                mov ax,0201h
                mov bx,8200h
                mov cx,0021h
                mov dx,80h
                
int 13h      ;  ;調(diào)字模到內(nèi)存1

                mov ax,0202h
                mov bx,8400h    ;調(diào)字模到內(nèi)存2
                mov cx,22h
                mov dx,80h
                
int 13h
            ;
*****************************
                   ; the first begin
           mov ax,
0
           mov es,ax
           mov bp,08200h
           mov ax,1100h
           mov cx,
14
           mov bh,
16
           mov bl,
0
           mov dx,0d0h
              
int 10h          ;將字模裝入BIOS
      ;
*****************
                mov ah,
2
                mov bh,
0
             mov dx,0a18h
             
int 10h
                mov word ptr cs:[8200h
+cur_pos-prompt1],dx 
                mov cx,
14
                mov al,0d0h
          
            rx: push cx
             mov ah,09h
              mov bl,0ah
             mov cx,
1   
             
int 10h
             inc al
             mov ah,
2
             mov dx,word  ptr cs:[8200h
+cur_pos-prompt1]
                 inc dl
                mov word ptr cs:[8200h
+cur_pos-prompt1],dx 
             
int 10h
             pop cx
             loop rx            ;first end    顯示 “輸入啟動(dòng)密碼:” 字符串
      ;
**********************************
           mov ax,
0
           mov es,ax
           mov bp,08400h
           mov ax,1100h
           mov cx,
12
           mov bh,
16
           mov bl,
0
           mov dx,090h
          
int 10h
      ;
*****************
                mov ah,
2
                mov bh,
0
             mov dx,01738h
             
int 10h
                mov word ptr cs:[8200h
+cur_pos-prompt1],dx 
             mov cx,
12
              mov al,090h
      rx2:     push cx
             mov ah,09h
              mov bl,09eh
             mov cx,
1   
             
int 10h
             inc al
             mov ah,
2
             mov dx,word  ptr cs:[8200h
+cur_pos-prompt1]
             inc dl
                mov word ptr cs:[8200h
+cur_pos-prompt1],dx 
             
int 10h
             pop cx
             loop rx2           
                                     ;以上為顯示 ”程序設(shè)計(jì):Z.bin” 字符串  
            ;
***********************
;
****************************************
              mov ah,
1
              mov ch,
19
              mov cl,
0
              
int 10h
                             ;去掉光標(biāo)
;;
*********************************
nv4:    
            mov bh,
0
            mov dx,0a28h
            mov ah,
2
            
int 10h       ; ;設(shè)光標(biāo)
            mov al,20h
            mov bx,0ah
            mov cx,
12   
            mov ah,
9
            
int 10h        ;清除顯示的密碼星號(hào) ‘*
            mov word ptr cs:[8200h
+number-prompt1],0  ;存放輸入的字符數(shù)
            mov di,8200h
+(password_buf-prompt1)
   nv1:    
                mov word ptr cs:[8200h
+tmpdi-prompt1],di
  getmsg:          mov ah,
0            ;接收輸入的密碼
                
int 16h
                cmp al,0dh           ;按下enter 鍵
                je nv2
                inc word ptr cs:[8200h
+number-prompt1]
                cmp word ptr cs:[8200h
+number-prompt1],11
                jge getmsg         ;輸入大過(guò)十個(gè)時(shí)不干
                mov 
byte ptr cs:[8200h+tmpal-prompt1],al
                mov bh,
0
                mov dx,0a28h
                mov ah,
2
                
int 10h
                mov al,
'*'            ; ;輸入的密碼以* 的方式顯示
                mov bx,0eh
                mov cx,word ptr cs:[8200h
+number-prompt1]
                mov ah,
9
                
int 10h

                mov al,
byte ptr cs:[8200h+tmpal-prompt1]          
                mov di,word ptr cs:[8200h
+tmpdi-prompt1]
                stosb      ;將輸入字符存儲(chǔ)到 PASSWORD——BUF
                 jmp nv1
       nv2:
                  mov di,word ptr cs:[8200h
+password_long-prompt1]
                  cmp di,word ptr cs:[8200h
+number-prompt1]
                je nv3
                jmp nv4
   nv3:      
                mov   di,8200h
+(password-prompt1)
                mov si,8200h
+(password_buf-prompt1)
                cld
                mov cx, word ptr cs:[8200h
+password_long-prompt1]
                repe cmpsb                      ;比較輸入的密碼
                je boot
                jmp nv4
    boot:
                mov ax,0600h
                mov bh,00h
                mov cx,
0
                mov dx,2050h
                
int 10h       ;清屏
                ;
********        here is ok!
;
************************************************
                mov bx,13h
*4           ; ;取INT 13H 的入口
                mov dx,word ptr cs:[bx]
                mov word ptr cs:[7c00h
+ww-v1],dx
                mov dx,word ptr cs:[bx
+2]
                mov word ptr cs:[7c00h
+ww-v1+2], dx
                            ;get intchar 
                dec word ptr cs:[413h]
                dec word ptr  cs:[413h]        ;減小內(nèi)存大小
                mov ax,word ptr cs:[413h]    ; [
0000:0413H ] 記錄內(nèi)存的大小
                mov cl,
6
                shl ax,cl
                                ;dec the menory size   
;
***********************
                mov bx,13h
*4        
                mov word ptr cs:[bx],0000h
                mov word ptr cs:[bx
+2],ax
                                ; set decnumber memory size
;
************************* 
                mov es,ax    
                mov cx,200h
                mov si,[7c00h
+setint-v1]
                mov di,
0
                rep movsb            ;將改寫(xiě)的INT 13H 的中斷處理程序移到內(nèi)存頂端
                mov ax,
0
                mov es,ax            
        ;
**************************
                  mov ax,201h
                  mov cx,13h
                  mov bx,7000h
                  mov dx,80h
                  
int 13h

                 mov si,7000h
+1beh
                 mov dx,word ptr [si]
                 mov cx,word ptr [si
+2]
                 mov bx,7c00h
                 mov ax,0201h   ;讀取DOS BOOT SECTOR c
/h/s 參數(shù)
                 
int 13h              
                    db 0eah
                dw 7c00h,0000h    ;遠(yuǎn)跳址  讓DOS 引導(dǎo)程序得到控制權(quán) 
        
;
**************************
           setint:           ;截取INT 13H 的中斷處理程序
                cmp dx,0080h
                jne xx
                cmp cx,01h            
                jne xx
                cmp ah,02h
                jne xx
                mov cx,13h             ; ;如果讀取 
1 扇區(qū) 則改為讀13H
        xx:
               jmp dword ptr cs:[ww
-setint]
               ww dw 
0,0               ;跳到原來(lái)的BIOS 的INT 13H 處理程序
              

       vv:
            fil equ 
509-(vv-v1)
                db fil dup (
0)
                db 
'B'                      ;硬盤(pán)鎖是否安裝的標(biāo)志
                dw 0aa55h
;
***********************
second:
            MOV AX,0201H
            MOV BX,OFFSET BUF
            MOV CX,01H
            MOV DX,80H
            INT 13H
            CMP CS:[BUF
+01FdH],'B'         ;判斷硬盤(pán)鎖是否安裝
            JE install_yes
;
****************************************
                MOV CS:[BUF
+01FdH],'B'
                MOV AX,0301H
                MOV CX,13H
                mov bx,offset buf
                mov dx,80h
                INT 13H
;
****************************************
                 mov ax,301h
                   mov bx,offset v1
               mov cx,
1
               mov dx,80h
               
int 13h        ;主引導(dǎo)山區(qū) save the edited master booter sector!
                            ;將改寫(xiě)的啟動(dòng)代碼寫(xiě)入01H 扇區(qū)(從v1 偏址開(kāi)始)
;
****************************************
                MOV AX,301H
                MOV BX,OFFSET PROMPT1
                MOV CX,21H
                MOV DX,80H
                
int 13h                  ;將字模寫(xiě)入21H扇區(qū)
;
***************************************
                MOV AX,302H
                MOV BX,OFFSET CPP
                MOV CX,22H
                MOV DX,80H
                INT 13H                   ;將字模寫(xiě)入22H .23h扇區(qū)
;
****************************************
EXIT:
                mov ax,cs
                mov ds,ax
                lea dx,msg2
                mov ah,
9
                
int 21h
                MOV AH,4CH
                INT 21H                ;退出    
    install_yes:
                  mov ax,cs
                  mov ds,ax
                  lea dx,msg1
                  mov ah,
9
                  
int 21h
                  jmp exit

           BUF db 
512 dup(?)
          para db 
20 dup (0)
         old_ds dw 
0
         msg1 db 
'                 # This Program Has Installed ! #',0dh,0ah,24h
            msg2 db 
'           CopyRight Ver 1.0     Programming By Z.Bin 97-04-7  ',0dh,0ah,30 dup (20h)
         db 
'See You Later !',0dh,0ah,'Useing:',3 dup(20h),'HDD3.EXE  #pxxxx     Change Password !'
         db 0dh,0ah,
10 dup(20h),'HDD3.EXE  #u         Delete The Pc-lock ',0dh,0ah
         db 
10 dup (20h),'HDD3.EXE             Lock Computer  Default PSW: pig ',0dh,0ah,24h

     msg3 db 
'           I Cannot Unistall It ! Because You Have Not Installed!',0dh,0ah,24h
     msg4 db 
'           UnInstall Successful ! Bye Bye ! ',0dh,0ah,24h
             code ends
              end first

程序代碼文件: HDD3.ASM    MASM.EXE 編譯 LINK.EXE 連接  VER 
5.0
              Getchar.c
              Toasm.c
程序說(shuō)明文件: README.DOC
程序執(zhí)行文件: HDD3.EXE
程序運(yùn)行環(huán)境: MSDOS 
3.0 以上 [ 不可在WINDOWS 的 MSDOS 窗口中執(zhí)行]
執(zhí)行文件使用:
 
1. C:\> HDD3.EXE       實(shí)行加密 缺省密碼:pig    /* 輸入時(shí)注意大小寫(xiě) */
 
2. C:\>HDD3.EXE  #pxxxxxxx  改變密碼值 x 為密碼  p 為保留字 /* 密碼值最多10位 */
     C:\HDD3 #pbanana     改變密碼為banana  
/* 重新啟動(dòng)時(shí)輸入banana 可啟動(dòng)系統(tǒng)*/

 
3. C:\HDD3.EXE  #u       硬盤(pán)鎖卸除,恢復(fù)原貌 /* 在硬盤(pán)鎖未安裝或硬盤(pán)鎖卸除后不                           可用此參數(shù)  */
  




程序文件: Getchar.c
    將要顯示的漢字以圖形方式輸出(采用PRINTF 函數(shù)),用GETPIXEL 函數(shù)取得象素點(diǎn)的顏色值,值為0則為0,值為非0的則轉(zhuǎn)為1,存儲(chǔ)為字模文件.
   程序代碼:
#define STRING 
"程序: Z.Bin  CopyRight Ver 1.0 97-04-05"   ;所要顯示的漢字,可更改
#define CHAR_BYTE 
40             //顯示漢字的字節(jié)數(shù)  每個(gè)漢字2個(gè)字節(jié)
#define OUTPUT_FILE "c:\\dat"       //輸出的字模文件 C:\DAT
#define SIZE CHAR_BYTE*16        //8*25 模式的DOS 環(huán)境下字符成 8*16 的點(diǎn)陣
#include <stdio.h>
#include 
<graphics.h>
#include 
<conio.h>
 #include 
<stdlib.h>
 main()
{     
int At_x,color;
 
int g=0;int m;
 
int CharNumber;
 
int k;
int i,j;
 
char buf[SIZE];
 
char *p;
 
char a;
FILE 
*fp;
initgraph(
&g,&m,"");
p
=buf;
if((fp=fopen(OUTPUT_FILE ,"wb"))==NULL)
return 0;

printf(STRING);
for(i=0;i<=223;i++)
 {
 buf[i]
=0;          }
At_x
=0;
for(CharNumber=0;CharNumber<CHAR_BYTE;CharNumber++)
{
        
for(j=0;j<=15;j++)
          {
            
for(i=0;i<=7;i++)
            {
                color
=getpixel(At_x+i,j);
                
if(color)
                {a
=1; a=a<<(7-i);
                  (
*p)=(*p)|a;
                }
            }
        p
++;
         }
At_x
+=8;
}
fwrite(buf,
1,SIZE,fp);
fclose(fp);
/*getch();*/
closegraph();
return 0;






程序文件: Toasm.c
程序使用: 
     c:\
>toasm 
     enter the file name:
     c:\dat          
//用戶(hù)輸入

此時(shí)程序自動(dòng)生成 dat.asm 文件
用戶(hù)可編輯此文件,將 字符串 “begin:” 之后的數(shù)據(jù)(顯示漢字的16進(jìn)制形式)copy到匯編程序,進(jìn)行編譯.

程序代碼:
#include 
<stdio.h>
#include 
<bios.h>
#include 
<io.h>
#include 
<dos.h>
#include 
<dir.h>
main()
{     
char name[40];
  FILE 
*p;       int m,n;
  
char *v;
  
long size;
  
int i,j;
  
char ch;
   
char *first="  \tcode segment\n  \t      assume  cs:code,ds:code  \n      \torg 100h\n  begin:\n";
   
char *end="  \tcode ends\n \tend begin";
   
int len1,len2;
  
void *buf;
   
char drive[3];char dir[20];char fname[10];char ext[4];
  
char newname[50];
  
char *extt=".asm";
  printf(
"enter the file name:\n");
  scanf(
"%s",  name);
  
if((p=fopen(name,"rb"))==NULL)
  { printf(
"cann't open <  %s > file!\n",name);
  exit(
0);}
   size
=filelength(fileno(p));
   buf
=(char *)malloc(size);
   fread(buf,size,
1,p);
   fclose(p);
    fnsplit(name,drive,dir,fname,ext);
   fnmerge(newname,drive,dir,fname,extt);
   
if((p=fopen(newname,"wb"))==NULL)
   {  printf(
"can't creat < %s > file!\n",newname);
     exit(
0);
     }
    fprintf(p,
"%s\n",first);
      fprintf(p,
" db  ");
    
for(i=0,v=buf;i<size;i++,v++)
      {
      n
=*v;
      m
=n;
      n
=n&0x0f0;
      n
=n>>4;
      m
=m&0x0f;
      
if(i==0)
      {fprintf(p,
"0%x%xh,",n,m);
       
continue;}
      
if((i%15)==0)
       {fprintf(p,
"0%x%xh",n,m);
     fputc(
0x0d,p);
     fputc(
0x0a,p);
     
if(i==(size-1))
     
continue;
     fprintf(p,
" db  ");}
      
else
      {
if(i==(size-1))
       fprintf(p,
"0%x%xh",n,m);
       
else
      fprintf(p,
"0%x%xh,",n,m);  }
    }
  fprintf(p,
"\n%s",end);
  fcloseall();
   printf(
" \t PLEASE EDIT %s\n",newname);
  }
 

posted on 2008-07-03 23:32 放屁阿狗 閱讀(1893) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): OpenSource開(kāi)源工程Asm-x86Crack
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美激情免费观看| 欧美在线免费播放| 午夜精品久久久久久久| 亚洲午夜av| 久久久中精品2020中文| 欧美高清自拍一区| 一本色道久久88综合日韩精品| 亚洲一区尤物| 欧美午夜一区二区| 影音先锋国产精品| 亚洲免费影视| 亚洲激情社区| 在线看片日韩| 亚洲女人小视频在线观看| 蜜桃精品久久久久久久免费影院| 欧美国产精品日韩| 欧美亚洲网站| 欧美午夜精品理论片a级按摩| 在线观看91精品国产入口| 先锋影音网一区二区| 亚洲高清二区| 欧美日韩成人| 亚洲一区二区三区高清不卡| 亚洲黑丝在线| 免费在线亚洲| 日韩一级精品| 中日韩美女免费视频网站在线观看| 欧美岛国激情| 亚洲香蕉视频| 亚洲性夜色噜噜噜7777| 国产精品户外野外| 欧美亚洲一区二区在线观看| 这里只有精品在线播放| 国产亚洲精品v| 欧美顶级艳妇交换群宴| 欧美激情91| 久久久久免费视频| 欧美—级高清免费播放| 欧美一级视频| 玖玖综合伊人| 中文欧美字幕免费| 久久成人资源| 一区二区精品国产| 欧美综合二区| 亚洲在线成人精品| 免费看成人av| 久久久久国色av免费观看性色| 午夜在线电影亚洲一区| 亚洲欧美制服另类日韩| 伊人成综合网伊人222| 亚洲精品日韩精品| 亚洲成人在线免费| 久久精视频免费在线久久完整在线看| 亚洲电影观看| 蜜臀av性久久久久蜜臀aⅴ四虎 | 国产精品日韩二区| 亚洲电影av| 一区在线播放视频| 久久国产精品高清| 久久久久久9| 好吊成人免视频| 久久这里有精品视频| 亚洲欧美日韩系列| 国产精品久久网| 宅男噜噜噜66国产日韩在线观看| 亚洲精一区二区三区| 欧美精品尤物在线| 一区二区免费在线播放| 亚洲国产欧美一区| 欧美高清视频一区| 亚洲精品一区二区三区四区高清 | 欧美精品一区二| 亚洲精品日韩综合观看成人91| 亚洲精品视频免费观看| 国产精品久久777777毛茸茸| 亚洲无线视频| 欧美成人精品| 欧美在线视频在线播放完整版免费观看| 欧美女同在线视频| 欧美在线免费看| 99re热这里只有精品视频| 国产精品第13页| 午夜电影亚洲| 99精品欧美一区二区三区| 久久国产成人| 亚洲一区三区视频在线观看| 国内久久精品| 欧美日韩一区二区在线播放| 久久久久九九九| 亚洲午夜女主播在线直播| 美女日韩在线中文字幕| 久久gogo国模啪啪人体图| 国产精品99久久久久久有的能看| 国产综合激情| 激情自拍一区| 国产一区二区日韩精品| 国产精品永久免费视频| 欧美日韩国产二区| 日韩一级免费观看| 99精品久久久| 中日韩视频在线观看| 亚洲一区高清| 亚洲欧美中文日韩v在线观看| 一区二区三区四区国产精品| 亚洲国产天堂久久综合| 欧美国产91| 亚洲另类黄色| 亚洲欧美日本国产专区一区| 一本久久a久久精品亚洲| 亚洲精品一区中文| 亚洲午夜久久久久久尤物| 亚洲欧美成人一区二区在线电影| 亚洲永久在线| 欧美va天堂| 国产精品影院在线观看| 激情久久一区| 中国成人亚色综合网站| 欧美在线观看一区二区| 欧美激情第二页| 亚洲精品色婷婷福利天堂| 午夜精品久久久久久久99水蜜桃| 久久九九精品| 一区二区三区精品在线| 亚洲一级电影| 欧美成人一区二免费视频软件| 欧美日韩国产成人精品| 亚洲福利视频专区| 欧美在线视频二区| 亚洲人永久免费| 毛片基地黄久久久久久天堂| 国产精品久久久久aaaa樱花| 亚洲国产欧美一区二区三区丁香婷| 一本色道久久综合精品竹菊 | 国产欧美日韩综合精品二区| 亚洲国产黄色片| 欧美一区三区二区在线观看| 亚洲精品久久久久久久久久久久| 欧美亚洲一区在线| 国产精品黄页免费高清在线观看| 黄色成人免费网站| 久久综合九色综合欧美就去吻| 99热在这里有精品免费| 欧美不卡视频一区| 99re这里只有精品6| 99在线视频精品| 欧美日韩成人一区二区三区| 亚洲理伦电影| 中文精品视频| 国产真实久久| 亚洲第一在线综合网站| 欧美日韩三级一区二区| 亚洲欧美在线高清| 久久久www成人免费精品| **性色生活片久久毛片| 亚洲国产婷婷| 国产亚洲一二三区| 亚洲国产欧美在线人成| 国产精品日日摸夜夜摸av| 牛人盗摄一区二区三区视频| 美女主播精品视频一二三四| 一区二区日韩精品| 久久久久久综合| 亚洲欧美日韩一区二区| 欧美日韩国产va另类| 欧美成人自拍| 韩国成人理伦片免费播放| 91久久久久| 亚洲永久视频| 亚洲永久在线| 欧美日韩中文字幕精品| 麻豆精品一区二区av白丝在线| 国产精品电影观看| 亚洲国产精品va| 亚洲国产另类 国产精品国产免费| 亚洲三级免费| 亚洲无限av看| 国产精品高潮呻吟| 99在线|亚洲一区二区| 亚洲精品你懂的| 欧美激情精品久久久久久免费印度| 久久久久国产精品一区| 国产精品久久久久久影视| 亚洲美女精品一区| 亚洲精品视频在线播放| 久久亚洲国产精品一区二区| 久久综合电影| 日韩视频一区二区在线观看| 麻豆成人小视频| 一区二区日韩欧美| 欧美一区二区日韩一区二区| 国产一区亚洲一区| 欧美sm极限捆绑bd| 亚洲欧美日韩精品| 亚洲国产精品专区久久| 一本久道综合久久精品| 国外成人网址| 欧美日韩视频专区在线播放 | 国产精品一二三四区| 欧美在线播放一区| 亚洲国产欧美一区|