home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FreeWare Collection 2
/
FreeSoftwareCollection2pd199x-jp.img
/
demo
/
scroll.asm
< prev
next >
Wrap
Assembly Source File
|
1990-06-14
|
3KB
|
79 lines
;******************************************************************************
; [History] :
;
TITLE Scroll ;
;
;
;==============================================================================
;
;==============================================================================
; Directive block
;==============================================================================
cseg SEGMENT BYTE PUBLIC USE32 EO 'CODE' ;
cseg ENDS ;
; ;
DATA SEGMENT BYTE PUBLIC USE32 RW 'DATA' ;
DATA ENDS ;
; ;
ASSUME CS:cseg, DS:DATA ;
;==============================================================================
;
;==============================================================================
; Cord block
;==============================================================================
;===============================================;
cseg SEGMENT BYTE PUBLIC USE32 EO 'CODE' ;
;===============================================;
PUBLIC Scroll ;
DB 'Scroll',6 ;
;+++++++++++++++++++++++++++++++++++++++++++++++;
Scroll PROC NEAR ;
;+++++++++++++++++++++++++++++++++++++++++++++++;
PUSH EBP ; 使用するレジスタの退避.
PUSH ES ;
PUSH EBX ;
PUSH ECX ;
PUSH EDX ;
PUSH EDI ;
PUSH ESI ;
;+++++++++++++++++++++++++++++++++++++++++++++++;
MOV AX,001CH ;
MOV ES,AX ; ES:VRAMのセレクタ
;
MOV ESI,262184 ;
MOV EDI,263208 ; EDI:VRAMのオフセット
MOV ECX,496 ; ECX:カウンタ
loop_1: ;
MOV EDX,ECX ;
MOV ECX,60 ;
loop_2: ;
MOV EAX,ES:[EDI] ;
MOV ES:[ESI],EAX ;
ADD ESI,4 ;
ADD EDI,4 ;
LOOP loop_2 ;
MOV ECX,EDX ;
ADD ESI,272 ;
ADD EDI,272 ;
LOOP loop_1 ;
;
;-----------------------------------------------;
POP ESI ;
POP EDI ;
POP EDX ;
POP ECX ;
POP EBX ;
POP ES ;
POP EBP ;
RET ;
;
;+++++++++++++++++++++++++++++++++++++++++++++++;
Scroll ENDP ;
;+++++++++++++++++++++++++++++++++++++++++++++++;
; ;
;===============================================;
cseg ENDS ;
;===============================================;
end ;
;==============================================================================