📄 main.asm
字号:
include macro.lib
extrn writepoint:far,drawline:far,horizontal:far,vertical:far,readpoint:far
extrn rectangle:far,setprepage:far,getimmage:far,putimmage:far
extrn read_line:far,write_line:far,read_col:far,write_col:far,fill:far
extrn showbmp:far,mov_heading:far
extrn draw_jiao:far,drawline_x:far,drawline_y:far,box:far,rectangle:far
extrn printf:far,printf1:far,putchar:far,printf2:far
extrn clearscreen_du:far,clearscreen_ud:far,clearscreen_rl:far,clearscreen_lr:far
extrn clearscreen_in:far,clearscreen_out:far
extrn clearscreen_rw:far,clearscreen_dw:far
extrn clearscreen_rdw:far,clearscreen_mlr:far,clearscreen_mud:far
extrn random:far,random_yu:far,random_clear:far,menu:far
extrn pass:far
extrn drawmouse:far,store_m:far,restore_m:far,initmouse:far,intr8mouse:far
public store_ax,store_bx,oldintr
stack segment stack
db 500 dup(0)
stack ends
data segment para public 'data'
store_ax dw ?
store_bx dw ?
flower_bmp db 'picture\flower.bmp',0
backfile db 'picture\028.bmp',0
string_a db '制作人:',0,0
string_b db '二千年八月份',0,0
num_x1 dw 399
num_y1 dw 65
num_x2 dw 399
num_y2 dw 599
oldintr dw 2 dup(?)
success db 'you have passed.',0
data ends
code segment 'code'
assume cs:code,ss:stack,ds:data
.386
start:
mov ax, data
mov ds, ax
mov ah, 0fh
int 10h
mov store_ax,ax
mov store_bx,bx ;读显示方式并保存
mov ax, 4f02h
mov bx, 114h
int 10h
openpicture 0, 599, flower_bmp ,P_COPY ;显示程序封面
call mov_heading
box_jiao 42,192,208,408,<RGB 0,0,255>
rect 47,197,203,403,<RGB 255,0,0>
out_hz 600,520,string_a, <RGB 0,255,64>
out_hz 650,550,string_b, <RGB 0,255,64>
call random_yu ;随机显示名言
setintr random_clear, oldintr ;随机显示画面
in al,21h
and al,0h
out 21h,al
sti
again:
mov ah,1 ;键盘中断,等待用户按键,进入程序主界面
int 16h
jnz next1
jmp again
next1:
mov ah,0 ; read out the char
int 16h
cli
res_oldintr oldintr
call initmouse ;开时钟中断,开启鼠标和光标
setintr intr8mouse, oldintr
sti
call pass ;要求用户输入密码
jnc last
call menu ;进入主菜单的功能循环
last:
cli ;恢复中断,和原来的显示模式,退出程序
res_oldintr oldintr
mov ax,store_ax
mov bx,store_bx
mov ah, 0
int 10h
mov ah, 4ch
int 21h
;====================================================
code ends
end start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -