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

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

?? drawchar.asm

?? 80386單片機
?? ASM
字號:
;
;  DRAWCHAR.ASM
;
;  Author: Matt Pritchard
;  Released to public domain
;
;Assumes Character set of 128 x 8 Bytes 
;  Character Set has a 16 byte Scratch Buffer at end.... 
; 
;GPRINTC (CharSet, CharNum, Xpos, Ypos, ColorF, ColorB) 
; 
; in "C"
;void GPRINTC(far char* SetData, int CharNum, int Xpos, 
;              int Ypos, int Color_Fg, int Color_Bg) 
; 
; in "BASIC" 
;TYPE CharSET 
;    BitMaps AS STRING * 1024 
;    Scratch AS STRING * 16 ;END TYPE 
; 
;DIM SetData AS CharSET 
; 
;DECLARE SUB GPRINTC(SEG SetData AS ANY, BYVAL CharNum%, BYVAL Xpos%,_ 
;                    BYVAL Ypos%, BYVAL ColorF%, BYVAL ColorB%) 
; 
; 
;Draws Text Character (8x8) in Graphics Mode 13 at Pixel (Xpos,Ypos) 
;In Color: COLORF with background of COLORB 
;

        .MODEL  Medium
        .CODE

SCRATCH_OFS     EQU     1024+2  ;Character Set Working Area Offset 
VGA_SEGMENT     EQU     0A000H  ;Vga Memory Segment 
SCREEN_WIDTH    EQU     320     ;Width of screen in Pixels/Bytes

GPC_STACK       STRUC
                        DW      ?       ;DI
                        DW      ?       ;SI
                        DW      ?       ;DS
                        DW      ?       ;BP
                        DD      ?       ;Caller
        GPC_COLORB      DB      ?,?     ;Background Color
        GPC_COLORF      DB      ?,?     ;Forground Color
        GPC_YPOS        DW      ?       ;Y position
        GPC_XPOS        DW      ?       ;X position
        GPC_CHAR_NUM    DB      ?,?     ;Character #
        GPC_SET_OFS     DW      ?       ;Offset of Set Data
        GPC_SET_SEG     DW      ?       ;Segment of Set Data GPC_STACK
ENDS

        PUBLIC GPRINTC

GPRINTC         PROC    FAR

        PUSH    BP
        PUSH    DS                      ;Save Data Seg
        PUSH    SI                      ;BC7 - Save Si,DI, Dir Flag
        PUSH    DI

        MOV     BP,SP                   ;Set to address of bp


        ;Compute Screen Addr to Write to in ES:DI

        MOV     AX,[BP].GPC_YPOS        ;Get Value of Ypos (mult * 320)
        MOV     DH,AL                   ;Save 256*Y
        MOV     CL,6                    ;mult * 2^6 (Y * 64)
        SHL     AX,CL                   ;Shift Left
        ADD     AH,DH                   ;Add in 256 * Ypos

        ADD     AX,[BP].GPC_XPOS        ;Add X position to addr

        MOV     DI,AX                   ;Save in DI

        ;Get Source ADDR of Character Bit Map in DS:SI
        ;But first, save colors in lookup table


        MOV     BX,[BP].GPC_SET_OFS     ;Get OFFSET of Character Set
        MOV     SI,BX                   ;Save in SI for now..

        ;Get colors

        MOV     AX,[BP].GPC_SET_SEG     ;Segment of Charset
        MOV     ES,AX                   ;Use ES to point to it...

        MOV     AL,[BP].GPC_COLORB      ;Get Backgorund color
        MOV     ES:[SI+SCRATCH_OFS],AL  ;Save in Table at Pos (0)

        MOV     AL,[BP].GPC_COLORF      ;Forground Color (1)
        MOV     ES:[SI+SCRATCH_OFS+1],AL   ;Save in Table

        ;Get addr of character map

        MOV     AL,[BP].GPC_CHAR_NUM    ;Get Character #
        AND     AX,007FH                ;Valid #'s are 0..127
        SHL     AX,1                    ;* 2
        SHL     AX,1                    ;* 4
        SHL     AX,1                    ;* 8

        MOV     BX,SI                   ;BX = Start of Char Set
        ADD     BX,SCRATCH_OFS          ;BX points to lookup table

        ADD     SI,AX                   ;Add Start of Character Set

        ;Get segment of character map

        MOV     DS,[BP].GPC_SET_SEG     ;Get Segment of Character Set
                                        ;Cant use DS (DGROUP) anymore

        MOV     AX,VGA_SEGMENT          ;VGA Graphics Segment
        MOV     ES,AX
        CLD                             ;Forwards....

        MOV     CX,8                    ;8 Bytes to Decode

DECODE_CHAR_BYTE:

        LODSB                           ;Get Byte to decode in DS:SI
        MOV     DL,AL                   ;Save in DL

        XOR     DH,DH                   ;Clear DH
        SHL     DX,1                    ;Get Bit #1
        MOV     AL,DH                   ;Put in AL
        XLAT    AL                      ;Translate into DAC value

        STOSB                           ;Write to Video Buffer

        XOR     DH,DH                   ;Clear DH
        SHL     DX,1                    ;Get Bit #2
        MOV     AL,DH                   ;put in AL
        XLAT    AL                      ;Translate into DAC value

        STOSB                           ;Write to Video Buffer

        XOR     DH,DH                   ;Clear DH
        SHL     DX,1                    ;Get Bit #3
        MOV     AL,DH                   ;put in AL
        XLAT    AL                      ;Translate into DAC value

        STOSB                           ;Write to Video Buffer

        XOR     DH,DH                   ;Clear DH
        SHL     DX,1                    ;Get Bit #4
        MOV     AL,DH                   ;put in AL
        XLAT    AL                      ;Translate into DAC value

        STOSB                           ;Write to Video Buffer

        XOR     DH,DH                   ;Clear DH
        SHL     DX,1                    ;Get Bit #5
        MOV     AL,DH                   ;put in AL
        XLAT    AL                      ;Translate into DAC value

        STOSB                           ;Write to Video Buffer

        XOR     DH,DH                   ;Clear DH
        SHL     DX,1                    ;Get Bit #6
        MOV     AL,DH                   ;put in AL
        XLAT    AL                      ;Translate into DAC value

        STOSB                           ;Write to Video Buffer

        XOR     DH,DH                   ;Clear DH
        SHL     DX,1                    ;Get Bit #7
        MOV     AL,DH                   ;put in AL
        XLAT    AL                      ;Translate into DAC value

        STOSB                           ;Write to Video Buffer

        XOR     DH,DH                   ;Clear DH
        SHL     DX,1                    ;Get Bit #8
        MOV     AL,DH                   ;put in AL
        XLAT    AL                      ;Translate into DAC value

        STOSB                           ;Write to Video Buffer

        ADD     DI,SCREEN_WIDTH-8       ;Point to Next Line

        LOOP    DECODE_CHAR_BYTE        ;Process all Lines

        POP     DI
        POP     SI
        POP     DS                      ;Restore Data Segment
        POP     BP                      ;Restore Bp

        RET     14                      ;Exit and Clean up Stack


GPRINTC  ENDP

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美主播一区二区三区美女| 精品国内二区三区| 制服丝袜亚洲色图| 亚洲丝袜制服诱惑| 一区二区欧美视频| 日韩电影在线观看一区| 调教+趴+乳夹+国产+精品| 久久99国产精品尤物| 豆国产96在线|亚洲| 日本久久精品电影| 欧美mv日韩mv| 亚洲精品视频一区二区| 另类小说视频一区二区| 成人激情校园春色| 欧美羞羞免费网站| 国产亚洲精品超碰| 亚洲国产乱码最新视频 | 91亚洲精品久久久蜜桃| 在线日韩国产精品| xnxx国产精品| 亚洲精品国产高清久久伦理二区| 午夜精品成人在线视频| 国产高清在线观看免费不卡| 欧美亚洲动漫精品| 欧美激情艳妇裸体舞| 日韩福利电影在线| 成人国产精品免费网站| 日韩美一区二区三区| 欧美国产综合一区二区| 亚洲综合激情另类小说区| 国产综合成人久久大片91| 欧美亚洲国产一区在线观看网站| 久久日韩粉嫩一区二区三区| 亚洲va国产va欧美va观看| 国产成人综合网站| 日韩免费电影一区| 亚洲视频在线观看一区| 国产一本一道久久香蕉| 这里只有精品免费| 亚洲一区在线观看免费| 成人动漫中文字幕| 国产色综合一区| 精品一区二区三区免费播放| 欧美二区三区的天堂| 中文字幕欧美激情一区| 国产麻豆精品在线| 精品三级av在线| 免费成人av在线| 欧美高清视频不卡网| 一区二区不卡在线视频 午夜欧美不卡在| 国产成人在线免费观看| 欧美精品一区视频| 美日韩一区二区三区| 欧美美女直播网站| 午夜激情一区二区| 欧美日韩一二区| 亚洲小说欧美激情另类| 在线中文字幕不卡| 亚洲成人动漫在线免费观看| 色天天综合久久久久综合片| 亚洲天天做日日做天天谢日日欢 | 亚洲午夜视频在线观看| 欧亚一区二区三区| 亚洲大片免费看| 6080国产精品一区二区| 久久国产欧美日韩精品| 久久综合九色综合97_久久久| 韩国欧美国产1区| 日本一区二区三区dvd视频在线| 国产一区二三区好的| 欧美mv日韩mv国产| 国产99久久久国产精品免费看| 国产精品色呦呦| 91免费观看视频| 亚洲黄色小说网站| 欧美精品日韩综合在线| 久久精品国产一区二区三区免费看 | 日韩欧美中文字幕精品| 国产精品伊人色| 国产精品免费av| 欧美色视频在线| 久久精品二区亚洲w码| 国产日产欧美一区二区视频| 国产91精品一区二区麻豆网站 | 久久精品国产亚洲5555| 国产精品乱码一区二区三区软件| 91欧美激情一区二区三区成人| 亚洲va韩国va欧美va| 久久久欧美精品sm网站| 色综合色狠狠综合色| 日韩成人精品视频| 国产精品国产三级国产专播品爱网 | 久久久久国产精品麻豆| 色八戒一区二区三区| 免费不卡在线观看| 精品国产伦一区二区三区观看方式| 国产精品一线二线三线精华| 亚洲欧美一区二区久久| 日韩精品中文字幕一区| 91网站视频在线观看| 另类综合日韩欧美亚洲| 亚洲人成在线观看一区二区| 日韩一区二区在线播放| 91麻豆精品秘密| 国产一区二区三区免费观看| 一区二区三区色| 久久久噜噜噜久噜久久综合| 欧美日韩在线免费视频| 国产91高潮流白浆在线麻豆 | 亚洲国产成人自拍| 欧美一级理论片| 色欧美乱欧美15图片| 国产在线一区二区| 一区二区三区在线免费视频| 欧美白人最猛性xxxxx69交| 色婷婷激情一区二区三区| 国产福利精品导航| 免费欧美日韩国产三级电影| 夜夜精品视频一区二区| 中文字幕不卡三区| 欧美一区二区在线视频| 欧美私人免费视频| 色综合婷婷久久| 成人在线视频一区| 国产传媒一区在线| 奇米影视一区二区三区| 五月婷婷色综合| 依依成人综合视频| 亚洲欧美日韩国产另类专区| 日本一区二区成人| 久久久久久久综合| 亚洲乱码中文字幕综合| 在线播放国产精品二区一二区四区| 欧美三级韩国三级日本三斤| 在线播放欧美女士性生活| 日韩精品一区二区三区视频| 久久久精品天堂| 国产精品美日韩| 亚洲国产日韩a在线播放| 喷水一区二区三区| 国产成人综合在线播放| 91视频一区二区三区| 欧美日韩另类国产亚洲欧美一级| 91精品黄色片免费大全| 国产三级一区二区| 一区二区三区小说| 久久99久久精品欧美| 成人va在线观看| 欧美午夜寂寞影院| 精品国产乱码久久久久久久| 国产精品免费久久| 日韩在线播放一区二区| 国产一区视频网站| 一本一道久久a久久精品| 久久蜜臀精品av| 亚洲国产精品天堂| 高潮精品一区videoshd| 欧美日韩一级二级| 欧美国产精品中文字幕| 婷婷国产在线综合| 成人91在线观看| 欧美一区二区三区不卡| 亚洲欧洲中文日韩久久av乱码| 奇米精品一区二区三区在线观看一| 高清成人免费视频| 日韩一区和二区| 亚洲精品中文在线观看| 国产成人午夜精品影院观看视频| 在线观看国产日韩| 中文一区一区三区高中清不卡| 午夜日韩在线电影| 97国产一区二区| 久久夜色精品国产欧美乱极品| 亚洲一区二区三区四区五区黄| 国产麻豆精品在线观看| 91麻豆精品国产91久久久更新时间| 国产精品网曝门| 国产毛片精品国产一区二区三区| 欧美绝品在线观看成人午夜影视| 一区在线中文字幕| 狠狠色丁香九九婷婷综合五月| 在线观看视频一区二区欧美日韩| 国产精品色婷婷| 国产麻豆一精品一av一免费| 日韩女优毛片在线| 丝袜美腿成人在线| 欧美色图天堂网| 亚洲精品综合在线| 91在线无精精品入口| 国产精品国产馆在线真实露脸| 国产在线精品一区在线观看麻豆| 欧美一级理论片| 青青草原综合久久大伊人精品 | 国产精品久久网站| 国产在线不卡视频| 精品国内片67194| 精品一区二区三区香蕉蜜桃| 欧美xxxx在线观看| 精品一区二区三区的国产在线播放| 欧美日韩国产片|