Mise en place des communications et compilation d'un *.g3a fonctionnel

This commit is contained in:
Shadow 2019-07-19 19:51:02 +02:00
parent adf50204ae
commit e526e4c02a
6 changed files with 521 additions and 263 deletions

Binary file not shown.

View File

@ -20,8 +20,10 @@ Archive member included to satisfy reference by file (symbol)
build-cg/src/main.o (_getkey)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o) (_charset_size)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
build-cg/src/main.o (_memcpy)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o) (_strlen)
build-cg/src/main.o (_strlen)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(font8x9.png.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o) (_gint_font8x9)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
@ -38,12 +40,10 @@ Archive member included to satisfy reference by file (symbol)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o) (_inth_entry_7305)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o) (_waitevent)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o) (_memcpy)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o) (_timer_setup)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o) (_inth_tmu_0)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o) (_inth_tmu)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o) (_dma_transfer_wait)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
@ -54,8 +54,10 @@ Archive member included to satisfy reference by file (symbol)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o) (_clock_freq)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o) (___movmemSI24)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem_i4.o)
build-cg/src/main.o (___movmemSI12_i4)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o) (___udivdi3)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o) (___udivdi3)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o) (___udivsi3)
/Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udiv_qrnnd_16.o)
@ -75,12 +77,12 @@ Discarded input sections
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(drect.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
.comment 0x0000000000000000 0x12 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o)
@ -118,226 +120,231 @@ LOAD build-cg/src/main.o
LOAD /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a
LOAD /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a
0x0000000000300000 _brom = 0x300000
0x0000000000002738 _srom = (((SIZEOF (.text) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks))
0x0000000000002e80 _srom = (((SIZEOF (.text) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks))
.text 0x0000000000300000 0x1ef0
.text 0x0000000000300000 0x2398
*(.pretext.entry)
.pretext.entry
0x0000000000300000 0x1a4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(start.c.o)
0x0000000000300000 _start
*(.pretext)
.pretext 0x00000000003001a4 0x258 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
0x00000000003001a4 _topti_glyph
0x00000000003001f8 _topti_render
0x00000000003003b8 _dtext
*fill* 0x00000000003003fc 0x4
.pretext 0x0000000000300400 0xc4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti-asm.s.o)
0x0000000000300400 _topti_glyph_fg_bg
0x000000000030043e _topti_glyph_fg
0x0000000000300478 _topti_glyph_bg
.pretext 0x00000000003004c4 0x110 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
0x00000000003004c4 _dfont
0x00000000003004dc _charset_size
0x0000000000300508 _charset_decode
0x0000000000300576 _topti_offset
.pretext 0x00000000003005d4 0x40 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)
0x00000000003005d4 _hw_detect
0x0000000000300614 _btors = .
.pretext 0x00000000003001a4 0x240 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
0x00000000003001a4 _topti_render
0x00000000003003a0 _dtext
*fill* 0x00000000003003e4 0xc
.pretext 0x00000000003003f0 0xc4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti-asm.s.o)
0x00000000003003f0 _topti_glyph_fg_bg
0x000000000030042e _topti_glyph_fg
0x0000000000300468 _topti_glyph_bg
.pretext 0x00000000003004b4 0x110 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
0x00000000003004b4 _dfont
0x00000000003004cc _charset_size
0x00000000003004f8 _charset_decode
0x0000000000300566 _topti_offset
.pretext 0x00000000003005c4 0x40 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)
0x00000000003005c4 _hw_detect
0x0000000000300604 _btors = .
*(.ctors .ctors.*)
0x0000000000300614 _mtors = .
0x0000000000300604 _mtors = .
*(.dtors .dtors.*)
0x0000000000300614 _etors = .
0x0000000000300604 _etors = .
*(.text .text.*)
.text 0x0000000000300614 0x0 build-cg/src/main.o
.text.startup 0x0000000000300614 0x90 build-cg/src/main.o
0x0000000000300614 _main
.text 0x00000000003006a4 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(start.c.o)
.text 0x00000000003006a4 0xf8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(mmu.c.o)
0x00000000003006a4 _utlb_addr
0x00000000003006b4 _utlb_data
0x00000000003006c4 _utlb_mapped_memory
.text 0x000000000030079c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
.text 0x000000000030079c 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dvram.c.o)
0x000000000030079c _dvram
.text 0x00000000003007a0 0x30 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dupdate.c.o)
0x00000000003007a0 _dupdate
0x00000000003007b8 _dupdate_noint
.text 0x00000000003007d0 0x48 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dclear.c.o)
0x00000000003007d0 _dclear
.text 0x0000000000300818 0xc4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(drect.c.o)
0x0000000000300818 _drect
.text 0x00000000003008dc 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti-asm.s.o)
.text 0x00000000003008dc 0x1a8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o)
0x0000000000300a38 _getkey
0x0000000000300a44 _getkey_opt
0x0000000000300a50 _getkey_repeat
.text 0x0000000000300a84 0x9c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
0x0000000000300a84 _dsize
.text 0x0000000000300b20 0x148 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o)
0x0000000000300b20 _strlen
0x0000000000300b30 _strncpy
0x0000000000300b46 _vsprintf
0x0000000000300c44 _sprintf
.text 0x0000000000300c68 0x2cc /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
0x0000000000300cb8 _r61524_win_get
0x0000000000300d70 _r61524_win_set
0x0000000000300e30 _r61524_display
.text 0x0000000000300f34 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)
.text 0x0000000000300f34 0xf0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o)
0x0000000000300fa0 _gint_install
0x000000000030100c _gint_unload
.text 0x0000000000301024 0x2c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(vbr.s.o)
0x0000000000301024 _gint_setvbr
.text 0x0000000000301050 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o)
.text 0x0000000000301050 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o)
.text 0x0000000000301050 0x28c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
0x00000000003010a0 _keysc_frame
0x00000000003011d4 _pollevent
0x00000000003012a8 _waitevent
.text 0x00000000003012dc 0xd6 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
0x00000000003012dc _memcpy
0x0000000000301390 __memmove
0x0000000000301394 __memcmp
0x0000000000301398 _memset
*fill* 0x00000000003013b2 0x2
.text 0x00000000003013b4 0x480 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
0x0000000000301658 _timer_setup
0x00000000003016ec _timer_delay
0x000000000030174c _timer_start
0x0000000000301780 _timer_reload
0x00000000003017a0 _timer_pause
0x00000000003017d4 _timer_stop
0x0000000000301828 _timer_timeout
.text 0x0000000000301834 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.text 0x0000000000301834 0x268 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
0x0000000000301834 _dma_transfer_wait
0x0000000000301910 _dma_transfer
0x00000000003019c0 _dma_transfer_noint
.text 0x0000000000301a9c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.text 0x0000000000301a9c 0x5c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o)
0x0000000000301a9c _gint_intlevel
0x0000000000301ad4 _gint_inthandler
.text 0x0000000000301af8 0xc8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
0x0000000000301bb4 _clock_freq
.text 0x0000000000301bc0 0x78 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o)
0x0000000000301bc0 ___movmem
0x0000000000301bc0 ___movstr
0x0000000000301bf4 ___movmemSI64
0x0000000000301bf4 ___movstrSI64
0x0000000000301bf8 ___movmemSI60
0x0000000000301bf8 ___movstrSI60
0x0000000000301bfc ___movstrSI56
0x0000000000301bfc ___movmemSI56
0x0000000000301c00 ___movmemSI52
0x0000000000301c00 ___movstrSI52
0x0000000000301c04 ___movstrSI48
0x0000000000301c04 ___movmemSI48
0x0000000000301c08 ___movmemSI44
0x0000000000301c08 ___movstrSI44
0x0000000000301c0c ___movstrSI40
0x0000000000301c0c ___movmemSI40
0x0000000000301c10 ___movstrSI36
0x0000000000301c10 ___movmemSI36
0x0000000000301c14 ___movstrSI32
0x0000000000301c14 ___movmemSI32
0x0000000000301c18 ___movmemSI28
0x0000000000301c18 ___movstrSI28
0x0000000000301c1c ___movmemSI24
0x0000000000301c1c ___movstrSI24
0x0000000000301c20 ___movmemSI20
0x0000000000301c20 ___movstrSI20
0x0000000000301c24 ___movstrSI16
0x0000000000301c24 ___movmemSI16
0x0000000000301c28 ___movmemSI12
0x0000000000301c28 ___movstrSI12
0x0000000000301c2c ___movstrSI8
0x0000000000301c2c ___movmemSI8
0x0000000000301c30 ___movstrSI4
0x0000000000301c30 ___movmemSI4
.text 0x0000000000301c38 0x1ec /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o)
0x0000000000301c38 ___udivdi3
.text 0x0000000000301e24 0x6c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o)
0x0000000000301e46 ___udivsi3
.text 0x0000000000301e90 0x60 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udiv_qrnnd_16.o)
0x0000000000301e90 ___udiv_qrnnd_16
.text 0x0000000000301ef0 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o)
.text 0x0000000000300604 0x4f8 build-cg/src/main.o
0x0000000000300604 _reset_comm
0x0000000000300618 _display_comm
0x0000000000300674 _add
0x00000000003006b8 _fill
0x00000000003006fc _communication
.text.startup 0x0000000000300afc 0x6c build-cg/src/main.o
0x0000000000300afc _main
.text 0x0000000000300b68 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(start.c.o)
.text 0x0000000000300b68 0xf8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(mmu.c.o)
0x0000000000300b68 _utlb_addr
0x0000000000300b78 _utlb_data
0x0000000000300b88 _utlb_mapped_memory
.text 0x0000000000300c60 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
.text 0x0000000000300c60 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dvram.c.o)
0x0000000000300c60 _dvram
.text 0x0000000000300c64 0x30 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dupdate.c.o)
0x0000000000300c64 _dupdate
0x0000000000300c7c _dupdate_noint
.text 0x0000000000300c94 0x48 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dclear.c.o)
0x0000000000300c94 _dclear
.text 0x0000000000300cdc 0xc4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(drect.c.o)
0x0000000000300cdc _drect
.text 0x0000000000300da0 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti-asm.s.o)
.text 0x0000000000300da0 0x1e8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o)
0x0000000000300da0 _getkey_opt
0x0000000000300f40 _getkey
0x0000000000300f4c _getkey_repeat
.text 0x0000000000300f88 0x9c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
0x0000000000300f88 _dsize
.text 0x0000000000301024 0xd6 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
0x0000000000301024 _memcpy
0x00000000003010d8 __memmove
0x00000000003010dc __memcmp
0x00000000003010e0 _memset
.text 0x00000000003010fa 0x26 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o)
0x00000000003010fa _strlen
0x000000000030110a _strncpy
.text 0x0000000000301120 0x2cc /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
0x0000000000301170 _r61524_win_get
0x0000000000301228 _r61524_win_set
0x00000000003012e8 _r61524_display
.text 0x00000000003013ec 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)
.text 0x00000000003013ec 0xf0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o)
0x0000000000301458 _gint_install
0x00000000003014c4 _gint_unload
.text 0x00000000003014dc 0x2c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(vbr.s.o)
0x00000000003014dc _gint_setvbr
.text 0x0000000000301508 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o)
.text 0x0000000000301508 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o)
.text 0x0000000000301508 0x288 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
0x0000000000301684 _pollevent
0x0000000000301758 _waitevent
.text 0x0000000000301790 0x4d0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
0x0000000000301a18 _timer_setup
0x0000000000301aac _timer_delay
0x0000000000301b0c _timer_start
0x0000000000301b40 _timer_reload
0x0000000000301b60 _timer_pause
0x0000000000301b94 _timer_stop
0x0000000000301bf0 _timer_timeout
0x0000000000301bfc _timer_address
0x0000000000301c30 _timer_clear
.text 0x0000000000301c60 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.text 0x0000000000301c60 0x268 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
0x0000000000301c60 _dma_transfer_wait
0x0000000000301d3c _dma_transfer
0x0000000000301dec _dma_transfer_noint
.text 0x0000000000301ec8 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.text 0x0000000000301ec8 0x5c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o)
0x0000000000301ec8 _gint_intlevel
0x0000000000301f00 _gint_inthandler
.text 0x0000000000301f24 0xc8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
0x0000000000301fe0 _clock_freq
.text 0x0000000000301fec 0x78 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o)
0x0000000000301fec ___movmem
0x0000000000301fec ___movstr
0x0000000000302020 ___movmemSI64
0x0000000000302020 ___movstrSI64
0x0000000000302024 ___movmemSI60
0x0000000000302024 ___movstrSI60
0x0000000000302028 ___movstrSI56
0x0000000000302028 ___movmemSI56
0x000000000030202c ___movmemSI52
0x000000000030202c ___movstrSI52
0x0000000000302030 ___movstrSI48
0x0000000000302030 ___movmemSI48
0x0000000000302034 ___movmemSI44
0x0000000000302034 ___movstrSI44
0x0000000000302038 ___movstrSI40
0x0000000000302038 ___movmemSI40
0x000000000030203c ___movstrSI36
0x000000000030203c ___movmemSI36
0x0000000000302040 ___movstrSI32
0x0000000000302040 ___movmemSI32
0x0000000000302044 ___movmemSI28
0x0000000000302044 ___movstrSI28
0x0000000000302048 ___movmemSI24
0x0000000000302048 ___movstrSI24
0x000000000030204c ___movmemSI20
0x000000000030204c ___movstrSI20
0x0000000000302050 ___movstrSI16
0x0000000000302050 ___movmemSI16
0x0000000000302054 ___movmemSI12
0x0000000000302054 ___movstrSI12
0x0000000000302058 ___movstrSI8
0x0000000000302058 ___movmemSI8
0x000000000030205c ___movstrSI4
0x000000000030205c ___movmemSI4
*fill* 0x0000000000302064 0x1c
.text 0x0000000000302080 0x60 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem_i4.o)
0x0000000000302088 ___movmem_i4_even
0x0000000000302088 ___movstr_i4_even
0x000000000030208e ___movmem_i4_odd
0x000000000030208e ___movstr_i4_odd
0x00000000003020c0 ___movmemSI12_i4
0x00000000003020c0 ___movstrSI12_i4
.text 0x00000000003020e0 0x1ec /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o)
0x00000000003020e0 ___udivdi3
.text 0x00000000003022cc 0x6c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o)
0x00000000003022ee ___udivsi3
.text 0x0000000000302338 0x60 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udiv_qrnnd_16.o)
0x0000000000302338 ___udiv_qrnnd_16
.text 0x0000000000302398 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o)
.gint.blocks 0x0000000000301ef0 0x140
.gint.blocks 0x00000000003023a0 0x140
*(.gint.blocks)
.gint.blocks 0x0000000000301ef0 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o)
0x0000000000301ef0 _exch_entry_7305
.gint.blocks 0x0000000000301f10 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o)
0x0000000000301f10 _inth_entry_7305
.gint.blocks 0x0000000000301f30 0xe0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
0x0000000000301f30 _inth_tmu_0
0x0000000000301f50 _inth_tmu_1
0x0000000000301f70 _inth_tmu_2
0x0000000000301f90 _inth_tmu_storage
0x0000000000301fb0 _inth_tmu_extra2
0x0000000000301fd0 _inth_tmu_extra_help
0x0000000000301ff0 _inth_tmu_extra_others
.gint.blocks 0x0000000000302010 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
0x0000000000302010 _inth_dma_dma0
.gint.blocks 0x00000000003023a0 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o)
0x00000000003023a0 _exch_entry_7305
.gint.blocks 0x00000000003023c0 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o)
0x00000000003023c0 _inth_entry_7305
.gint.blocks 0x00000000003023e0 0xe0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
0x00000000003023e0 _inth_tmu
0x0000000000302460 _inth_etmu2
0x0000000000302480 _inth_etmu_help
0x00000000003024a0 _inth_etmux
.gint.blocks 0x00000000003024c0 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
0x00000000003024c0 _inth_dma_dma0
.gint.drivers 0x0000000000302030 0xb4
0x0000000000302030 _bdrv = .
.gint.drivers 0x00000000003024e0 0xb4
0x00000000003024e0 _bdrv = .
*(.gint.drivers.0)
*(.gint.drivers.1)
.gint.drivers.1
0x0000000000302030 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
0x0000000000302030 _drv_cpg
0x00000000003024e0 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
0x00000000003024e0 _drv_cpg
*(.gint.drivers.2)
.gint.drivers.2
0x0000000000302054 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
0x0000000000302054 _drv_tmu
0x0000000000302504 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
0x0000000000302504 _drv_tmu
.gint.drivers.2
0x0000000000302078 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
0x0000000000302078 _drv_dma
0x0000000000302528 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
0x0000000000302528 _drv_dma
*(.gint.drivers.3)
*(.gint.drivers.4)
.gint.drivers.4
0x000000000030209c 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
0x000000000030209c _drv_keysc
0x000000000030254c 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
0x000000000030254c _drv_keysc
*(.gint.drivers.5)
.gint.drivers.5
0x00000000003020c0 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
0x00000000003020c0 _drv_r61524
0x0000000000302570 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
0x0000000000302570 _drv_r61524
*(.gint.drivers.6)
0x00000000003020e4 _edrv = .
0x0000000000302594 _edrv = .
.rodata 0x00000000003020e4 0x654
.rodata 0x0000000000302594 0x8f4
*(.rodata.assets)
*(.rodata .rodata.*)
.rodata.str1.4
0x00000000003020e4 0x6e build-cg/src/main.o
*fill* 0x0000000000302152 0x2
.rodata 0x0000000000302154 0x18 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
0x0000000000302594 0x321 build-cg/src/main.o
0x329 (size before relaxing)
*fill* 0x00000000003028b5 0x3
.rodata 0x00000000003028b8 0x18 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
.rodata 0x00000000003028d0 0x49c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(font8x9.png.o)
0x00000000003028d0 _gint_font8x9
0x0000000000302d6c _gint_font8x9_end
.rodata.str1.4
0x000000000030216c 0x11 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o)
*fill* 0x000000000030217d 0x3
.rodata 0x0000000000302180 0x49c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(font8x9.png.o)
0x0000000000302180 _gint_font8x9
0x000000000030261c _gint_font8x9_end
0x0000000000302d6c 0x7 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
*fill* 0x0000000000302d73 0x1
.rodata.str1.4
0x000000000030261c 0x7 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
*fill* 0x0000000000302623 0x1
0x0000000000302d74 0x6 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
*fill* 0x0000000000302d7a 0x2
.rodata.str1.4
0x0000000000302624 0x6 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
*fill* 0x000000000030262a 0x2
0x0000000000302d7c 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
.rodata.str1.4
0x000000000030262c 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
0x0000000000302d80 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
.rodata.str1.4
0x0000000000302630 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
.rodata.str1.4
0x0000000000302634 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
.rodata 0x0000000000302638 0x100 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o)
0x0000000000302638 ___clz_tab
0x0000000000302d84 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
.rodata 0x0000000000302d88 0x100 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o)
0x0000000000302d88 ___clz_tab
.rela.dyn 0x0000000000302738 0x0
.rela.dyn 0x0000000000302e88 0x0
.rela.text 0x0000000000302e88 0x0 build-cg/src/main.o
.rela.pretext.entry
0x0000000000302738 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(start.c.o)
.rela.pretext 0x0000000000302738 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(start.c.o)
.rela.text 0x0000000000302738 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(start.c.o)
0x0000000000302e88 0x0 build-cg/src/main.o
.rela.pretext 0x0000000000302e88 0x0 build-cg/src/main.o
0x0000000008102000 . = ORIGIN (ram)
.bss 0x0000000008102000 0x30
@ -352,34 +359,34 @@ LOAD /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a
.bss 0x0000000008102000 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dclear.c.o)
.bss 0x0000000008102000 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(drect.c.o)
.bss 0x0000000008102000 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti-asm.s.o)
.bss 0x0000000008102000 0x8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o)
.bss 0x0000000008102008 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
.bss 0x0000000008102008 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o)
.bss 0x0000000008102008 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
.bss 0x0000000008102008 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)
.bss 0x0000000008102008 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o)
.bss 0x0000000008102008 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(vbr.s.o)
.bss 0x0000000008102008 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o)
.bss 0x0000000008102008 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o)
.bss 0x0000000008102008 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udiv_qrnnd_16.o)
.bss 0x000000000810202c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o)
.bss 0x0000000008102000 0xc /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o)
.bss 0x000000000810200c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
.bss 0x000000000810200c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
.bss 0x000000000810200c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o)
.bss 0x000000000810200c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
.bss 0x000000000810200c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)
.bss 0x000000000810200c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o)
.bss 0x000000000810200c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(vbr.s.o)
.bss 0x000000000810200c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o)
.bss 0x000000000810200c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o)
.bss 0x000000000810200c 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem_i4.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udiv_qrnnd_16.o)
.bss 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o)
0x0000000008102030 . = ALIGN (0x10)
*fill* 0x000000000810202c 0x4
0x0000000000000030 _sbss = SIZEOF (.bss)
.data 0x0000000008102030 0x10 load address 0x0000000000302738
0x0000000000302738 _ldata = LOADADDR (.data)
.data 0x0000000008102030 0x20 load address 0x0000000000302e88
0x0000000000302e88 _ldata = LOADADDR (.data)
0x0000000008102030 _rdata = .
*(.data .data.*)
.data 0x0000000008102030 0x0 build-cg/src/main.o
@ -394,46 +401,45 @@ LOAD /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dclear.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(drect.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti-asm.s.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(vbr.s.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udiv_qrnnd_16.o)
.data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o)
0x0000000008102040 . = ALIGN (0x10)
*fill* 0x000000000810203c 0x4
.data 0x000000000810203c 0x8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(vbr.s.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem_i4.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udiv_qrnnd_16.o)
.data 0x0000000008102044 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o)
0x0000000008102050 . = ALIGN (0x10)
*fill* 0x0000000008102044 0xc
.data.4 0x0000000008102040 0x0 load address 0x0000000000302748
.data.4 0x0000000008102050 0x0 load address 0x0000000000302ea8
*(.data.4)
0x0000000008102040 . = ALIGN (0x10)
0x0000000000000010 _sdata = (SIZEOF (.data) + SIZEOF (.data.4))
0x0000000008102050 . = ALIGN (0x10)
0x0000000000000020 _sdata = (SIZEOF (.data) + SIZEOF (.data.4))
0x000000008c15ff00 _gint_vbr = (ORIGIN (vbr) - 0x100)
0x000000008c161400 . = ORIGIN (rram)
.gint.data 0x000000008c161400 0xd0 load address 0x0000000000302748
0x0000000000302748 _lgdata = LOADADDR (.gint.data)
.gint.data 0x000000008c161400 0xd0 load address 0x0000000000302ea8
0x0000000000302ea8 _lgdata = LOADADDR (.gint.data)
0x000000008c161400 _rgdata = .
*(.gint.data .gint.data.*)
.gint.data 0x000000008c161400 0x8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
.gint.data 0x000000008c161408 0x18 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o)
0x000000008c161408 _time
0x000000008c161414 _state
.gint.data 0x000000008c161420 0x70 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o)
.gint.data 0x000000008c161490 0x10 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o)
0x000000008c161490 _SH7305_INTC
@ -444,7 +450,7 @@ LOAD /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a
*fill* 0x000000008c1614c4 0xc
0x00000000000000d0 _sgdata = SIZEOF (.gint.data)
.gint.bss 0x000000008c1614d0 0x230 load address 0x0000000000302818
.gint.bss 0x000000008c1614d0 0x230 load address 0x0000000000302f78
*(.gint.bss .gint.bss.*)
.gint.bss 0x000000008c1614d0 0x8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o)
.gint.bss 0x000000008c1614d8 0x40 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(hardware.c.o)

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,22 +1,274 @@
/*
Nom du projet : Fly Simulator
Version : - dev -
Dernière modification le : 16 juillet 2019
*/
//-----
// Nom du projet : Fly Simulator
// Version : - dev -
// Dernière modification le : 19 juillet 2019
//-----
#include <gint/display.h>
#include <gint/keyboard.h>
#include <gint/std/string.h>
int main(void)
{
dclear(C_WHITE);
dtext(1, 0, "Fly Simulator.", C_BLACK, C_NONE);
dtext(1, 15, "Test de texte.", C_BLACK, C_NONE);
dtext(1, 30, "ABCDEFGHIJKLMNOPQRSTUVWXYZ", C_BLACK, C_NONE);
dtext(1, 45, "abcdefghijklmnopqrstuvwxyz", C_BLACK, C_NONE);
dtext(1, 60, "0123456789 ? ! \" ,.;:", C_BLACK, C_NONE);
dupdate();
#define C_RED 0xf800
#define C_GREEN 0x07e0
#define C_BLUE 0x001f
getkey();
//communication : gère les communications entre la tour et l'avion
int communication (int *com_id, int *ligne, int id);
//display_comm : affiche les communications
void display_comm (char *msg, int *ligne, int joueur);
//reset_comm : vide l'historique des communications
void reset_comm (int *ligne);
//add : concatène deux chaines de caractère, str >> dest
char *add (char *dest, const char *src);
//fill : initialise une chaine de caractère en écrasant le texte contenu dans dest
char *fill (char *dest, const char *src);
int main (void)
{
int com_id = 1, ligne = 0, id = 0;
//int key = 0;
dclear(C_WHITE);
dupdate();
while(com_id < 26)
{
id = communication(&com_id, &ligne, id);
getkey();
dupdate();
}
getkey();
return 1;
}
int communication(int *com_id, int *ligne, int id)
{
//faire un choix de la langue Français / Anglais
char avion[] = "Cessna 172 ", immat[] = "F-GUXF ", immat_courte[] = "F-XF ", aipt_depart[] = "Caen ", aipt_arrivee[] = "Le Havre ", freq_cont[] = "117.15 ", freq_arrivee[] = "122.80 ", passagers[] = "4 personnes a bord, ", msg[100] = "";
switch (*com_id)
{
case 1:
id = 1;
fill(msg, aipt_depart);
add(msg, "tour, ");
add(msg, immat);
add(msg, "bonjour.");
break;
case 2:
id = 0;
fill(msg, immat);
add(msg, aipt_depart);
add(msg, "bonjour.");
break;
case 3:
id = 1;
fill(msg, immat);
add(msg, avion);
add(msg, passagers);
add(msg, "demandons");
display_comm(msg, &(*ligne), id);
fill(msg, "vol vers ");
add(msg, aipt_arrivee);
break;
case 4:
id = 0;
fill(msg, immat_courte);
add(msg, "vol autorise. Rappelez pret au depart");
break;
case 5:
id = 1;
fill(msg, "Rappelons pret au depart, ");
add(msg, immat_courte);
break;
case 6:
id = 1;
fill(msg, immat_courte);
add(msg, "pret au depart");
break;
case 7:
id = 0;
fill(msg, immat_courte);
add(msg, "autorise decollage.");
break;
case 8:
id = 1;
fill(msg, "Autorise decollage, ");
add(msg, immat_courte);
break;
case 9:
id = 0;
reset_comm (&(*ligne));
fill(msg, immat_courte);
add(msg, "Vous quittez mon espace. Services radar");
display_comm(msg, &(*ligne), id);
fill(msg, "et radio termines. Informations de vol avec");
display_comm(msg, &(*ligne), id);
fill(msg, "Controle, ");
add(msg, freq_cont);
add(msg, "au revoir.");
break;
case 10:
id = 1;
fill(msg, "Controle ");
add(msg, freq_cont);
add(msg, "bonne journee. ");
add(msg, immat_courte);
break;
case 11:
id = 1;
fill(msg, "Controle ");
add(msg, immat);
add(msg, "bonjour.");
break;
case 12:
id = 0;
fill(msg, immat_courte);
add(msg, "Controle, bienvenu.");
break;
case 13:
id = 1;
fill(msg, immat);
add(msg, avion);
add(msg, passagers);
add(msg, "sortie de ");
display_comm(msg, &(*ligne), id);
add(msg, aipt_depart);
add(msg, "vers ");
add(msg, aipt_arrivee);
break;
case 14:
id = 0;
fill(msg, immat_courte);
add(msg, "identifie radar.");
break;
case 15:
id = 0;
reset_comm(&(*ligne));
fill(msg, immat_courte);
add(msg, "Vous quittez mon espace, contactez ");
add(msg, aipt_arrivee);
display_comm(msg, &(*ligne), id);
fill(msg, freq_arrivee);
add(msg, "bon vol.");
break;
case 16:
id = 1;
fill(msg, aipt_arrivee);
add(msg, freq_arrivee);
add(msg, "au revoir. ");
add(msg, immat_courte);
break;
case 17:
id = 1;
fill(msg, aipt_arrivee);
add(msg, "tour, ");
add(msg, immat);
add(msg, "bonjour.");
break;
case 18:
id = 0;
fill(msg, immat_courte);
add(msg, aipt_arrivee);
add(msg, "bonjour.");
break;
case 19:
id = 1;
fill(msg, immat);
add(msg, avion);
add(msg, passagers);
add(msg, "demandons");
display_comm(msg, &(*ligne), id);
fill(msg, "consignes pour atterrissage sur ");
add(msg, aipt_arrivee);
break;
case 20:
id = 0;
fill(msg, immat_courte);
add(msg, "Commencez votre approche");
break;
case 21:
id = 1;
fill(msg, "Commencons notre approche ");
add(msg, immat_courte);
break;
case 22:
id = 1;
reset_comm(&(*ligne));
fill(msg, immat_courte);
add(msg, "en finale, demandons autorisation");
display_comm(msg, &(*ligne), id);
fill(msg, "d'atterrissage");
break;
case 23:
id = 0;
fill(msg, immat_courte);
add(msg, "autorise aterrissage. Rappelez au sol.");
break;
case 24:
id = 1;
fill(msg, "Autorise aterrissage, rappelons au sol, ");
add(msg, immat_courte);
break;
case 25:
id = 1;
fill(msg, immat_courte);
add(msg, "au sol, pour quitter, merci.");
break;
case 26:
id = 0;
fill(msg, immat_courte);
add(msg, "quittez la frequence, a bientot.");
}
display_comm(msg, &(*ligne), id);
*com_id += 1;
return id;
}
void display_comm (char *msg, int *ligne, int joueur)
{
if (*ligne >= 5) reset_comm(&(*ligne));
if (joueur)dtext(1, 1 + (*ligne * 12),msg, C_BLUE, C_NONE);
else dtext(1, 1 + (*ligne * 12),msg, C_BLACK, C_NONE);
*ligne += 1;
msg[0] = '\0';
}
void reset_comm (int *ligne)
{
*ligne = 0;
dclear(C_WHITE);
}
char *add(char *dest, const char *src)
{
unsigned long fin_dest = strlen(dest);
unsigned int i;
for (i = 0 ; i <= strlen(src) ; i++) dest[fin_dest + i] = src[i];
return dest;
}
char *fill(char *dest, const char *src)
{
unsigned int i;
for (i = 0 ; i <= strlen(src) ; i++)
{
dest[i] = src[i];
}
dest[strlen(dest) + 1] = '\0';
return dest;
}