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

Subversion Repositories zet86

[/] [zet86/] [trunk/] [tests/] [04_jump1.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 $0, %cx
movw $0, %cx
movw $64, %bx
movw $64, %bx
movw $0x1000, %sp
movw $0x1000, %sp
movw %sp, %ss
movw %sp, %ss
push %bx
push %bx
jmp j00
jmp j00
 
 
# ja/jnbe
# ja/jnbe
j00err:
j00err:
jmp jerr
jmp jerr
j00:
j00:
stc
stc
ja  j00err     # (1)
ja  j00err     # (1)
clc
clc
ja  j01
ja  j01
 
 
# jae/jnb/jnc
# jae/jnb/jnc
j01err:
j01err:
jmp jerr
jmp jerr
j01:
j01:
stc
stc
jae j01err     # (2)
jae j01err     # (2)
clc
clc
jae j02
jae j02
 
 
# jb/jnae/jc
# jb/jnae/jc
j02err:
j02err:
jmp jerr
jmp jerr
j02:
j02:
jb  j02err     # (3)
jb  j02err     # (3)
stc
stc
jb  j03
jb  j03
 
 
# jbe/jna
# jbe/jna
j03err:
j03err:
jmp jerr
jmp jerr
j03:
j03:
clc
clc
jbe j03err     # (4)
jbe j03err     # (4)
popf
popf
jbe j04
jbe j04
 
 
# je/jz
# je/jz
j04err:
j04err:
jmp jerr
jmp jerr
j04:
j04:
push %cx
push %cx
popf
popf
je  j04err     # (5)
je  j04err     # (5)
push %bx
push %bx
popf
popf
je  j05
je  j05
 
 
# jg/jnle
# jg/jnle
j05err:
j05err:
jmp jerr
jmp jerr
j05:
j05:
movw $0x08c0, %dx
movw $0x08c0, %dx
push %dx
push %dx
popf
popf
jg  j05err     # (6)
jg  j05err     # (6)
movw $0x0880, %dx
movw $0x0880, %dx
push %dx
push %dx
popf
popf
jg  j06
jg  j06
 
 
# jge/jnl
# jge/jnl
j06err:
j06err:
jmp jerr
jmp jerr
j06:
j06:
movw $0x80, %dx
movw $0x80, %dx
push %dx
push %dx
popf
popf
jge j06err     # (7)
jge j06err     # (7)
push %cx
push %cx
popf
popf
jge j07
jge j07
 
 
# jl/jnge
# jl/jnge
j07err:
j07err:
jmp jerr
jmp jerr
j07:
j07:
jl  j07err     # (8)
jl  j07err     # (8)
movw $0x0800, %dx
movw $0x0800, %dx
push %dx
push %dx
popf
popf
jl  j08
jl  j08
 
 
# jle/jng
# jle/jng
j08err:
j08err:
jmp jerr
jmp jerr
j08:
j08:
push %cx
push %cx
popf
popf
jle j08err     # (9)
jle j08err     # (9)
push %bx
push %bx
popf
popf
jle j09
jle j09
 
 
# jne/jnz
# jne/jnz
j09err:
j09err:
jmp jerr
jmp jerr
j09:
j09:
jne j09err     # (10)
jne j09err     # (10)
movw $0xcbf, %dx
movw $0xcbf, %dx
push %dx
push %dx
popf
popf
jne j10
jne j10
 
 
# jno
# jno
j10err:
j10err:
jmp jerr
jmp jerr
j10:
j10:
movw $0x0800, %dx
movw $0x0800, %dx
push %dx
push %dx
popf
popf
jno j10err     # (11)
jno j10err     # (11)
movw $0x6ff, %dx
movw $0x6ff, %dx
push %dx
push %dx
popf
popf
jno j11
jno j11
 
 
# jnp/jpo
# jnp/jpo
j11err:
j11err:
jmp jerr
jmp jerr
j11:
j11:
movw $0x4, %dx
movw $0x4, %dx
push %dx
push %dx
popf
popf
jnp j11err     # (12)
jnp j11err     # (12)
push %cx
push %cx
popf
popf
jnp j12
jnp j12
 
 
# jns
# jns
j12err:
j12err:
jmp jerr
jmp jerr
j12:
j12:
movw $0xeff, %dx
movw $0xeff, %dx
push %dx
push %dx
popf
popf
jns j12err     # (13)
jns j12err     # (13)
push %cx
push %cx
popf
popf
jns j13
jns j13
 
 
# jo
# jo
j13err:
j13err:
jmp jerr
jmp jerr
j13:
j13:
jo  j13err     # (14)
jo  j13err     # (14)
movw $0x800, %dx
movw $0x800, %dx
push %dx
push %dx
popf
popf
jo  j14
jo  j14
 
 
# jp/jpe
# jp/jpe
j14err:
j14err:
jmp jerr
jmp jerr
j14:
j14:
jp  j14err     # (15)
jp  j14err     # (15)
movw $0x804, %dx
movw $0x804, %dx
push %dx
push %dx
popf
popf
jp  j15
jp  j15
 
 
# js
# js
j15err:
j15err:
jmp jerr
jmp jerr
j15:
j15:
js  j15err     # (16)
js  j15err     # (16)
movw $0x884, %dx
movw $0x884, %dx
push %dx
push %dx
popf
popf
js  j16
js  j16
jmp jerr
jmp jerr
 
 
# All correct
# All correct
j16:
j16:
movw $0x1234, (0)
movw $0x1234, (0)
hlt
hlt
 
 
.org 65520
.org 65520
jmp start
jmp start
 
 
jerr:
jerr:
hlt
hlt
 
 
.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.