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

Subversion Repositories zet86

[/] [zet86/] [trunk/] [tests/] [19_segpr.s] - Diff between revs 39 and 49

Only display areas with differences | Details | Blame | View Log

Rev 39 Rev 49
.code16
.code16
start:
start:
movw $0xf100, %bx
movw $0xf100, %bx
movw %bx, %es
movw %bx, %es
 
 
es movw (0), %bx
es movw (0), %bx
es movw (2), %ax
es movw (2), %ax
movw %ax, (2)
movw %ax, (2)
movw $0x2, %sp
movw $0x2, %sp
es push %bx
es push %bx
 
 
es les (0), %dx
es les (0), %dx
movw %dx, (4)
movw %dx, (4)
movw %es, %dx
movw %es, %dx
movw %dx, (6)
movw %dx, (6)
 
 
movw $5, %di
movw $5, %di
cs lea 23(%bp,%di), %si
cs lea 23(%bp,%di), %si
movw %si, (8)
movw %si, (8)
 
 
movw $0x0005, %bx
movw $0x0005, %bx
movw $0x0005, %ax
movw $0x0005, %ax
movw $0x2345, (10)
movw $0x2345, (10)
movw $0xf100, %dx
movw $0xf100, %dx
movw %dx, %es
movw %dx, %es
es xlat
es xlat
movw %ax, (12)
movw %ax, (12)
 
 
# inc with segment
# inc with segment
movw $0x1, %ax
movw $0x1, %ax
movw %ax, %ss
movw %ax, %ss
movw $0x6, (16)
movw $0x6, (16)
ss incw (0)
ss incw (0)
 
 
# div with interrupt
# div with interrupt
movw $32, %sp
movw $32, %sp
movw $0x0, (18)
movw $0x0, (18)
ss
ss
.byte 0xf3
.byte 0xf3
divw (2)
divw (2)
subw $6, %sp
subw $6, %sp
 
 
movw $0x1200, (20)
movw $0x1200, (20)
movw $5, %bx
movw $5, %bx
movw $3, %si
movw $3, %si
# repz prefix (do not affect)
# repz prefix (do not affect)
.byte 0xf3
.byte 0xf3
ss call *-4(%bx,%si)
ss call *-4(%bx,%si)
 
 
hlt
hlt
 
 
.org 0x1000
.org 0x1000
.word 0x1100
.word 0x1100
.word 0xf000
.word 0xf000
 
 
.org 0x100a
.org 0x100a
.word 0x5678
.word 0x5678
 
 
.org 0x1100
.org 0x1100
movw %sp, %si
movw %sp, %si
ss movw (%si), %si
ss movw (%si), %si
movw %si, (14)
movw %si, (14)
addw $6, %si
addw $6, %si
movw %sp, %di
movw %sp, %di
ss movw %si, (%di)
ss movw %si, (%di)
iret
iret
 
 
.org 0x1200
.org 0x1200
movw $0xf120, %cx
movw $0xf120, %cx
movw %cx, %es
movw %cx, %es
movw $0x0200, %si
movw $0x0200, %si
movw $0x0e01, %di
movw $0x0e01, %di
 
 
es cmpsb
es cmpsb
pushf
pushf
 
 
movw $0x1, %ax
movw $0x1, %ax
movw %ax, %es
movw %ax, %es
movw $6, %di
movw $6, %di
movw $0x1400, %si
movw $0x1400, %si
movw $0x6, %cx
movw $0x6, %cx
# Two prefixes
# Two prefixes
rep cs movsb
rep cs movsb
hlt
hlt
 
 
.org 0x1400
.org 0x1400
.byte 0x01,0xff,0xff,0x80
.byte 0x01,0xff,0xff,0x80
.word 0x0002
.word 0x0002
.byte 0xc2
.byte 0xc2
 
 
.org 0x2001
.org 0x2001
.byte 0x02,0xff,0x01,0x01
.byte 0x02,0xff,0x01,0x01
.word 0x8001
.word 0x8001
 
 
.org 65520
.org 65520
jmp start
jmp start
.org 65535
.org 65535
.byte 0xff
.byte 0xff
 
 

powered by: WebSVN 2.1.0

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