.module crt0
.globl _main
.area _HEADER
init:
ld sp,#0xBFFF
;; Initialise global variables
call gsinit
call _main
jp _exit
_exit::
1$:
halt
jr 1$
.area _HOME
.area _CODE
.area _INITIALIZER
.area _GSINIT
.area _GSFINAL
.area _DATA
.area _INITIALIZED
.area _BSEG
.area _BSS
.area _HEAP
.area _CODE
jp init
.area _GSINIT
gsinit::
ld bc, #l__INITIALIZER
ld a, b
or a, c
jr Z, gsinit_next
ld de, #s__INITIALIZED
ld hl, #s__INITIALIZER
ldir
gsinit_next:
.area _GSFINAL
ret
Desc = SDCC DEMO
Start = 0x4000
Stack = $BFFF
Resident = #5B00
Page3 = 0
; CPU clock: 0 - 3,5MHz / 1 - 7MHz / 2 - 14MHz / 3 - 14+MHz
Clock = 3
; INT: 0 - DI / 1 - EI
INT = 1
Pager = 0
; Blocks description: address (512 multiple, #C000-#FE00), page number, filename
Block = #C000, 5, bin\debug\test.bin
#define TS_IO_BASE 0xAF
#define TS_PORT(x) __sfr __banked __at ((x<<8) | TS_IO_BASE)
TS_PORT(0x0F) TS_Border;
static void Loop()
{
char i = 0;
while (1)
{
TS_Border = i++;
__asm
halt
__endasm;
}
}
void main()
{
Loop();
}
ZEK wrote:Пример написаный на Ц, по мотивам тетриса попова - ТРЕШИКС
Yuri wrote:Можно ли без проблем использовать int16_t?
Yuri wrote:Можно ли в тексте программ без проблем использовать целочисленные умножение и деление
RegisterWizard(wizProject, _T("z80"), _T("Z80 TS-Conf Console application"), _T("Console"));
ZEK wrote:Необходимо поменять расширение объектных файлов для SDCC с "o" на "rel",
ZEK wrote:В диалоге настроек сборки есть вкладка "Pre/Post build steps" нужно в post build steps указать hex2bin -e bin $(PROJECT_DIR)$(TARGET_OUTPUT_FILE)
Users browsing this forum: No registered users and 1 guest