home *** CD-ROM | disk | FTP | other *** search
/ FreeWare Collection 2 / FreeSoftwareCollection2pd199x-jp.img / demo / scroll.asm < prev    next >
Assembly Source File  |  1990-06-14  |  3KB  |  79 lines

  1. ;******************************************************************************
  2.                                         ; [History] :
  3.                                         ;
  4.     TITLE   Scroll                        ;
  5.                                         ;
  6.                                         ;
  7. ;==============================================================================
  8. ;
  9. ;==============================================================================
  10. ; Directive block
  11. ;==============================================================================
  12. cseg        SEGMENT BYTE PUBLIC USE32 EO 'CODE'    ;
  13. cseg        ENDS                                ;
  14. ;                                                ;
  15. DATA        SEGMENT    BYTE PUBLIC USE32 RW 'DATA'    ;
  16. DATA        ENDS                                ;
  17. ;                                                ;
  18.             ASSUME        CS:cseg, DS:DATA        ;
  19. ;==============================================================================
  20. ;
  21. ;==============================================================================
  22. ; Cord block
  23. ;==============================================================================
  24. ;===============================================;
  25. cseg        SEGMENT BYTE PUBLIC USE32 EO 'CODE'    ;
  26. ;===============================================;
  27.             PUBLIC    Scroll                        ;
  28.             DB        'Scroll',6                    ;
  29. ;+++++++++++++++++++++++++++++++++++++++++++++++;
  30. Scroll        PROC    NEAR                        ;
  31. ;+++++++++++++++++++++++++++++++++++++++++++++++;
  32.             PUSH    EBP                            ; 使用するレジスタの退避.
  33.             PUSH    ES                            ;
  34.             PUSH    EBX                            ;
  35.             PUSH    ECX                            ;
  36.             PUSH    EDX                            ;
  37.             PUSH    EDI                            ;
  38.             PUSH    ESI                            ;
  39. ;+++++++++++++++++++++++++++++++++++++++++++++++;
  40.             MOV        AX,001CH                    ;
  41.             MOV        ES,AX                        ; ES:VRAMのセレクタ
  42.                                                 ;
  43.             MOV        ESI,262184                    ;
  44.             MOV        EDI,263208                    ; EDI:VRAMのオフセット
  45.             MOV        ECX,496                        ; ECX:カウンタ
  46. loop_1:                                            ;
  47.             MOV        EDX,ECX                        ;
  48.             MOV        ECX,60                        ;
  49. loop_2:                                            ;
  50.             MOV        EAX,ES:[EDI]                ;
  51.             MOV        ES:[ESI],EAX                ;
  52.             ADD        ESI,4                        ;
  53.             ADD        EDI,4                        ;
  54.             LOOP    loop_2                        ;
  55.             MOV        ECX,EDX                        ;
  56.             ADD        ESI,272                        ;
  57.             ADD        EDI,272                        ;
  58.             LOOP    loop_1                        ;
  59.                                                 ;
  60. ;-----------------------------------------------;
  61.             POP        ESI                            ;
  62.             POP        EDI                            ;
  63.             POP        EDX                            ;
  64.             POP        ECX                            ;
  65.             POP        EBX                            ;
  66.             POP        ES                            ;
  67.             POP        EBP                            ;
  68.             RET                                    ;
  69.                                                 ;
  70. ;+++++++++++++++++++++++++++++++++++++++++++++++;
  71. Scroll        ENDP                                ;
  72. ;+++++++++++++++++++++++++++++++++++++++++++++++;
  73. ;                                                ;
  74. ;===============================================;
  75. cseg        ENDS                                ;
  76. ;===============================================;
  77. end                                                ;
  78. ;==============================================================================
  79.