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

📄 crt0.s

📁 很少见的源码公开的msc51和z80的c编译器。
💻 S
字号:
	;; Generic crt0.s for a Z80	.globl	_main	.area _HEADER (ABS)	;; Reset vector	.org 	0	jp	init	.org	0x08	reti	.org	0x10	reti	.org	0x18	reti	.org	0x20	reti	.org	0x28	reti	.org	0x30	reti	.org	0x38	reti		.org	0x100init:	;; Stack at the top of memory.	ld	sp,#0xffff                ;; Initialise global variables        call    gsinit	call	_main	jp	_exit	;; Ordering of segments for the linker.	.area	_CODE        .area   _GSINIT        .area   _GSFINAL        	.area	_DATA        .area   _BSS        .area   _CODE__clock::	ld	a,#2        rst     0x08	ret	_exit::	;; Exit - special code to the emulator	ld	a,#0        rst     0x081$:	halt	jr	1$        ;; Special RLE decoder used for initing global data__initrleblock::        ;; Pop the return address        pop     hl        ;; Save registers        push    bc        push    de        ;; Pull the destination address out        ld      c,(hl)        inc     hl        ld      b,(hl)        inc     hl1$:        ;; Fetch the run        ld      e,(hl)        inc     hl        ;; Negative means a run        bit     7,e        jp      z,2$        ;; Code for expanding a run        ld      a,(hl)        inc     hl3$:        ld      (bc),a        inc     bc        inc     e        jp      nz,3$        jp      1$2$:        ;; Zero means end of a block        xor     a        or      e        jp      z,4$        ;; Code for expanding a block5$:             ld      a,(hl)                inc     hl        ld      (bc),a        inc     bc        dec     e        jp      nz,5$        jp      1$4$:             pop     de        pop     bc        ;; Push the return address back onto the stack        push    hl        ret        .area   _GSINITgsinit::	        .area   _GSFINAL        ret

⌨️ 快捷键说明

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