mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-19 13:13:34 +08:00
Resync new repository with old repo r5166
git-svn-id: http://svn.code.sf.net/p/nuttx/code/trunk@5153 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
AS = /usr/local/bin/as-z80
|
||||
ASFLAGS = -xlosp
|
||||
|
||||
CPP = /usr/local/bin/sdcpp
|
||||
CPPFLAGS = -D__ASSEMBLY__
|
||||
|
||||
CC = /usr/local/bin/sdcc
|
||||
CFLAGS = -mz80 --stack-auto --int-long-reent --float-reent
|
||||
|
||||
LD = /usr/local/bin/link-z80
|
||||
LDFLAGS =
|
||||
|
||||
ASMEXT = .asm
|
||||
OBJEXT = .rel
|
||||
LIBEXT = .lib
|
||||
EXEEXT = .hex
|
||||
|
||||
ASRCS = example.asm
|
||||
AOBJS = $(ASRCS:$(ASMEXT)=$(OBJEXT))
|
||||
|
||||
CSRCS =
|
||||
COBJS = $(CSRCS:.c=$(OBJEXT))
|
||||
|
||||
SRCS = $(SSRCS) $(CSRCS)
|
||||
OBJS = $(AOBJS) $(COBJS)
|
||||
|
||||
BIN = example$(EXEEXT)
|
||||
|
||||
all: $(BIN)
|
||||
default: $(BIN)
|
||||
|
||||
$(AOBJS): $(ASRCS)
|
||||
$(AS) $(ASFLAGS) $@ $<
|
||||
|
||||
$(COBJS) $(TESTOBJS): %$(OBJEXT): %.c
|
||||
$(CC) -c $(CFLAGS) $< -o $@
|
||||
|
||||
$(BIN): $(OBJS)
|
||||
$(CC) $(LDFLAGS) $< -o $@
|
||||
|
||||
clean:
|
||||
@rm -f $(BIN) *.o *.rel *.lst *.sym *.adb *.ihx *.map *.mem *.rst *.lnk *~
|
||||
|
||||
distclean: clean
|
||||
@@ -0,0 +1,84 @@
|
||||
;************************************************************************
|
||||
; example.s
|
||||
;************************************************************************
|
||||
|
||||
.title z80sim Test
|
||||
.module example
|
||||
|
||||
;************************************************************************
|
||||
; Constants
|
||||
;************************************************************************
|
||||
|
||||
STACKBASE == 0xFFFF
|
||||
|
||||
;************************************************************************
|
||||
; Data
|
||||
;************************************************************************
|
||||
|
||||
.area DATA (ABS,OVR)
|
||||
.org 0x8000
|
||||
hello:
|
||||
.ascii "Hello, World!\n\0"
|
||||
|
||||
;************************************************************************
|
||||
; Reset entry point
|
||||
;************************************************************************
|
||||
|
||||
.area TEXT (ABS,OVR)
|
||||
.org 0x0000
|
||||
di ; Disable interrupts
|
||||
ld SP, #STACKBASE ; Set stack pointer
|
||||
im 1 ; Set interrupt mode 1
|
||||
jp start ; jump to start of program
|
||||
|
||||
;************************************************************************
|
||||
; Interrupt handler
|
||||
;************************************************************************
|
||||
|
||||
.org 0x0038 ; Int mode 1
|
||||
reti ; return from interrupt
|
||||
|
||||
;************************************************************************
|
||||
; NMI interrupt handler
|
||||
;************************************************************************
|
||||
|
||||
.org 0x0066
|
||||
retn
|
||||
|
||||
;************************************************************************
|
||||
; Start of program
|
||||
;************************************************************************
|
||||
|
||||
.org 0x0100
|
||||
start:
|
||||
;ei ; Enable interrrupts
|
||||
ld hl, #hello ; Say hello
|
||||
call print
|
||||
|
||||
forever: ; Then stop execution
|
||||
jp forever
|
||||
|
||||
;******************************************************************
|
||||
; print *
|
||||
; Funktion....: Sen tekst and data with serielport *
|
||||
; Input.......: hl points at text start adr *
|
||||
; Output......: Text to serielport *
|
||||
; uses........: a,hl*
|
||||
; call........: TX_BUSY tst 28-4-1994 *
|
||||
;******************************************************************
|
||||
|
||||
print:
|
||||
push af
|
||||
loop:
|
||||
ld a, (hl) ; Get character to print
|
||||
cp #0 ; Null terminates the string
|
||||
jp z, done
|
||||
|
||||
out (0xbe), a ; Send character
|
||||
inc hl ; Increment to next character
|
||||
jp loop ; Loop til done
|
||||
done:
|
||||
pop af
|
||||
ret
|
||||
|
||||
|
||||
Reference in New Issue
Block a user