Skip to content
This repository has been archived by the owner on Oct 13, 2019. It is now read-only.

Merge changes from Ordinaryperson2's repo #50

Open
wants to merge 147 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
147 commits
Select commit Hold shift + click to select a range
c132007
Directory structure
CTurt Dec 5, 2014
e7f11f1
3DS
CTurt Dec 5, 2014
ec13bfb
.gitignore
CTurt Dec 5, 2014
deb743a
PC
CTurt Dec 5, 2014
1e033ad
.gitignore
CTurt Dec 5, 2014
127a0d1
Update README.md
CTurt Dec 5, 2014
517e6de
Banner
CTurt Dec 5, 2014
a854726
Icons
CTurt Dec 5, 2014
0bf5355
Converted icons and banners
CTurt Dec 5, 2014
0de07f2
Changed icon title
CTurt Dec 5, 2014
fcaf53d
3DS and CIA building
CTurt Dec 5, 2014
a359fa9
.gitignore
CTurt Dec 5, 2014
5eebef1
Remove alpha in icons
CTurt Dec 5, 2014
99d326a
Update README.md
CTurt Dec 5, 2014
a467a51
Update README.md
CTurt Dec 5, 2014
c0f572e
Update README.md
CTurt Dec 5, 2014
94c195f
Update README.md
CTurt Dec 5, 2014
b6699b3
Update README.md
CTurt Dec 6, 2014
c892c6a
smdh
CTurt Dec 6, 2014
960dd55
Drawing
CTurt Dec 6, 2014
0de6f0f
.gitignore smdh
CTurt Dec 6, 2014
002f116
settings structure
CTurt Dec 6, 2014
50fd420
Text
CTurt Dec 6, 2014
13256af
Merge branch 'master' of https://github.com/CTurt/3DSController
CTurt Dec 6, 2014
e25f852
Better error handling when vJoy not supported
CTurt Dec 6, 2014
61f3572
Base of custom key bindings
CTurt Dec 6, 2014
121a73d
Circle pad and touch customisable
CTurt Dec 7, 2014
4c061c4
Correct name of circlePad
CTurt Dec 7, 2014
3251bc5
Settings
CTurt Dec 7, 2014
4654c44
Reads settings
CTurt Dec 7, 2014
f57da08
Support special keys like SPACE, ENTER, ...
CTurt Dec 7, 2014
23bc5d5
Fixed reading settings
CTurt Dec 7, 2014
ebfedb9
Better moving of mouse with circle pad
CTurt Dec 7, 2014
9c6741a
Clean up repo
CTurt Dec 7, 2014
3e02d05
Deal with buffers less hackily
CTurt Dec 8, 2014
30fe81c
Less Windowsy
CTurt Dec 8, 2014
db8cb27
Update PC server
CTurt Dec 8, 2014
1775a9a
Print IP addresses
CTurt Dec 8, 2014
632c42f
Fixed key command
CTurt Dec 8, 2014
81a9720
Remove junk
CTurt Dec 9, 2014
27c8df1
Central Z axis
CTurt Dec 9, 2014
1e0ea5a
Added inputting of IP addresses -> not actually useful yet
Dec 10, 2014
085fae1
Merge pull request #6 from yodamerlin/master
CTurt Dec 10, 2014
3eae65d
Removed
CTurt Dec 10, 2014
7428dff
Added brewboard
CTurt Dec 10, 2014
33d85e4
More consistent capitalisation in settings
CTurt Dec 10, 2014
248f442
Allow unspecified analogue settings
CTurt Dec 10, 2014
8f7d748
Port as integer
CTurt Dec 10, 2014
c70d184
Changeable port
CTurt Dec 10, 2014
fd11211
IP reading, base of changeable port
CTurt Dec 10, 2014
996e412
3DS changeable port
CTurt Dec 10, 2014
fdebad5
Target name
CTurt Dec 11, 2014
5e17fcb
More custom buttons
CTurt Dec 11, 2014
046e15e
Update README.md
CTurt Dec 11, 2014
ef13b16
Version 0.2
CTurt Dec 11, 2014
fd11a3e
More description
CTurt Dec 12, 2014
8cae495
Support for unused keys
CTurt Dec 12, 2014
9bea339
Better reading of settings
CTurt Dec 12, 2014
bd54167
Updated the README for the new settings format
CTurt Dec 12, 2014
1a9e40f
More description
CTurt Dec 13, 2014
c9937e6
Throttling
CTurt Dec 13, 2014
9778656
Description of throttling
CTurt Dec 13, 2014
c5d1fe0
Configurable mouse speed
CTurt Dec 13, 2014
3a4c493
Threshold for circle pad when moving mouse
CTurt Dec 13, 2014
870210e
Port moved to settings struct and default to 8889
CTurt Dec 13, 2014
7d19e73
3DS default port changed to 8889
CTurt Dec 13, 2014
6813f9a
3DS default port changed to 8889
CTurt Dec 13, 2014
f373be6
Corrected Y axis for using touch screen as joystick
CTurt Dec 13, 2014
490d3c7
Fixed CLICK and RIGHT CLICK bindings
CTurt Dec 13, 2014
6d383b0
Version 0.3
CTurt Dec 14, 2014
9db682c
Merge remote-tracking branch 'origin/master'
CTurt Dec 10, 2014
3655563
Keyboard support!
CTurt Dec 15, 2014
a5dbb61
Removed brewboard
CTurt Dec 15, 2014
d666c48
Better threshold calculation
CTurt Dec 15, 2014
1e8bcda
Keyboard function proto
CTurt Dec 15, 2014
2fc8de0
Disabled unfinished IP input, fixed vblank
CTurt Dec 15, 2014
888acd9
Fully remove old keyboard
CTurt Dec 16, 2014
329341c
Specify framebuffer in drawing commands
CTurt Dec 16, 2014
09ab601
Pre-render keyboard
CTurt Dec 16, 2014
d899186
Rename font to drawing
CTurt Dec 16, 2014
40d5ebb
"input" conform to my standards
CTurt Dec 16, 2014
0a752de
Animate keyboard
CTurt Dec 16, 2014
978b76e
Warn you if your WiFi is off
CTurt Dec 17, 2014
bca8655
Support for more keys
CTurt Dec 17, 2014
482bf75
Clean up
CTurt Dec 17, 2014
5549cda
Support for absolute mouse movement
CTurt Dec 17, 2014
6ba5ea1
Out with the old, in with the new
CTurt Dec 17, 2014
eedb7d2
Described keyboard usage
CTurt Dec 17, 2014
8f4217d
Fire Tap event on touch release
CTurt Dec 17, 2014
6e49719
Version 0.4
CTurt Dec 17, 2014
8280828
Central rotation
CTurt Dec 19, 2014
351e9c1
Screenshot base
CTurt Dec 20, 2014
fda4d1c
Linky
CTurt Dec 21, 2014
25413ab
Screenshot functions
CTurt Dec 22, 2014
9c75dd2
C++ support
CTurt Dec 25, 2014
3847003
Link to gdiplus
CTurt Dec 26, 2014
f3de970
Take screenshot with JPEG compression
CTurt Dec 27, 2014
0c6b790
New screenshot names
CTurt Dec 28, 2014
6361f04
Packet changes
CTurt Dec 28, 2014
4ff57a3
Packet changes
CTurt Dec 29, 2014
d47ba24
Pseudo screenshot sending
CTurt Dec 30, 2014
75b84a5
General wireless.h update
CTurt Mar 21, 2015
850dcdf
Fix for latest ctrulib
CTurt Mar 21, 2015
da4d8ce
More ctrulib fixes
CTurt Mar 21, 2015
398d5d3
Update README.md
CTurt Mar 21, 2015
5d8240b
Fix touch bug
CTurt Mar 21, 2015
50db368
More pseudo screenshot functions
CTurt Mar 21, 2015
038af67
3DS init ACU service
CTurt Mar 21, 2015
2e72b1b
Support joypad key mapping
CTurt Mar 21, 2015
acad14c
Version 0.5
CTurt Mar 21, 2015
f826941
Link to gcc libs
CTurt Mar 22, 2015
da31996
Update for latest compilers and libraries
CTurt Jul 25, 2015
e4aee2a
Initial n3ds
Ordinaryperson2 Sep 6, 2015
f2241d3
Update vJoy dll
Ordinaryperson2 Sep 6, 2015
c84990d
Configurable dual joysticks
Ordinaryperson2 Sep 6, 2015
aa4e666
Reset configs to default
Ordinaryperson2 Sep 6, 2015
2a2bc44
Raised joystick button limit to 16, set default axis values.
Ordinaryperson2 Sep 6, 2015
a1f68e8
Update readme
Ordinaryperson2 Sep 6, 2015
b2c7c42
Merge pull request #9 from Ordinaryperson2/master
CTurt Sep 6, 2015
2f5bd49
General fixes
CTurt Sep 6, 2015
800657c
Take out the trash
CTurt Sep 6, 2015
6577488
backlight
CTurt Sep 6, 2015
d9f5ac9
0.6
CTurt Sep 6, 2015
ef59dcd
Add note about updated vJoy
CTurt Sep 8, 2015
da0a344
Merge pull request #5 from CTurt/master
Ordinaryperson2 Sep 9, 2015
d51123d
Testing Git for Windows.
RedTopper Oct 3, 2015
ca1f816
Keyboard is less fuzzy and backlight turns off when the keyboard is c…
RedTopper Oct 3, 2015
7352c30
3ds transmits volume status.
RedTopper Oct 4, 2015
82917a0
Added ability to use POV hat.
RedTopper Oct 4, 2015
ef7b8c2
Fixed some bindings and added tweaks.
RedTopper Oct 4, 2015
79bef7c
Prep for a pull request.
RedTopper Oct 4, 2015
7e64fea
Clear keys on exit
Ordinaryperson2 Oct 16, 2015
0684a48
Made vJoy Device configurabe
Ordinaryperson2 Oct 16, 2015
b86ad46
Version bump
Ordinaryperson2 Oct 16, 2015
f3381fb
CPad and CStick as keys
Ordinaryperson2 Oct 16, 2015
b0faecd
Added 4 dir hat switch and more keys
Ordinaryperson2 Oct 18, 2015
752f616
Update build_cia.rsf
thedax Oct 18, 2015
e6dba74
Update gw_workaround.rsf
thedax Oct 18, 2015
23cf67f
Merge pull request #6 from thedax/master
Ordinaryperson2 Oct 18, 2015
d486f31
Recompiled using the latest ctrulib
RedTopper Nov 1, 2015
b3fe668
Initial merge of RedInquisitive's branch
Ordinaryperson2 Nov 11, 2015
7693a7c
Upload builds
Ordinaryperson2 Nov 11, 2015
fbee1b4
Rebuild on latest libctru
Ordinaryperson2 Nov 11, 2015
4a99a1b
Unified Pov styles, reorganised ini
Ordinaryperson2 Nov 12, 2015
b245090
Version bump, fixed .ini instructions
Ordinaryperson2 Nov 12, 2015
63268cd
Got CIA and 3DS building working
Ordinaryperson2 Nov 12, 2015
24d5bd8
Add linux support for new branch
goose121 May 25, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
3DS/build/
3DS/*.elf
3DS/*stripped.elf
PC/build/
*.pnproj
*.pnps
*.ppg
Binary file added 3DS/3DSController.3ds
Binary file not shown.
Binary file added 3DS/3DSController.3dsx
Binary file not shown.
Binary file added 3DS/3DSController.cia
Binary file not shown.
4 changes: 4 additions & 0 deletions 3DS/3DSController.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Change the IP to be your PC's local IP, (run 3DSController.exe to find it),

IP: 192.168.0.4
Port: 8889
Binary file added 3DS/3DSController.smdh
Binary file not shown.
188 changes: 188 additions & 0 deletions 3DS/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,188 @@
#---------------------------------------------------------------------------------
.SUFFIXES:
#---------------------------------------------------------------------------------

ifeq ($(strip $(DEVKITARM)),)
$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
endif

TOPDIR ?= $(CURDIR)
include $(DEVKITARM)/3ds_rules

#---------------------------------------------------------------------------------
# TARGET is the name of the output
# BUILD is the directory where object files & intermediate files will be placed
# SOURCES is a list of directories containing source code
# DATA is a list of directories containing data files
# INCLUDES is a list of directories containing header files
#
# NO_SMDH: if set to anything, no SMDH file is generated.
# APP_TITLE is the name of the app stored in the SMDH file (Optional)
# APP_DESCRIPTION is the description of the app stored in the SMDH file (Optional)
# APP_AUTHOR is the author of the app stored in the SMDH file (Optional)
# ICON is the filename of the icon (.png), relative to the project folder.
# If not set, it attempts to use one of the following (in this order):
# - <Project name>.png
# - icon.png
# - <libctru folder>/default_icon.png
#---------------------------------------------------------------------------------
TARGET := 3DSController
BUILD := build
SOURCES := source
DATA := data
INCLUDES := include

APP_TITLE := 3DS Controller
APP_DESCRIPTION :=
APP_AUTHOR := CTurt
ICON := cxi/icon48x48.png

#---------------------------------------------------------------------------------
# options for code generation
#---------------------------------------------------------------------------------
ARCH := -march=armv6k -mtune=mpcore -mfloat-abi=hard

CFLAGS := -g -Wall -O2 -mword-relocations \
-fomit-frame-pointer -ffast-math \
-fms-extensions \
$(ARCH)

CFLAGS += $(INCLUDE) -DARM11 -D_3DS

CXXFLAGS := $(CFLAGS) -fno-rtti -fno-exceptions -std=gnu++11

ASFLAGS := -g $(ARCH)
LDFLAGS = -specs=3dsx.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)

LIBS := -lctru -lm

#---------------------------------------------------------------------------------
# list of directories containing libraries, this must be the top level containing
# include and lib
#---------------------------------------------------------------------------------
LIBDIRS := $(CTRULIB)


#---------------------------------------------------------------------------------
# no real need to edit anything past this point unless you need to add additional
# rules for different file extensions
#---------------------------------------------------------------------------------
ifneq ($(BUILD),$(notdir $(CURDIR)))
#---------------------------------------------------------------------------------

export OUTPUT := $(CURDIR)/$(TARGET)
export TOPDIR := $(CURDIR)

export VPATH := $(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
$(foreach dir,$(DATA),$(CURDIR)/$(dir))

export DEPSDIR := $(CURDIR)/$(BUILD)

CFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.c)))
CPPFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
SFILES := $(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
BINFILES := $(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))

#---------------------------------------------------------------------------------
# use CXX for linking C++ projects, CC for standard C
#---------------------------------------------------------------------------------
ifeq ($(strip $(CPPFILES)),)
#---------------------------------------------------------------------------------
export LD := $(CC)
#---------------------------------------------------------------------------------
else
#---------------------------------------------------------------------------------
export LD := $(CXX)
#---------------------------------------------------------------------------------
endif
#---------------------------------------------------------------------------------

export OFILES := $(addsuffix .o,$(BINFILES)) \
$(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)

export INCLUDE := $(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
-I$(CURDIR)/$(BUILD)

export LIBPATHS := $(foreach dir,$(LIBDIRS),-L$(dir)/lib)

ifeq ($(strip $(ICON)),)
icons := $(wildcard *.png)
ifneq (,$(findstring $(TARGET).png,$(icons)))
export APP_ICON := $(TOPDIR)/$(TARGET).png
else
ifneq (,$(findstring icon.png,$(icons)))
export APP_ICON := $(TOPDIR)/icon.png
endif
endif
else
export APP_ICON := $(TOPDIR)/$(ICON)
endif

.PHONY: $(BUILD) clean all

#---------------------------------------------------------------------------------
all: $(BUILD)

$(BUILD):
@[ -d $@ ] || mkdir -p $@
@make --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile

#---------------------------------------------------------------------------------
clean:
@echo clean ...
@rm -fr $(BUILD) $(TARGET).3dsx $(OUTPUT).3ds $(OUTPUT).cia $(OUTPUT).smdh $(TARGET).elf $(OUTPUT)stripped.elf


#---------------------------------------------------------------------------------
else

DEPENDS := $(OFILES:.o=.d)

#---------------------------------------------------------------------------------
# main targets
#---------------------------------------------------------------------------------
ifeq ($(strip $(NO_SMDH)),)
.PHONY: all
all : $(OUTPUT).3dsx $(OUTPUT).3ds $(OUTPUT).cia $(OUTPUT).smdh
endif

$(OUTPUT).3dsx : $(OUTPUT).elf

$(OUTPUT).3ds : $(OUTPUT)stripped.elf
makerom -f cci -o $(OUTPUT).3ds -rsf "$(TOPDIR)/cxi/build_cia.rsf" -target t -exefslogo -elf $(OUTPUT)stripped.elf -icon "$(TOPDIR)/cxi/icon.icn" -banner "$(TOPDIR)/cxi/banner.bnr"

$(OUTPUT).cia : $(OUTPUT)stripped.elf
makerom -f cia -o $(OUTPUT).cia -elf $(OUTPUT)stripped.elf -rsf "$(TOPDIR)/cxi/build_cia.rsf" -icon "$(TOPDIR)/cxi/icon.icn" -banner "$(TOPDIR)/cxi/banner.bnr" -exefslogo -target t

$(OUTPUT).elf : $(OFILES)

$(OUTPUT)stripped.elf : $(OUTPUT).elf
cp -f $(OUTPUT).elf $(OUTPUT)stripped.elf
@arm-none-eabi-strip $(OUTPUT)stripped.elf

#---------------------------------------------------------------------------------
# you need a rule like this for each extension you use as binary data
#---------------------------------------------------------------------------------
%.bin.o : %.bin
#---------------------------------------------------------------------------------
@echo $(notdir $<)
@$(bin2o)

# WARNING: This is not the right way to do this! TODO: Do it right!
#---------------------------------------------------------------------------------
%.vsh.o : %.vsh
#---------------------------------------------------------------------------------
@echo $(notdir $<)
@python $(AEMSTRO)/aemstro_as.py $< ../$(notdir $<).shbin
@bin2s ../$(notdir $<).shbin | $(PREFIX)as -o $@
@echo "extern const u8" `(echo $(notdir $<).shbin | sed -e 's/^\([0-9]\)/_\1/' | tr . _)`"_end[];" > `(echo $(notdir $<).shbin | tr . _)`.h
@echo "extern const u8" `(echo $(notdir $<).shbin | sed -e 's/^\([0-9]\)/_\1/' | tr . _)`"[];" >> `(echo $(notdir $<).shbin | tr . _)`.h
@echo "extern const u32" `(echo $(notdir $<).shbin | sed -e 's/^\([0-9]\)/_\1/' | tr . _)`_size";" >> `(echo $(notdir $<).shbin | tr . _)`.h
@rm ../$(notdir $<).shbin

-include $(DEPENDS)

#---------------------------------------------------------------------------------------
endif
#---------------------------------------------------------------------------------------
Binary file added 3DS/cxi/banner.bnr
Binary file not shown.
Binary file added 3DS/cxi/banner.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading