⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jumphwm.asm

📁 关于8086的软核fpga代码
💻 ASM
字号:
;***********************************************************************************
; File name     :   jumphwm.asm
;
; Purpose       :   Enable Hardware Monitor, then jump to 0000:0400 (cold entry point 
;                   of mon88).
;
; Authors       :   
;
; Reference     :   
;
; Note          : 	   
; -----------------------------------------------------------------------------------
; Version  Author           Date            Changes
; 0.1      Hans Tiggeler    10 October 04   First Version
;************************************************************************************

;------------------------------------------------------------------------------------
; Hardware Single Step Monitor, CPU86 IP Core only!
; Single Step Registers
;
; bit3 bit2 bit1 bit0   HWM_CONFIG
;  |    |    |     \--- '1' =Enable Single Step     
;  |    |     \-------- '1' =Select TXMON output for UARTx  
;  \-----\------------- '00'=No Step    
;                       '01'=Step Always   
;                       '10'=select step_sw input (software controlled, enable=1)   
;                       '11'=select not(step_sw) input(software controlled, enable=0)
;------------------------------------------------------------------------------------
HWM_CONFIG  EQU    0360h					   ; 8 bits Config Register
HWM_BITLOW  EQU    0362h                       ; 10 bits divider, LS 8 bits
HWM_BITHIGH EQU    0363h                       ; 10 bits divider, MS 2 bits


_TEXT   SEGMENT BYTE PUBLIC 'CODE'

        ASSUME  cs:_TEXT, SS:NOTHING, DS:NOTHING, ES:NOTHING

;------------------------------------------------------------------------------------
; Reset Vector
;------------------------------------------------------------------------------------
        ORG     000F0h                          ; Top of 256 Byte ROM address space
    
;------------------------------------------------------------------------------------
; Set baudrate for Hardware Monitor
; CLK/38400 -> 10 bits divider,       
; 32.692308MHz/38400 -> 0x352(851) -> BITHIGH="11", BIT_LOW="01010011"
;------------------------------------------------------------------------------------
;		MOV     DX,HWM_BITLOW					; Default is 38400 for 32.69MHz
;		MOV     AL,53h                      	; Set for 32.692308MHz         
;		OUT     DX,AL           

;		MOV     DX,HWM_BITHIGH
;		MOV     AL,03                           
;		OUT     DX,AL   

COLD:	MOV     DX,HWM_CONFIG					; Enable Hardware Monitor, continuous step
        MOV     AL,07h                      	; xxxx-0111 step=1
        OUT     DX,AL                       	; Enable Trace

		DB      0EAh                       		; Jump to beginning of 0000:0400
		DW		0400h							; Offset
        DW      0000h							; segment

_TEXT   ENDS
        END COLD

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -