OpenCores
URL https://opencores.org/ocsvn/s80186/s80186/trunk

Subversion Repositories s80186

[/] [s80186/] [trunk/] [tests/] [programs/] [modrm_override.asm] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 jamieiles
; Copyright Jamie Iles, 2017
2
;
3
; This file is part of s80x86.
4
;
5
; s80x86 is free software: you can redistribute it and/or modify
6
; it under the terms of the GNU General Public License as published by
7
; the Free Software Foundation, either version 3 of the License, or
8
; (at your option) any later version.
9
;
10
; s80x86 is distributed in the hope that it will be useful,
11
; but WITHOUT ANY WARRANTY; without even the implied warranty of
12
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
; GNU General Public License for more details.
14
;
15
; You should have received a copy of the GNU General Public License
16
; along with s80x86.  If not, see .
17
 
18
cpu 8086
19
 
20
    times 1024 db 0
21
 
22
    ; An instruction with a modrm byte that writes to bp will implicitly use
23
    ; SS.  Make sure that subsequent instructions that don't have a modrm byte
24
    ; but default to DS don't think that they should be also using SS because
25
    ; BP was previously used.
26
    mov         bx, 0x2000
27
    mov         ss, bx
28
    mov         bx, 0x3000
29
    mov         ds, bx
30
    mov         bp, 0x100
31
    mov         word [bp + 0x100], 0xa5a5
32
    mov         ax, [bp + 0x100]
33
    and         ax, 0xa0a0
34
    mov         word [0x100], ax
35
    int3

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.