diff --git a/Sources/FlySim.g3a b/Sources/FlySim.g3a index c82913a..dc0810b 100644 Binary files a/Sources/FlySim.g3a and b/Sources/FlySim.g3a differ diff --git a/Sources/build-cg/map b/Sources/build-cg/map index a8a7aa9..0ab2aac 100644 --- a/Sources/build-cg/map +++ b/Sources/build-cg/map @@ -20,8 +20,8 @@ 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(stdio.c.o) + build-cg/src/main.o (_sprintf) /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o) 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) @@ -40,6 +40,8 @@ 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(stdio.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) @@ -54,8 +56,6 @@ 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(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) @@ -77,12 +77,13 @@ 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(stdio.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) @@ -120,9 +121,9 @@ 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 - 0x0000000000002f60 _srom = (((SIZEOF (.text) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks)) + 0x00000000000039ec _srom = (((SIZEOF (.text) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks)) -.text 0x0000000000300000 0x2478 +.text 0x0000000000300000 0x2e00 *(.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) @@ -149,205 +150,207 @@ LOAD /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a *(.dtors .dtors.*) 0x0000000000300604 _etors = . *(.text .text.*) - .text 0x0000000000300604 0x5d8 build-cg/src/main.o - 0x0000000000300604 _add - 0x0000000000300648 _fill - 0x0000000000300680 _fill_char - 0x00000000003006aa _display_comm - 0x0000000000300760 _communication - .text.startup 0x0000000000300bdc 0x74 build-cg/src/main.o - 0x0000000000300bdc _main - .text 0x0000000000300c50 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 0x0000000000300c50 0xf8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(mmu.c.o) - 0x0000000000300c50 _utlb_addr - 0x0000000000300c60 _utlb_data - 0x0000000000300c70 _utlb_mapped_memory - .text 0x0000000000300d48 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 0x0000000000300d48 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dvram.c.o) - 0x0000000000300d48 _dvram - .text 0x0000000000300d4c 0x30 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dupdate.c.o) - 0x0000000000300d4c _dupdate - 0x0000000000300d64 _dupdate_noint - .text 0x0000000000300d7c 0x48 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dclear.c.o) - 0x0000000000300d7c _dclear - .text 0x0000000000300dc4 0xc4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(drect.c.o) - 0x0000000000300dc4 _drect - .text 0x0000000000300e88 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 0x0000000000300e88 0x1e8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o) - 0x0000000000300e88 _getkey_opt - 0x0000000000301028 _getkey - 0x0000000000301034 _getkey_repeat - .text 0x0000000000301070 0x9c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o) - 0x0000000000301070 _dsize - .text 0x000000000030110c 0xd6 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o) - 0x000000000030110c _memcpy - 0x00000000003011c0 __memmove - 0x00000000003011c4 __memcmp - 0x00000000003011c8 _memset - .text 0x00000000003011e2 0x26 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o) - 0x00000000003011e2 _strlen - 0x00000000003011f2 _strncpy - .text 0x0000000000301208 0x2cc /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o) - 0x0000000000301258 _r61524_win_get - 0x0000000000301310 _r61524_win_set - 0x00000000003013d0 _r61524_display - .text 0x00000000003014d4 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 0x00000000003014d4 0xf0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o) - 0x0000000000301540 _gint_install - 0x00000000003015ac _gint_unload - .text 0x00000000003015c4 0x2c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(vbr.s.o) - 0x00000000003015c4 _gint_setvbr - .text 0x00000000003015f0 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 0x00000000003015f0 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 0x00000000003015f0 0x288 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o) - 0x000000000030176c _pollevent - 0x0000000000301840 _waitevent - .text 0x0000000000301878 0x4d0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o) - 0x0000000000301b00 _timer_setup - 0x0000000000301b94 _timer_delay - 0x0000000000301bf4 _timer_start - 0x0000000000301c28 _timer_reload - 0x0000000000301c48 _timer_pause - 0x0000000000301c7c _timer_stop - 0x0000000000301cd8 _timer_timeout - 0x0000000000301ce4 _timer_address - 0x0000000000301d18 _timer_clear - .text 0x0000000000301d48 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 0x0000000000301d48 0x268 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o) - 0x0000000000301d48 _dma_transfer_wait - 0x0000000000301e24 _dma_transfer - 0x0000000000301ed4 _dma_transfer_noint - .text 0x0000000000301fb0 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 0x0000000000301fb0 0x5c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o) - 0x0000000000301fb0 _gint_intlevel - 0x0000000000301fe8 _gint_inthandler - .text 0x000000000030200c 0xc8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o) - 0x00000000003020c8 _clock_freq - .text 0x00000000003020d4 0x78 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o) - 0x00000000003020d4 ___movmem - 0x00000000003020d4 ___movstr - 0x0000000000302108 ___movmemSI64 - 0x0000000000302108 ___movstrSI64 - 0x000000000030210c ___movmemSI60 - 0x000000000030210c ___movstrSI60 - 0x0000000000302110 ___movstrSI56 - 0x0000000000302110 ___movmemSI56 - 0x0000000000302114 ___movmemSI52 - 0x0000000000302114 ___movstrSI52 - 0x0000000000302118 ___movstrSI48 - 0x0000000000302118 ___movmemSI48 - 0x000000000030211c ___movmemSI44 - 0x000000000030211c ___movstrSI44 - 0x0000000000302120 ___movstrSI40 - 0x0000000000302120 ___movmemSI40 - 0x0000000000302124 ___movstrSI36 - 0x0000000000302124 ___movmemSI36 - 0x0000000000302128 ___movstrSI32 - 0x0000000000302128 ___movmemSI32 - 0x000000000030212c ___movmemSI28 - 0x000000000030212c ___movstrSI28 - 0x0000000000302130 ___movmemSI24 - 0x0000000000302130 ___movstrSI24 - 0x0000000000302134 ___movmemSI20 - 0x0000000000302134 ___movstrSI20 - 0x0000000000302138 ___movstrSI16 - 0x0000000000302138 ___movmemSI16 - 0x000000000030213c ___movmemSI12 - 0x000000000030213c ___movstrSI12 - 0x0000000000302140 ___movstrSI8 - 0x0000000000302140 ___movmemSI8 - 0x0000000000302144 ___movstrSI4 - 0x0000000000302144 ___movmemSI4 - *fill* 0x000000000030214c 0x14 - .text 0x0000000000302160 0x60 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem_i4.o) - 0x0000000000302168 ___movmem_i4_even - 0x0000000000302168 ___movstr_i4_even - 0x000000000030216e ___movmem_i4_odd - 0x000000000030216e ___movstr_i4_odd - 0x00000000003021a0 ___movmemSI12_i4 - 0x00000000003021a0 ___movstrSI12_i4 - .text 0x00000000003021c0 0x1ec /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o) - 0x00000000003021c0 ___udivdi3 - .text 0x00000000003023ac 0x6c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o) - 0x00000000003023ce ___udivsi3 - .text 0x0000000000302418 0x60 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udiv_qrnnd_16.o) - 0x0000000000302418 ___udiv_qrnnd_16 - .text 0x0000000000302478 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o) + .text 0x0000000000300604 0x3d8 build-cg/src/main.o + 0x0000000000300604 _fill_char + 0x000000000030062e _display_comm + 0x00000000003006e4 _communication + .text.startup 0x00000000003009dc 0x74 build-cg/src/main.o + 0x00000000003009dc _main + .text 0x0000000000300a50 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 0x0000000000300a50 0xf8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(mmu.c.o) + 0x0000000000300a50 _utlb_addr + 0x0000000000300a60 _utlb_data + 0x0000000000300a70 _utlb_mapped_memory + .text 0x0000000000300b48 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 0x0000000000300b48 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dvram.c.o) + 0x0000000000300b48 _dvram + .text 0x0000000000300b4c 0x30 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dupdate.c.o) + 0x0000000000300b4c _dupdate + 0x0000000000300b64 _dupdate_noint + .text 0x0000000000300b7c 0x48 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dclear.c.o) + 0x0000000000300b7c _dclear + .text 0x0000000000300bc4 0xc4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(drect.c.o) + 0x0000000000300bc4 _drect + .text 0x0000000000300c88 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 0x0000000000300c88 0x1e8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(getkey.c.o) + 0x0000000000300c88 _getkey_opt + 0x0000000000300e28 _getkey + 0x0000000000300e34 _getkey_repeat + .text 0x0000000000300e70 0x9c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o) + 0x0000000000300e70 _dsize + .text 0x0000000000300f0c 0xbf4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(stdio.c.o) + 0x0000000000301838 _kprint_opt + 0x0000000000301962 _kprint + 0x0000000000301a3c _kvsprint + 0x0000000000301a80 _sprintf + 0x0000000000301aa8 _vsprintf + 0x0000000000301ac8 _snprintf + 0x0000000000301ae8 _vsnprintf + .text 0x0000000000301b00 0x26 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(string.c.o) + 0x0000000000301b00 _strlen + 0x0000000000301b10 _strncpy + *fill* 0x0000000000301b26 0x2 + .text 0x0000000000301b28 0x2cc /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o) + 0x0000000000301b78 _r61524_win_get + 0x0000000000301c30 _r61524_win_set + 0x0000000000301cf0 _r61524_display + .text 0x0000000000301df4 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 0x0000000000301df4 0xf0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(setup.c.o) + 0x0000000000301e60 _gint_install + 0x0000000000301ecc _gint_unload + .text 0x0000000000301ee4 0x2c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(vbr.s.o) + 0x0000000000301ee4 _gint_setvbr + .text 0x0000000000301f10 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 0x0000000000301f10 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 0x0000000000301f10 0x288 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o) + 0x000000000030208c _pollevent + 0x0000000000302160 _waitevent + .text 0x0000000000302198 0xd6 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(memory.c.o) + 0x0000000000302198 _memcpy + 0x000000000030224c __memmove + 0x0000000000302250 __memcmp + 0x0000000000302254 _memset + *fill* 0x000000000030226e 0x2 + .text 0x0000000000302270 0x4d0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o) + 0x00000000003024f8 _timer_setup + 0x000000000030258c _timer_delay + 0x00000000003025ec _timer_start + 0x0000000000302620 _timer_reload + 0x0000000000302640 _timer_pause + 0x0000000000302674 _timer_stop + 0x00000000003026d0 _timer_timeout + 0x00000000003026dc _timer_address + 0x0000000000302710 _timer_clear + .text 0x0000000000302740 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 0x0000000000302740 0x268 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o) + 0x0000000000302740 _dma_transfer_wait + 0x000000000030281c _dma_transfer + 0x00000000003028cc _dma_transfer_noint + .text 0x00000000003029a8 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 0x00000000003029a8 0x5c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(gint.c.o) + 0x00000000003029a8 _gint_intlevel + 0x00000000003029e0 _gint_inthandler + .text 0x0000000000302a04 0xc8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o) + 0x0000000000302ac0 _clock_freq + .text 0x0000000000302acc 0x78 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o) + 0x0000000000302acc ___movmem + 0x0000000000302acc ___movstr + 0x0000000000302b00 ___movmemSI64 + 0x0000000000302b00 ___movstrSI64 + 0x0000000000302b04 ___movmemSI60 + 0x0000000000302b04 ___movstrSI60 + 0x0000000000302b08 ___movstrSI56 + 0x0000000000302b08 ___movmemSI56 + 0x0000000000302b0c ___movmemSI52 + 0x0000000000302b0c ___movstrSI52 + 0x0000000000302b10 ___movstrSI48 + 0x0000000000302b10 ___movmemSI48 + 0x0000000000302b14 ___movmemSI44 + 0x0000000000302b14 ___movstrSI44 + 0x0000000000302b18 ___movstrSI40 + 0x0000000000302b18 ___movmemSI40 + 0x0000000000302b1c ___movstrSI36 + 0x0000000000302b1c ___movmemSI36 + 0x0000000000302b20 ___movstrSI32 + 0x0000000000302b20 ___movmemSI32 + 0x0000000000302b24 ___movmemSI28 + 0x0000000000302b24 ___movstrSI28 + 0x0000000000302b28 ___movmemSI24 + 0x0000000000302b28 ___movstrSI24 + 0x0000000000302b2c ___movmemSI20 + 0x0000000000302b2c ___movstrSI20 + 0x0000000000302b30 ___movstrSI16 + 0x0000000000302b30 ___movmemSI16 + 0x0000000000302b34 ___movmemSI12 + 0x0000000000302b34 ___movstrSI12 + 0x0000000000302b38 ___movstrSI8 + 0x0000000000302b38 ___movmemSI8 + 0x0000000000302b3c ___movstrSI4 + 0x0000000000302b3c ___movmemSI4 + .text 0x0000000000302b44 0x1ec /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o) + 0x0000000000302b44 ___udivdi3 + .text 0x0000000000302d30 0x6c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o) + 0x0000000000302d52 ___udivsi3 + *fill* 0x0000000000302d9c 0x4 + .text 0x0000000000302da0 0x60 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udiv_qrnnd_16.o) + 0x0000000000302da0 ___udiv_qrnnd_16 + .text 0x0000000000302e00 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o) -.gint.blocks 0x0000000000302480 0x140 +.gint.blocks 0x0000000000302e00 0x140 *(.gint.blocks) - .gint.blocks 0x0000000000302480 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o) - 0x0000000000302480 _exch_entry_7305 - .gint.blocks 0x00000000003024a0 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o) - 0x00000000003024a0 _inth_entry_7305 - .gint.blocks 0x00000000003024c0 0xe0 /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_tmu - 0x0000000000302540 _inth_etmu2 - 0x0000000000302560 _inth_etmu_help - 0x0000000000302580 _inth_etmux - .gint.blocks 0x00000000003025a0 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o) - 0x00000000003025a0 _inth_dma_dma0 + .gint.blocks 0x0000000000302e00 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(exch.S.o) + 0x0000000000302e00 _exch_entry_7305 + .gint.blocks 0x0000000000302e20 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.S.o) + 0x0000000000302e20 _inth_entry_7305 + .gint.blocks 0x0000000000302e40 0xe0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o) + 0x0000000000302e40 _inth_tmu + 0x0000000000302ec0 _inth_etmu2 + 0x0000000000302ee0 _inth_etmu_help + 0x0000000000302f00 _inth_etmux + .gint.blocks 0x0000000000302f20 0x20 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(inth.s.o) + 0x0000000000302f20 _inth_dma_dma0 -.gint.drivers 0x00000000003025c0 0xb4 - 0x00000000003025c0 _bdrv = . +.gint.drivers 0x0000000000302f40 0xb4 + 0x0000000000302f40 _bdrv = . *(.gint.drivers.0) *(.gint.drivers.1) .gint.drivers.1 - 0x00000000003025c0 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o) - 0x00000000003025c0 _drv_cpg + 0x0000000000302f40 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(cpg.c.o) + 0x0000000000302f40 _drv_cpg *(.gint.drivers.2) .gint.drivers.2 - 0x00000000003025e4 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o) - 0x00000000003025e4 _drv_tmu + 0x0000000000302f64 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o) + 0x0000000000302f64 _drv_tmu .gint.drivers.2 - 0x0000000000302608 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o) - 0x0000000000302608 _drv_dma + 0x0000000000302f88 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o) + 0x0000000000302f88 _drv_dma *(.gint.drivers.3) *(.gint.drivers.4) .gint.drivers.4 - 0x000000000030262c 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o) - 0x000000000030262c _drv_keysc + 0x0000000000302fac 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(keysc.c.o) + 0x0000000000302fac _drv_keysc *(.gint.drivers.5) .gint.drivers.5 - 0x0000000000302650 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o) - 0x0000000000302650 _drv_r61524 + 0x0000000000302fd0 0x24 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(r61524.c.o) + 0x0000000000302fd0 _drv_r61524 *(.gint.drivers.6) - 0x0000000000302674 _edrv = . + 0x0000000000302ff4 _edrv = . -.rodata 0x0000000000302674 0x8f4 +.rodata 0x0000000000302ff4 0x9f8 *(.rodata.assets) *(.rodata .rodata.*) .rodata.str1.4 - 0x0000000000302674 0x321 build-cg/src/main.o - 0x32d (size before relaxing) - *fill* 0x0000000000302995 0x3 - .rodata 0x0000000000302998 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 0x00000000003029b0 0x49c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(font8x9.png.o) - 0x00000000003029b0 _gint_font8x9 - 0x0000000000302e4c _gint_font8x9_end + 0x0000000000302ff4 0x3f4 build-cg/src/main.o + .rodata 0x00000000003033e8 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.str1.4 - 0x0000000000302e4c 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* 0x0000000000302e53 0x1 + 0x0000000000303400 0x31 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(stdio.c.o) + *fill* 0x0000000000303431 0x3 + .rodata 0x0000000000303434 0x49c /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(font8x9.png.o) + 0x0000000000303434 _gint_font8x9 + 0x00000000003038d0 _gint_font8x9_end .rodata.str1.4 - 0x0000000000302e54 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* 0x0000000000302e5a 0x2 + 0x00000000003038d0 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* 0x00000000003038d7 0x1 .rodata.str1.4 - 0x0000000000302e5c 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(tmu.c.o) + 0x00000000003038d8 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* 0x00000000003038de 0x2 .rodata.str1.4 - 0x0000000000302e60 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dma.c.o) + 0x00000000003038e0 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 - 0x0000000000302e64 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 0x0000000000302e68 0x100 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o) - 0x0000000000302e68 ___clz_tab + 0x00000000003038e4 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 + 0x00000000003038e8 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 0x00000000003038ec 0x100 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o) + 0x00000000003038ec ___clz_tab -.rela.dyn 0x0000000000302f68 0x0 - .rela.text 0x0000000000302f68 0x0 build-cg/src/main.o +.rela.dyn 0x00000000003039ec 0x0 + .rela.text 0x00000000003039ec 0x0 build-cg/src/main.o .rela.pretext.entry - 0x0000000000302f68 0x0 build-cg/src/main.o - .rela.pretext 0x0000000000302f68 0x0 build-cg/src/main.o + 0x00000000003039ec 0x0 build-cg/src/main.o + .rela.pretext 0x00000000003039ec 0x0 build-cg/src/main.o 0x0000000008102000 . = ORIGIN (ram) -.bss 0x0000000008102000 0x30 +.bss 0x0000000008102000 0x150 0x0000000008102000 _rbss = . *(.bss COMMON) .bss 0x0000000008102000 0x0 build-cg/src/main.o @@ -361,81 +364,83 @@ 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(topti-asm.s.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) - 0x0000000000000030 _sbss = SIZEOF (.bss) + .bss 0x000000000810200c 0x114 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(stdio.c.o) + .bss 0x0000000008102120 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 0x0000000008102120 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 0x0000000008102120 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 0x0000000008102120 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 0x0000000008102120 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 0x0000000008102120 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 0x0000000008102120 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 0x0000000008102120 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 0x0000000008102144 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 0x0000000008102144 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 0x0000000008102144 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 0x0000000008102144 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 0x0000000008102144 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 0x0000000008102144 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 0x0000000008102144 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 0x0000000008102144 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o) + .bss 0x0000000008102144 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o) + .bss 0x0000000008102144 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o) + .bss 0x0000000008102144 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 0x0000000008102144 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o) + 0x0000000008102150 . = ALIGN (0x10) + *fill* 0x0000000008102144 0xc + 0x0000000000000150 _sbss = SIZEOF (.bss) -.data 0x0000000008102030 0x20 load address 0x0000000000302f68 - 0x0000000000302f68 _ldata = LOADADDR (.data) - 0x0000000008102030 _rdata = . +.data 0x0000000008102150 0x80 load address 0x00000000003039ec + 0x00000000003039ec _ldata = LOADADDR (.data) + 0x0000000008102150 _rdata = . *(.data .data.*) - .data 0x0000000008102030 0x0 build-cg/src/main.o - .data 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(start.c.o) - .data 0x0000000008102030 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(mmu.c.o) - .data 0x0000000008102030 0x8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o) - 0x0000000008102030 _topti_font - 0x0000000008102034 _gint_default_font - .data 0x0000000008102038 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dvram.c.o) - 0x0000000008102038 _vram - .data 0x000000000810203c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dupdate.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(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 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 0x0000000008102150 0x0 build-cg/src/main.o + .data 0x0000000008102150 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(start.c.o) + .data 0x0000000008102150 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(mmu.c.o) + .data 0x0000000008102150 0x8 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(topti.c.o) + 0x0000000008102150 _topti_font + 0x0000000008102154 _gint_default_font + .data 0x0000000008102158 0x4 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dvram.c.o) + 0x0000000008102158 _vram + .data 0x000000000810215c 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(dupdate.c.o) + .data 0x000000000810215c 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 0x000000000810215c 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 0x000000000810215c 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 0x000000000810215c 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 0x0000000008102164 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 0x0000000008102164 0x68 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgint-cg.a(stdio.c.o) + 0x0000000008102164 _kprint_formatters + .data 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 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 0x00000000081021cc 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_movmem.o) + .data 0x00000000081021cc 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivdi3.o) + .data 0x00000000081021cc 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_udivsi3.o) + .data 0x00000000081021cc 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 0x00000000081021cc 0x0 /Users/antoine/gcc/sh3eb-elf-2.32-8.3.0/lib/gcc/sh3eb-elf/8.3.0/libgcc.a(_clz.o) + 0x00000000081021d0 . = ALIGN (0x10) + *fill* 0x00000000081021cc 0x4 -.data.4 0x0000000008102050 0x0 load address 0x0000000000302f88 +.data.4 0x00000000081021d0 0x0 load address 0x0000000000303a6c *(.data.4) - 0x0000000008102050 . = ALIGN (0x10) - 0x0000000000000020 _sdata = (SIZEOF (.data) + SIZEOF (.data.4)) + 0x00000000081021d0 . = ALIGN (0x10) + 0x0000000000000080 _sdata = (SIZEOF (.data) + SIZEOF (.data.4)) 0x000000008c15ff00 _gint_vbr = (ORIGIN (vbr) - 0x100) 0x000000008c161400 . = ORIGIN (rram) -.gint.data 0x000000008c161400 0xd0 load address 0x0000000000302f88 - 0x0000000000302f88 _lgdata = LOADADDR (.gint.data) +.gint.data 0x000000008c161400 0xd0 load address 0x0000000000303a6c + 0x0000000000303a6c _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) @@ -450,7 +455,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 0x0000000000303058 +.gint.bss 0x000000008c1614d0 0x230 load address 0x0000000000303b3c *(.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) diff --git a/Sources/build-cg/src/FlySim.bin b/Sources/build-cg/src/FlySim.bin index ac2d1ba..2bd08ee 100755 Binary files a/Sources/build-cg/src/FlySim.bin and b/Sources/build-cg/src/FlySim.bin differ diff --git a/Sources/build-cg/src/FlySim.elf b/Sources/build-cg/src/FlySim.elf index 4e0f6aa..c29dd41 100755 Binary files a/Sources/build-cg/src/FlySim.elf and b/Sources/build-cg/src/FlySim.elf differ diff --git a/Sources/build-cg/src/main.o b/Sources/build-cg/src/main.o index 91b02d4..e9cf2cf 100644 Binary files a/Sources/build-cg/src/main.o and b/Sources/build-cg/src/main.o differ diff --git a/Sources/src/main.c b/Sources/src/main.c index 4c23d7e..c3aa369 100644 --- a/Sources/src/main.c +++ b/Sources/src/main.c @@ -1,39 +1,30 @@ //----- // Nom du projet : Fly Simulator // Version : - dev - -// Dernière modification le : 22 juillet 2019 +// Dernière modification le : 23 juillet 2019 //----- #include #include #include +#include #define C_RED 0xf800 #define C_GREEN 0x07e0 #define C_BLUE 0x001f /* -Éviter de donner des noms non standards à des fonctions standard + Ameliorations : -Quand tu prends des pointeurs en paramètres, si tu n'as pas l'intention de modifier les données alors mets const + - Quand tu prends des pointeurs en paramètres, si tu n'as pas l'intention de modifier les données alors mets const -Quand tu déclares une chaîne de caractères, char str[] = "xyz" fait une copie, si tu ne veux pas modifier la chaîne alors const char *str = "xyz" suffit (mineur) - -fill(msg_1, aipt_depart); add(msg_1, "tour, "); add(msg_1, immat); add(msg_1, "bonjour."); -sprintf(msg_1, "%s tour, %s bonjour.", aipt_depart, immat) */ //communication : gère les communications entre la tour et l'avion void communication (int *com_id, int *id); //display_comm : affiche les communications -void display_comm (char *msg_1, char *msg_2, char *msg_3, int *joueur); - -//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); +void display_comm (char *msg_1,char *msg_2,char *msg_3, const int *joueur); //fill_char : initialise une chaine avec un nombre de caractères répétés 'n' fois char *fill_char(char *dest, const char *src, unsigned int debut, unsigned int fin); @@ -61,7 +52,9 @@ int main (void) void communication(int *com_id, 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_1[70], msg_2[70], msg_3[70]; + const 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";//données de l'avion et de son trajet + + char msg_1[70], msg_2[70], msg_3[70]; fill_char(msg_1, " ", 0, 70); fill_char(msg_2, " ", 0, 70); @@ -72,197 +65,146 @@ void communication(int *com_id, int *id) case 1: *id = 1; - fill(msg_1, aipt_depart); - add(msg_1, "tour, "); - add(msg_1, immat); - add(msg_1, "bonjour."); + sprintf(msg_1, "%s tour, %s. Bonjour.", aipt_depart, immat); break; case 2: *id = 0; - fill(msg_1, immat); - add(msg_1, aipt_depart); - add(msg_1, "bonjour."); + sprintf(msg_1, "%s, %s bonjour.", immat, aipt_depart); break; case 3: *id = 1; - fill(msg_1, immat); - add(msg_1, avion); - add(msg_1, passagers); - add(msg_1, "demandons"); - fill(msg_2, "vol vers "); - add(msg_2, aipt_arrivee); + sprintf(msg_1, "%s %s. %s passagers a bord. Demandons", immat, avion, passagers); + sprintf(msg_2, "vol vers %s.", aipt_arrivee); break; case 4: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, "vol autorise. Rappelez pret au depart."); + sprintf(msg_1, "%s vol autorise. Rappelez pret au depart.", immat_courte); break; case 5: *id = 1; - fill(msg_1, "Rappelons pret au depart, "); - add(msg_1, immat_courte); + sprintf(msg_1, "Rappelons pret au depart, %s.", immat_courte); break; case 6: *id = 1; - fill(msg_1, immat_courte); - add(msg_1, "pret au depart."); + sprintf(msg_1, "%s, pret au depart.", immat_courte); break; case 7: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, "autorise decollage."); + sprintf(msg_1, "%s, autorise decollage.", immat_courte); break; case 8: *id = 1; - fill(msg_1, "Autorise decollage, "); - add(msg_1, immat_courte); + sprintf(msg_1, "Autorise decollage, %s.", immat_courte); break; case 9: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, "Vous quittez mon espace. Services radar"); - fill(msg_2, "et radio termines. Informations de vol avec"); - fill(msg_3, "Controle, "); - add(msg_3, freq_cont); - add(msg_3, "au revoir."); + sprintf(msg_1, "%s, Vous quittez mon espace. Services radar", immat_courte); + sprintf(msg_2, "et radio termines. Informations de vol avec"); + sprintf(msg_3, "Controle, %s. Au revoir.", freq_cont); break; case 10: *id = 1; - fill(msg_1, "Controle "); - add(msg_1, freq_cont); - add(msg_1, "bonne journee. "); - add(msg_1, immat_courte); + sprintf(msg_1, "Controle, %s. Bonne journee, %s.", freq_cont, immat_courte); break; case 11: *id = 1; - fill(msg_1, "Controle "); - add(msg_1, immat); - add(msg_1, "bonjour."); + sprintf(msg_1, "Controle %s. Bonjour.", immat); break; case 12: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, "Controle, bienvenu."); + sprintf(msg_1, "%s Controle, bienvenu.", immat_courte); break; case 13: *id = 1; - fill(msg_1, immat); - add(msg_1, avion); - add(msg_1, passagers); - add(msg_1, "sortie de "); - fill(msg_2, aipt_depart); - add(msg_2, "vers "); - add(msg_2, aipt_arrivee); + sprintf(msg_1, "%s %s. %s passagers a bord. Sortie de", immat, avion, passagers); + sprintf(msg_2, "%s vers %s.", aipt_depart, aipt_arrivee); break; case 14: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, "identifie radar."); + sprintf(msg_1, "%s, identifie radar.", immat_courte); break; case 15: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, "Vous quittez mon espace, contactez "); - add(msg_1, aipt_arrivee); - fill(msg_2, freq_arrivee); - add(msg_2, "bon vol."); + sprintf(msg_1, "%s, vous quittez mon espace. Contactez", immat_courte); + sprintf(msg_2, "%s, %s. Bon vol.", aipt_arrivee, freq_arrivee); break; case 16: *id = 1; - fill(msg_1, aipt_arrivee); - add(msg_1, freq_arrivee); - add(msg_1, "au revoir. "); - add(msg_1, immat_courte); + sprintf(msg_1, "%s %s. Au revoir, %s.", aipt_arrivee, freq_arrivee, immat_courte); break; case 17: *id = 1; - fill(msg_1, aipt_arrivee); - add(msg_1, "tour, "); - add(msg_1, immat); - add(msg_1, "bonjour."); + sprintf(msg_1, "%s tour, %s. Bonjour.", aipt_arrivee, immat); break; case 18: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, aipt_arrivee); - add(msg_1, "bonjour."); + sprintf(msg_1, "%s, %s, a l'ecoute.", immat_courte, aipt_arrivee); break; case 19: *id = 1; - fill(msg_1, immat); - add(msg_1, avion); - add(msg_1, passagers); - add(msg_1, "demandons"); - fill(msg_2, "consignes pour atterrissage sur "); - add(msg_2, aipt_arrivee); + sprintf(msg_1, "%s %s. %s passagers a bord. Demandons", immat, avion, passagers); + sprintf(msg_2, "consignes pour atterrissage sur %s.", aipt_arrivee); break; case 20: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, "Commencez votre approche"); + sprintf(msg_1, "%s, commencez votre approche.", immat_courte); break; case 21: *id = 1; - fill(msg_1, "Commencons notre approche "); - add(msg_1, immat_courte); + sprintf(msg_1, "Commencons notre approche, %s.", immat_courte); break; case 22: *id = 1; - fill(msg_1, immat_courte); - add(msg_1, "en finale, demandons autorisation"); - fill(msg_2, "d'atterrissage"); + sprintf(msg_1, "%s en finale, demandons autorisation", immat_courte); + sprintf(msg_2, "d'atterrissage."); break; case 23: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, "autorise aterrissage. Rappelez au sol."); + sprintf(msg_1, "%s, autorise atterrissage. Rappelez au sol.", immat_courte); break; case 24: *id = 1; - fill(msg_1, "Autorise aterrissage, rappelons au sol, "); - add(msg_1, immat_courte); + sprintf(msg_1, "Autorise atterrissage, rappelons au sol, %s.", immat_courte); break; case 25: *id = 1; - - fill(msg_1, immat_courte); - add(msg_1, "au sol, pour quitter, merci."); + sprintf(msg_1, "%s, au sol, pour quitter. Merci.", immat_courte); break; case 26: *id = 0; - fill(msg_1, immat_courte); - add(msg_1, "quittez la frequence, a bientot."); + sprintf(msg_1, "%s, quittez la frequence a bientot.", immat_courte); + break; } display_comm(msg_1, msg_2, msg_3, &(*id)); *com_id += 1; } -void display_comm (char *msg_1, char *msg_2, char *msg_3, int *joueur) +void display_comm (char *msg_1,char *msg_2, char *msg_3, const int *joueur) { fill_char(msg_1, " ", strlen(msg_1), 70); fill_char(msg_2, " ", strlen(msg_2), 70); @@ -281,23 +223,6 @@ void display_comm (char *msg_1, char *msg_2, char *msg_3, int *joueur) } -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]; - return dest; -} - - char *fill_char(char *dest, const char *src, unsigned int debut, unsigned int fin) { unsigned int i;