Browse Source

added sample project files

master
milang 1 month ago
parent
commit
470ee60a9f
14 changed files with 602 additions and 231 deletions
  1. BIN
      BitmapWs.g1a
  2. 0
    228
      LICENSE
  3. 134
    0
      Makefile
  4. 0
    3
      README.md
  5. BIN
      assets-cg/icon-cg-sel.png
  6. BIN
      assets-cg/icon-cg-uns.png
  7. BIN
      assets-fx/icon-fx.png
  8. 436
    0
      build-fx/map
  9. BIN
      build-fx/src/BitmapWs.bin
  10. BIN
      build-fx/src/BitmapWs.elf
  11. 1
    0
      build-fx/src/main.d
  12. BIN
      build-fx/src/main.o
  13. 19
    0
      project.cfg
  14. 12
    0
      src/main.c

BIN
BitmapWs.g1a View File


+ 0
- 228
LICENSE View File

@@ -1,228 +0,0 @@
Creative Commons Attribution-NonCommercial 2.0 CREATIVE COMMONS CORPORATION
IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS
LICENSE DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS
PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
REGARDING THE INFORMATION PROVIDED, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING
FROM ITS USE.

License

THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS
PUBLIC LICENSE ("CCPL" OR "LICENSE"). THE WORK IS PROTECTED BY COPYRIGHT AND/OR
OTHER APPLICABLE LAW. ANY USE OF THE WORK OTHER THAN AS AUTHORIZED UNDER THIS
LICENSE OR COPYRIGHT LAW IS PROHIBITED.

BY EXERCISING ANY RIGHTS TO THE WORK PROVIDED HERE, YOU ACCEPT AND AGREE TO
BE BOUND BY THE TERMS OF THIS LICENSE. THE LICENSOR GRANTS YOU THE RIGHTS
CONTAINED HERE IN CONSIDERATION OF YOUR ACCEPTANCE OF SUCH TERMS AND CONDITIONS.

1. Definitions

a. "Collective Work" means a work, such as a periodical issue, anthology or
encyclopedia, in which the Work in its entirety in unmodified form, along
with a number of other contributions, constituting separate and independent
works in themselves, are assembled into a collective whole. A work that constitutes
a Collective Work will not be considered a Derivative Work (as defined below)
for the purposes of this License.

b. "Derivative Work" means a work based upon the Work or upon the Work and
other pre-existing works, such as a translation, musical arrangement, dramatization,
fictionalization, motion picture version, sound recording, art reproduction,
abridgment, condensation, or any other form in which the Work may be recast,
transformed, or adapted, except that a work that constitutes a Collective
Work will not be considered a Derivative Work for the purpose of this License.
For the avoidance of doubt, where the Work is a musical composition or sound
recording, the synchronization of the Work in timed-relation with a moving
image ("synching") will be considered a Derivative Work for the purpose of
this License.

c. "Licensor" means the individual or entity that offers the Work under the
terms of this License.

d. "Original Author" means the individual or entity who created the Work.

e. "Work" means the copyrightable work of authorship offered under the terms
of this License.

f. "You" means an individual or entity exercising rights under this License
who has not previously violated the terms of this License with respect to
the Work, or who has received express permission from the Licensor to exercise
rights under this License despite a previous violation.

2. Fair Use Rights. Nothing in this license is intended to reduce, limit,
or restrict any rights arising from fair use, first sale or other limitations
on the exclusive rights of the copyright owner under copyright law or other
applicable laws.

3. License Grant. Subject to the terms and conditions of this License, Licensor
hereby grants You a worldwide, royalty-free, non-exclusive, perpetual (for
the duration of the applicable copyright) license to exercise the rights in
the Work as stated below:

a. to reproduce the Work, to incorporate the Work into one or more Collective
Works, and to reproduce the Work as incorporated in the Collective Works;

b. to create and reproduce Derivative Works;

c. to distribute copies or phonorecords of, display publicly, perform publicly,
and perform publicly by means of a digital audio transmission the Work including
as incorporated in Collective Works;

d. to distribute copies or phonorecords of, display publicly, perform publicly,
and perform publicly by means of a digital audio transmission Derivative Works;

The above rights may be exercised in all media and formats whether now known
or hereafter devised. The above rights include the right to make such modifications
as are technically necessary to exercise the rights in other media and formats.
All rights not expressly granted by Licensor are hereby reserved, including
but not limited to the rights set forth in Sections 4(d) and 4(e).

4. Restrictions.The license granted in Section 3 above is expressly made subject
to and limited by the following restrictions:

a. You may distribute, publicly display, publicly perform, or publicly digitally
perform the Work only under the terms of this License, and You must include
a copy of, or the Uniform Resource Identifier for, this License with every
copy or phonorecord of the Work You distribute, publicly display, publicly
perform, or publicly digitally perform. You may not offer or impose any terms
on the Work that alter or restrict the terms of this License or the recipients'
exercise of the rights granted hereunder. You may not sublicense the Work.
You must keep intact all notices that refer to this License and to the disclaimer
of warranties. You may not distribute, publicly display, publicly perform,
or publicly digitally perform the Work with any technological measures that
control access or use of the Work in a manner inconsistent with the terms
of this License Agreement. The above applies to the Work as incorporated in
a Collective Work, but this does not require the Collective Work apart from
the Work itself to be made subject to the terms of this License. If You create
a Collective Work, upon notice from any Licensor You must, to the extent practicable,
remove from the Collective Work any reference to such Licensor or the Original
Author, as requested. If You create a Derivative Work, upon notice from any
Licensor You must, to the extent practicable, remove from the Derivative Work
any reference to such Licensor or the Original Author, as requested.

b. You may not exercise any of the rights granted to You in Section 3 above
in any manner that is primarily intended for or directed toward commercial
advantage or private monetary compensation. The exchange of the Work for other
copyrighted works by means of digital file-sharing or otherwise shall not
be considered to be intended for or directed toward commercial advantage or
private monetary compensation, provided there is no payment of any monetary
compensation in connection with the exchange of copyrighted works.

c. If you distribute, publicly display, publicly perform, or publicly digitally
perform the Work or any Derivative Works or Collective Works, You must keep
intact all copyright notices for the Work and give the Original Author credit
reasonable to the medium or means You are utilizing by conveying the name
(or pseudonym if applicable) of the Original Author if supplied; the title
of the Work if supplied; to the extent reasonably practicable, the Uniform
Resource Identifier, if any, that Licensor specifies to be associated with
the Work, unless such URI does not refer to the copyright notice or licensing
information for the Work; and in the case of a Derivative Work, a credit identifying
the use of the Work in the Derivative Work (e.g., "French translation of the
Work by Original Author," or "Screenplay based on original Work by Original
Author"). Such credit may be implemented in any reasonable manner; provided,
however, that in the case of a Derivative Work or Collective Work, at a minimum
such credit will appear where any other comparable authorship credit appears
and in a manner at least as prominent as such other comparable authorship
credit.

d. For the avoidance of doubt, where the Work is a musical composition:

i. Performance Royalties Under Blanket Licenses. Licensor reserves the exclusive
right to collect, whether individually or via a performance rights society
(e.g. ASCAP, BMI, SESAC), royalties for the public performance or public digital
performance (e.g. webcast) of the Work if that performance is primarily intended
for or directed toward commercial advantage or private monetary compensation.

ii. Mechanical Rights and Statutory Royalties. Licensor reserves the exclusive
right to collect, whether individually or via a music rights agency or designated
agent (e.g. Harry Fox Agency), royalties for any phonorecord You create from
the Work ("cover version") and distribute, subject to the compulsory license
created by 17 USC Section 115 of the US Copyright Act (or the equivalent in
other jurisdictions), if Your distribution of such cover version is primarily
intended for or directed toward commercial advantage or private monetary compensation.
Webcasting Rights and Statutory Royalties. For the avoidance of doubt, where
the Work is a sound recording, Licensor reserves the exclusive right to collect,
whether individually or via a performance-rights society (e.g. SoundExchange),
royalties for the public digital performance (e.g. webcast) of the Work, subject
to the compulsory license created by 17 USC Section 114 of the US Copyright
Act (or the equivalent in other jurisdictions), if Your public digital performance
is primarily intended for or directed toward commercial advantage or private
monetary compensation.

5. Representations, Warranties and Disclaimer

UNLESS OTHERWISE MUTUALLY AGREED TO BY THE PARTIES IN WRITING, LICENSOR OFFERS
THE WORK AS-IS AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING
THE WORK, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING, WITHOUT LIMITATION,
WARRANTIES OF TITLE, MERCHANTIBILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT,
OR THE ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OF ABSENCE
OF ERRORS, WHETHER OR NOT DISCOVERABLE. SOME JURISDICTIONS DO NOT ALLOW THE
EXCLUSION OF IMPLIED WARRANTIES, SO SUCH EXCLUSION MAY NOT APPLY TO YOU.

6. Limitation on Liability. EXCEPT TO THE EXTENT REQUIRED BY APPLICABLE LAW,
IN NO EVENT WILL LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY FOR ANY SPECIAL,
INCIDENTAL, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY DAMAGES ARISING OUT OF THIS
LICENSE OR THE USE OF THE WORK, EVEN IF LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY
OF SUCH DAMAGES.

7. Termination

a. This License and the rights granted hereunder will terminate automatically
upon any breach by You of the terms of this License. Individuals or entities
who have received Derivative Works or Collective Works from You under this
License, however, will not have their licenses terminated provided such individuals
or entities remain in full compliance with those licenses. Sections 1, 2,
5, 6, 7, and 8 will survive any termination of this License.

b. Subject to the above terms and conditions, the license granted here is
perpetual (for the duration of the applicable copyright in the Work). Notwithstanding
the above, Licensor reserves the right to release the Work under different
license terms or to stop distributing the Work at any time; provided, however
that any such election will not serve to withdraw this License (or any other
license that has been, or is required to be, granted under the terms of this
License), and this License will continue in full force and effect unless terminated
as stated above.

8. Miscellaneous

a. Each time You distribute or publicly digitally perform the Work or a Collective
Work, the Licensor offers to the recipient a license to the Work on the same
terms and conditions as the license granted to You under this License.

b. Each time You distribute or publicly digitally perform a Derivative Work,
Licensor offers to the recipient a license to the original Work on the same
terms and conditions as the license granted to You under this License.

c. If any provision of this License is invalid or unenforceable under applicable
law, it shall not affect the validity or enforceability of the remainder of
the terms of this License, and without further action by the parties to this
agreement, such provision shall be reformed to the minimum extent necessary
to make such provision valid and enforceable.

d. No term or provision of this License shall be deemed waived and no breach
consented to unless such waiver or consent shall be in writing and signed
by the party to be charged with such waiver or consent.

e. This License constitutes the entire agreement between the parties with
respect to the Work licensed here. There are no understandings, agreements
or representations with respect to the Work not specified here. Licensor shall
not be bound by any additional provisions that may appear in any communication
from You. This License may not be modified without the mutual written agreement
of the Licensor and You.

Creative Commons is not a party to this License, and makes no warranty whatsoever
in connection with the Work. Creative Commons will not be liable to You or
any party on any legal theory for any damages whatsoever, including without
limitation any general, special, incidental or consequential damages arising
in connection to this license. Notwithstanding the foregoing two (2) sentences,
if Creative Commons has expressly identified itself as the Licensor hereunder,
it shall have all rights and obligations of Licensor.

Except for the limited purpose of indicating to the public that the Work is
licensed under the CCPL, neither party will use the trademark "Creative Commons"
or any related trademark or logo of Creative Commons without the prior written
consent of Creative Commons. Any permitted use will be in compliance with
Creative Commons' then-current trademark usage guidelines, as may be published
on its website or otherwise made available upon request from time to time.

Creative Commons may be contacted at http://creativecommons.org/.

+ 134
- 0
Makefile View File

@@ -0,0 +1,134 @@
#! /usr/bin/make -f
# Default Makefile for fxSDK add-ins. This file was probably copied there by
# the [fxsdk] program.
#---

#
# Configuration
#

include project.cfg

# Compiler flags
cf := -mb -ffreestanding -nostdlib -Wall -Wextra \
-fstrict-volatile-bitfields $(CFLAGS)
cf-fx := $(cf) -m3 -DFX9860G
cf-cg := $(cf) -m4-nofpu -DFXCG50

# Linker flags
lf-fx := $(LDFLAGS) -Tfx9860g.ld -lgint-fx -lgcc -Wl,-Map=build-fx/map
lf-cg := $(LDFLAGS) -Tfxcg50.ld -lgint-cg -lgcc -Wl,-Map=build-cg/map

dflags = -MMD -MT $@ -MF $(@:.o=.d) -MP
cpflags := -R .bss -R .gint_bss

g1af := -i "$(ICON_FX)" -n "$(NAME)" --internal="$(INTERNAL)"
g3af := -n basic:"$(NAME)" -i uns:"$(ICON_CG_UNS)" -i sel:"$(ICON_CG_SEL)"

#
# File listings
#

null :=
filename := $(subst $(null) $(null),-,$(NAME))

elf = $(dir $<)$(filename).elf
bin = $(dir $<)$(filename).bin
target-fx := $(filename).g1a
target-cg := $(filename).g3a

# Source files
src := $(wildcard src/*.c src/*/*.c src/*/*/*.c src/*/*/*/*.c)
assets-fx := $(wildcard assets-fx/*/*)
assets-cg := $(wildcard assets-cg/*/*)

# Object files
obj-fx := $(src:%.c=build-fx/%.o) $(assets-fx:assets-fx/%=build-fx/assets/%.o)
obj-cg := $(src:%.c=build-cg/%.o) $(assets-cg:assets-cg/%=build-cg/assets/%.o)

# Additional dependencies
deps-fx := $(ICON_FX)
deps-cg := $(ICON_CG_UNS) $(ICON_CG_SEL)

# All targets
all :=
ifneq "$(wildcard build-fx)" ""
all += all-fx
endif
ifneq "$(wildcard build-cg)" ""
all += all-cg
endif

#
# Build rules
#

all: $(all)

all-fx: $(target-fx)
all-cg: $(target-cg)

$(target-fx): $(obj-fx) $(deps-fx)

sh3eb-elf-gcc -o $(elf) $(obj-fx) $(cf-fx) $(lf-fx)
sh3eb-elf-objcopy -O binary $(cpflags) $(elf) $(bin)
fxg1a $(bin) -o $@ $(g1af)

$(target-cg): $(obj-cg) $(deps-cg)

sh4eb-elf-gcc -o $(elf) $(obj-cg) $(cf-cg) $(lf-cg)
sh4eb-elf-objcopy -O binary $(cpflags) $(elf) $(bin)
mkg3a $(g3af) $(bin) $@

# C sources
build-fx/%.o: %.c
@ mkdir -p $(dir $@)
sh3eb-elf-gcc -c $< -o $@ $(cf-fx) $(dflags)
build-cg/%.o: %.c
@ mkdir -p $(dir $@)
sh4eb-elf-gcc -c $< -o $@ $(cf-cg) $(dflags)

# Images
build-fx/assets/img/%.o: assets-fx/img/%
@ mkdir -p $(dir $@)
fxconv -i $< -o $@ --fx name:img_$(basename $*)

build-cg/assets/img/%.o: assets-cg/img/%
@ mkdir -p $(dir $@)
fxconv -i $< -o $@ --cg name:img_$(basename $*)

# Fonts
build-fx/assets/fonts/%.o: assets-fx/fonts/%
@ mkdir -p $(dir $@)
fxconv -f $< -o $@ name:font_$(basename $*) $(FONT.$*)

build-cg/assets/fonts/%.o: assets-cg/fonts/%
@ mkdir -p $(dir $@)
fxconv -f $< -o $@ name:font_$(basename $*) $(FONT.$*)

#
# Cleaning and utilities
#

# Dependency information
-include $(shell find build* -name *.d 2> /dev/null)
build-fx/%.d: ;
build-cg/%.d: ;
.PRECIOUS: build-fx build-cg build-fx/%.d build-cg/%.d %/

clean:
@ rm -rf build*
distclean: clean
@ rm -f $(target-fx) $(target-cg)

install-fx: $(target-fx)
p7 send -f $<
install-cg: $(target-cg)
@ while [[ ! -h /dev/Prizm1 ]]; do sleep 0.25; done
@ while ! mount /dev/Prizm1; do sleep 0.25; done
@ rm -f /mnt/prizm/$<
@ cp $< /mnt/prizm
@ umount /dev/Prizm1
@- eject /dev/Prizm1

.PHONY: all all-fx all-cg clean distclean install-fx install-cg

+ 0
- 3
README.md View File

@@ -1,3 +0,0 @@
# BitmapWars

The bitmap wars source code

BIN
assets-cg/icon-cg-sel.png View File


BIN
assets-cg/icon-cg-uns.png View File


BIN
assets-fx/icon-fx.png View File


+ 436
- 0
build-fx/map View File

@@ -0,0 +1,436 @@
Archive member included to satisfy reference by file (symbol)

/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
build-fx/src/main.o (getkey)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o) (waitevent)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
build-fx/src/main.o (dclear)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
build-fx/src/main.o (dtext)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o) (topti_asm_text)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o) (topti_render)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
build-fx/src/main.o (dupdate)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) (charset_size)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) (timer_setup)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) (gint_intlevel)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) (gint)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
(start)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) (gint_install)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o) (t6k11_display)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o) (memcpy)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(font5x7.png.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) (gint_font5x7)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o) (iokbd_scan)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) (clock_freq)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) (inth_tmu)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.S.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) (exch_entry_7305)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) (gint_setvbr)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o) (tlb_mapped_memory)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o) (__os_version)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o) (inth_entry_7305)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o) (__movmemSI24)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o) (__udivdi3)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o) (__udivsi3)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o) (__udiv_qrnnd_16)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
/usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o) (__clz_tab)

Discarded input sections

.comment 0x0000000000000000 0x12 build-fx/src/main.o
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
.comment 0x0000000000000000 0x12 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)

Memory Configuration

Name Origin Length Attributes
rom 0x0000000000300200 0x0000000000037000 xr
ram 0x0000000008100000 0x0000000000002000 rw
vbr 0x000000008800e000 0x0000000000001400 xrw
rram 0x000000008800f400 0x0000000000000c00 xrw
*default* 0x0000000000000000 0xffffffffffffffff

Linker script and memory map

LOAD build-fx/src/main.o
LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a
LOAD /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a
0x0000000000300000 _brom = 0x300000
0x00000000000020d0 _srom = ((((0x200 + SIZEOF (.text)) + SIZEOF (.rodata)) + SIZEOF (.gint.drivers)) + SIZEOF (.gint.blocks))

.pretext 0x0000000000300200 0x8a8
*(.pretext.entry)
.pretext.entry
0x0000000000300200 0x1cc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
0x0000000000300200 start
*(.pretext)
.pretext 0x00000000003003cc 0x4c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
0x00000000003003cc dtext
*fill* 0x0000000000300418 0x8
.pretext 0x0000000000300420 0x130 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
0x0000000000300530 topti_asm_text
.pretext 0x0000000000300550 0x2f0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
0x00000000003005f2 topti_render
.pretext 0x0000000000300840 0x110 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
0x0000000000300840 dfont
0x0000000000300858 charset_size
0x0000000000300884 charset_decode
0x00000000003008f2 topti_offset
.pretext 0x0000000000300950 0xd0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
0x0000000000300950 hw_detect
.pretext 0x0000000000300a20 0x88 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
0x0000000000300a20 __os_version
0x0000000000300a2c malloc
0x0000000000300a38 free
0x0000000000300a44 calloc
0x0000000000300a50 realloc
0x0000000000300a5c BFile_Remove
0x0000000000300a68 BFile_Create
0x0000000000300a74 BFile_Open
0x0000000000300a80 BFile_Close
0x0000000000300a8c BFile_Write
0x0000000000300a98 BFile_Read
0x0000000000300aa8 _btors = .
*(.ctors .ctors.*)
0x0000000000300aa8 _mtors = .
*(.dtors .dtors.*)
0x0000000000300aa8 _etors = .

.text 0x0000000000300aa8 0x17b0
*(.text .text.*)
.text 0x0000000000300aa8 0x0 build-fx/src/main.o
.text.startup 0x0000000000300aa8 0x44 build-fx/src/main.o
0x0000000000300aa8 main
.text 0x0000000000300aec 0x1c8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
0x0000000000300aec getkey_opt
0x0000000000300c6c getkey
0x0000000000300c78 getkey_repeat
.text 0x0000000000300cb4 0x2c8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
0x0000000000300e58 pollevent
0x0000000000300f44 waitevent
.text 0x0000000000300f7c 0x4c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
0x0000000000300f7c dclear
.text 0x0000000000300fc8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.text 0x0000000000300fc8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
.text 0x0000000000300fc8 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.text 0x0000000000300fc8 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
0x0000000000300fc8 dupdate
0x0000000000300fe0 dupdate_noint
.text 0x0000000000300fec 0x9c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
0x0000000000300fec dsize
.text 0x0000000000301088 0x56c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
0x00000000003013a8 timer_setup
0x0000000000301438 timer_delay
0x0000000000301498 timer_start
0x00000000003014cc timer_reload
0x00000000003014ec timer_pause
0x0000000000301520 timer_stop
0x000000000030157c timer_timeout
0x0000000000301588 timer_address
0x00000000003015c4 timer_clear
.text 0x00000000003015f4 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
0x00000000003015f4 gint_intlevel
0x0000000000301648 gint_inthandler
.text 0x000000000030166c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.text 0x000000000030166c 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.text 0x000000000030166c 0x170 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
0x0000000000301720 gint_install
0x00000000003017c4 gint_unload
.text 0x00000000003017dc 0x1d8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
0x0000000000301874 t6k11_display
0x0000000000301948 t6k11_contrast
0x0000000000301974 t6k11_backlight
.text 0x00000000003019b4 0xdc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
0x00000000003019b4 memcpy
0x0000000000301a6e _memmove
0x0000000000301a72 _memcmp
0x0000000000301a76 memset
.text 0x0000000000301a90 0x124 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
0x0000000000301a9c iokbd_row
0x0000000000301b84 iokbd_scan
.text 0x0000000000301bb4 0x150 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
0x0000000000301cf8 clock_freq
.text 0x0000000000301d04 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
.text 0x0000000000301d04 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.S.o)
.text 0x0000000000301d04 0x2c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
0x0000000000301d04 gint_setvbr
.text 0x0000000000301d30 0x1f4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
0x0000000000301d30 tlb_addr
0x0000000000301d44 tlb_data
0x0000000000301d58 tlb_mapped_memory
0x0000000000301e2c utlb_addr
0x0000000000301e3c utlb_data
0x0000000000301e4c utlb_mapped_memory
.text 0x0000000000301f24 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
.text 0x0000000000301f24 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
.text 0x0000000000301f24 0x78 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
0x0000000000301f24 __movstr
0x0000000000301f24 __movmem
0x0000000000301f58 __movmemSI64
0x0000000000301f58 __movstrSI64
0x0000000000301f5c __movstrSI60
0x0000000000301f5c __movmemSI60
0x0000000000301f60 __movmemSI56
0x0000000000301f60 __movstrSI56
0x0000000000301f64 __movstrSI52
0x0000000000301f64 __movmemSI52
0x0000000000301f68 __movstrSI48
0x0000000000301f68 __movmemSI48
0x0000000000301f6c __movstrSI44
0x0000000000301f6c __movmemSI44
0x0000000000301f70 __movstrSI40
0x0000000000301f70 __movmemSI40
0x0000000000301f74 __movstrSI36
0x0000000000301f74 __movmemSI36
0x0000000000301f78 __movmemSI32
0x0000000000301f78 __movstrSI32
0x0000000000301f7c __movmemSI28
0x0000000000301f7c __movstrSI28
0x0000000000301f80 __movstrSI24
0x0000000000301f80 __movmemSI24
0x0000000000301f84 __movmemSI20
0x0000000000301f84 __movstrSI20
0x0000000000301f88 __movstrSI16
0x0000000000301f88 __movmemSI16
0x0000000000301f8c __movmemSI12
0x0000000000301f8c __movstrSI12
0x0000000000301f90 __movmemSI8
0x0000000000301f90 __movstrSI8
0x0000000000301f94 __movmemSI4
0x0000000000301f94 __movstrSI4
.text 0x0000000000301f9c 0x1f0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
0x0000000000301f9c __udivdi3
.text 0x000000000030218c 0x6c /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
0x00000000003021ae __udivsi3
.text 0x00000000003021f8 0x60 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
0x00000000003021f8 __udiv_qrnnd_16
.text 0x0000000000302258 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
*(C P)

.gint.blocks 0x0000000000302260 0x140
*(.gint.blocks)
.gint.blocks 0x0000000000302260 0xe0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
0x0000000000302260 inth_tmu
0x00000000003022e0 inth_etmu2
0x0000000000302300 inth_etmu_help
0x0000000000302320 inth_etmux
.gint.blocks 0x0000000000302340 0x20 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.S.o)
0x0000000000302340 exch_entry_7705
0x0000000000302340 exch_entry_7305
.gint.blocks 0x0000000000302360 0x40 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
0x0000000000302360 inth_entry_7305
0x0000000000302380 inth_entry_7705

.gint.drivers 0x00000000003023a0 0x90
0x00000000003023a0 _bdrv = .
*(.gint.drivers.0)
*(.gint.drivers.1)
.gint.drivers.1
0x00000000003023a0 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
0x00000000003023a0 drv_cpg
*(.gint.drivers.2)
.gint.drivers.2
0x00000000003023c4 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
0x00000000003023c4 drv_tmu
*(.gint.drivers.3)
*(.gint.drivers.4)
.gint.drivers.4
0x00000000003023e8 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
0x00000000003023e8 drv_keysc
*(.gint.drivers.5)
.gint.drivers.5
0x000000000030240c 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
0x000000000030240c drv_t6k11
*(.gint.drivers.6)
0x0000000000302430 _edrv = .

.rodata 0x0000000000302430 0x550
*(.rodata .rodata.*)
.rodata.str1.4
0x0000000000302430 0x15 build-fx/src/main.o
*fill* 0x0000000000302445 0x3
.rodata.str1.4
0x0000000000302448 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
*fill* 0x000000000030244e 0x2
.rodata 0x0000000000302450 0x18 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.rodata.str1.4
0x0000000000302468 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.rodata.str1.4
0x000000000030246c 0x6 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
*fill* 0x0000000000302472 0x2
.rodata 0x0000000000302474 0x408 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(font5x7.png.o)
0x0000000000302474 gint_font5x7
0x000000000030287c gint_font5x7_end
.rodata.str1.4
0x000000000030287c 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.rodata 0x0000000000302880 0x100 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
0x0000000000302880 __clz_tab

.rela.dyn 0x0000000000302980 0x0
.rela.text 0x0000000000302980 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
.rela.pretext.entry
0x0000000000302980 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
0x0000000008100000 . = ORIGIN (ram)

.bss 0x0000000008100000 0x430
0x0000000008100000 _rbss = .
*(.bss COMMON)
.bss 0x0000000008100000 0x0 build-fx/src/main.o
.bss 0x0000000008100000 0xc /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
.bss 0x000000000810000c 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.bss 0x0000000008100030 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
.bss 0x0000000008100030 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.bss 0x0000000008100030 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
.bss 0x0000000008100030 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.bss 0x0000000008100030 0x400 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.S.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
.bss 0x0000000008100430 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
*(B R)
0x0000000008100430 . = ALIGN (0x10)
0x0000000000000430 _sbss = SIZEOF (.bss)

.data 0x0000000008100430 0x10 load address 0x0000000000302980
0x0000000000302980 _ldata = LOADADDR (.data)
0x0000000008100430 _rdata = .
*(.data .data.*)
.data 0x0000000008100430 0x0 build-fx/src/main.o
.data 0x0000000008100430 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(getkey.c.o)
.data 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.data 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dclear.c.o)
.data 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dtext.c.o)
.data 0x0000000008100438 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti-asm.s.o)
.data 0x0000000008100438 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
0x0000000008100438 topti_font
0x000000000810043c gint_default_font
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(topti.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(start.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(memory.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(iokbd.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.s.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(exch.S.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(vbr.s.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(mmu.c.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(syscalls.S.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_movmem.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivdi3.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udivsi3.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_udiv_qrnnd_16.o)
.data 0x0000000008100440 0x0 /usr/lib/gcc/sh3eb-elf/9.1.0/libgcc.a(_clz.o)
*(D)
0x0000000008100440 . = ALIGN (0x10)

.data.4 0x0000000008100440 0x0 load address 0x0000000000302990
*(.data.4)
0x0000000008100440 . = ALIGN (0x10)
0x0000000000000010 _sdata = (SIZEOF (.data) + SIZEOF (.data.4))
0x000000008800df00 _gint_vbr = 0x8800df00
0x000000008800f400 . = ORIGIN (rram)

.gint.data 0x000000008800f400 0x130 load address 0x0000000000302990
0x0000000000302990 _lgdata = LOADADDR (.gint.data)
0x000000008800f400 _rgdata = .
*(.gint.data .gint.data.*)
.gint.data 0x000000008800f400 0x18 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.gint.data 0x000000008800f418 0x4 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(dupdate.c.o)
0x000000008800f418 vram
.gint.data 0x000000008800f41c 0x70 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.gint.data 0x000000008800f48c 0x10 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
0x000000008800f48c SH7305_INTC
.gint.data.sh3
0x000000008800f49c 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(gint.c.o)
0x000000008800f49c SH7705_INTC
.gint.data 0x000000008800f4c0 0x8 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
*fill* 0x000000008800f4c8 0x8
.gint.data 0x000000008800f4d0 0x60 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(inth.S.o)
0x000000008800f530 . = ALIGN (0x10)
0x0000000000000130 _sgdata = SIZEOF (.gint.data)

.gint.bss 0x000000008800f530 0x210 load address 0x0000000000302ac0
*(.gint.bss .gint.bss.*)
.gint.bss 0x000000008800f530 0x100 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(keysc.c.o)
.gint.bss 0x000000008800f630 0x88 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(tmu.c.o)
.gint.bss 0x000000008800f6b8 0x40 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(hardware.c.o)
0x000000008800f6b8 gint
.gint.bss 0x000000008800f6f8 0x1c /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(setup.c.o)
.gint.bss 0x000000008800f714 0x1 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(t6k11.c.o)
*fill* 0x000000008800f715 0x3
.gint.bss 0x000000008800f718 0x24 /usr/lib/gcc/sh3eb-elf/9.1.0/libgint-fx.a(cpg.c.o)
0x000000008800f740 . = ALIGN (0x10)
*fill* 0x000000008800f73c 0x4
0x0000000000000210 _sgbss = SIZEOF (.gint.bss)

/DISCARD/
*(.debug_info .debug_abbrev .debug_loc .debug_aranges .debug_ranges .debug_line .debug_str)
*(.jcr)
*(.eh_frame_hdr)
*(.eh_frame)
*(.comment)
OUTPUT(build-fx/src/BitmapWs.elf elf32-sh)

BIN
build-fx/src/BitmapWs.bin View File


BIN
build-fx/src/BitmapWs.elf View File


+ 1
- 0
build-fx/src/main.d View File

@@ -0,0 +1 @@
build-fx/src/main.o: src/main.c

BIN
build-fx/src/main.o View File


+ 19
- 0
project.cfg View File

@@ -0,0 +1,19 @@
#---
# fxSDK project configuration file for BitmapWs
#---

# Project name, should be at most 8 bytes long.
NAME = BitmapWs
# Internal name, should be '@' followed by at most 7 uppercase letters.
INTERNAL = @BMPWARS

# fx-9860G icon location
ICON_FX = assets-fx/icon-fx.png
# fx-CG 50 icon locations
ICON_CG_UNS = assets-cg/icon-cg-uns.png
ICON_CG_SEL = assets-cg/icon-cg-sel.png

# Additional compiler flags
CFLAGS = -std=c11 -Os
# Additional linker flags
LDFLAGS =

+ 12
- 0
src/main.c View File

@@ -0,0 +1,12 @@
#include <gint/display.h>
#include <gint/keyboard.h>

int main(void)
{
dclear(C_WHITE);
dtext(1, 1, "Sample fxSDK add-in.", C_BLACK, C_NONE);
dupdate();

getkey();
return 1;
}

Loading…
Cancel
Save