1
0

147 Commits

Author SHA1 Message Date
Florian Fleissner
86833fae9a Blindly pull all plugins up to current 2020-01-16 16:24:10 +01:00
Jesse Vincent
3dc5e4ddd6
Blindly pull all plugins up to current 2020-01-06 21:26:21 -08:00
Jesse Vincent
340de890e8
Blindly pull all plugins up to current 2019-12-27 09:18:43 -08:00
Florian Fleissner
55065cec59 Blindly pull all plugins up to current 2019-12-20 08:42:49 +02:00
Jesse Vincent
3e3743904b Blindly pull all plugins up to current 2019-12-14 09:59:49 +08:00
Jesse Vincent
d2ba1f6359 Blindly pull all plugins up to current 2019-12-13 01:39:31 -08:00
Gergely Nagy
2c86549788
Blindly pull all plugins up to current 2019-12-13 04:23:51 +01:00
Gergely Nagy
d2efce6fd6
Merge pull request #23 from CapeLeidokos/pr_sketch_header_footer
Adds build recipe to paste header/footer to sketch
2019-12-12 17:00:14 +01:00
Florian Fleissner
7201f5a57d Added missing ctag fix to virtual/platform.txt
That part is just copied over from avr/platform.txt

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-12 13:58:05 +01:00
Florian Fleissner
7708c601a9 Adds build recipe to paste header/footer to sketch
This change adds a build recipe that pastes a header and footer file
to the preprocessed sketch file.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-12 13:57:47 +01:00
Florian Fleissner
6a5dbf1029 Blindly pull all plugins up to current 2019-12-06 14:01:02 +01:00
Jesse Vincent
2997644d22
astyle 2019-12-05 12:04:13 -08:00
Florian Fleissner
fd1e397a3e
Removed inaccessible members
Those members cause compiler warnings when using recent
compilers. The members are unused and can be safely removed as
they are inaccessible to derived classes.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-05 12:04:11 -08:00
Florian Fleissner
e66dd18abc
Removed obsolete submodule Kaleidoscope-Hardware-Virtual
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-05 12:03:31 -08:00
Florian Fleissner
fb9b1bdff9
Virtual EEPROM implementation moved over to virtual device
Only the virtual device knows about the size of its
EEPROM storage. Including device headers in the virtual
core is not intended (and technical not possible).

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-05 12:03:29 -08:00
Florian Fleissner
638306d7b3
Removed unused virtual/cores/mcu/atmega32u4.h
This file was introduced during an earlier stage of the
work on implementing a general virtual hardware. After
Kaleidoscope's device API redesign it is no more required.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-05 12:01:11 -08:00
Florian Fleissner
cf878783ad
Turned the virtual architectures virtual core to an arduino core
This makes the build much simpler as the FQBN
can now e.g. be given as keyboardio:virtual:model01
and the build process will automatically find the
virtual arduino core in virtual/cores/arduino

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-05 12:00:43 -08:00
Florian Fleissner
4e1e0693e0
Fixed compiler command line for virtual builds
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-05 12:00:42 -08:00
Florian Fleissner
3a666975e7
Removed superfluous -DKALEIDOSCOPE_HARDWARE_SPEC_H
...from the compiler command line

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-05 12:00:40 -08:00
Florian Fleissner
9949308aa9
virtual arch now shares boards.txt with avr arch
Generated a symbolic link from virtual/boards.txt to avr/boards.txt

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-12-05 12:00:39 -08:00
Jesse Vincent
b7e68cf6f9
Blindly pull all plugins up to current 2019-12-05 11:21:56 -08:00
Jesse Vincent
8fe8470067
Blindly pull all plugins up to current 2019-12-05 11:13:27 -08:00
Florian Fleissner
da4c3e1b31 Blindly pull all plugins up to current 2019-12-05 16:44:00 +01:00
Jesse Vincent
dfd903f0be
Blindly pull all plugins up to current 2019-11-22 19:07:00 -08:00
Jesse Vincent
b318046373
Blindly pull all plugins up to current 2019-11-20 17:09:50 -08:00
Jesse Vincent
475659a6e3
Blindly pull all plugins up to current 2019-09-26 15:58:00 -07:00
Jesse Vincent
33348f4ad9
Starting to clean up the bootloader for the Atreus2 2019-09-26 15:56:27 -07:00
Jesse Vincent
03788138d8
Blindly pull all plugins up to current 2019-09-25 12:50:13 -07:00
Jesse Vincent
4e91963e28
Blindly pull all plugins up to current 2019-09-17 13:10:35 -07:00
Jesse Vincent
5b9b07b881
Try to make the 'virtual' keyboards less appealing than the real ones,
to not confuse users. Also comment out all the non-model-01s for the
moment
2019-08-20 14:16:53 -07:00
Jesse Vincent
d21f5f5cfb
Rename the "Keyboardio Keyboards" section to "Kaleidoscope Keyboards" 2019-08-20 14:04:48 -07:00
Jesse Vincent
e4466abe92
Rename the 'virtual' keyboards section 2019-08-20 14:03:27 -07:00
Jesse Vincent
f2ae0e7cf8
Blindly pull all plugins up to current 2019-08-19 21:58:25 -07:00
Jesse Vincent
b354e5c67b Blindly pull all plugins up to current 2019-07-29 20:47:03 -07:00
Jesse Vincent
e204a8c6a9 Blindly pull all plugins up to current 2019-07-07 15:03:05 -07:00
Florian Fleissner
f748470608 Protected virtual build system against link order problems
This considers improvements that already had been considered for the avr
architecture.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:31:35 -07:00
Florian Fleissner
3fd900f7d6 Renamed ARDUINO_VIRUTAL to KALEIDOSCOPE_VIRTUAL_BUILD
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:31:10 -07:00
Florian Fleissner
8a8e5512bc Removed flag -Os for virtual builds
The virtual hardware is among other purposses meant
to be used for debugging firmware issues.

The flag -Os optimizes out specific information that makes
proper debugging difficult in some situations.

Also, the virtual hardware does not come with restrictions
in terms of PROGMEM. That's why space efficiency is not needed there.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:30:41 -07:00
Florian Fleissner
2acc10f5d6 Restructured the virtual hardware
Some parts were moved over from Kaleidoscope-Hardware-Virtual.
The virtual hardware is now a drop in for the real
pluggable USB interface.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:30:33 -07:00
Florian Fleissner
bfe2fc9d3e Added a weak callback for command line parsing
Consumer code can access the command line via
an additional callback of the virtual hardware.
This makes it possible to access the name of
the executable that is currently executed.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:30:25 -07:00
Florian Fleissner
72b0f91c6c Added directory preservation dummy files to virtual variant dirs
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:30:17 -07:00
Florian Fleissner
904f06de09 Run the testing executable of virtual builds as a build step
By this means it is possible to simplify running automatic
simulation based testing with virtual firmare builds.

If a firmware sketch defines a test function it will
be executed.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:30:08 -07:00
Florian Fleissner
61ac4a1586 Added optional execution of a testing function.
Through a command line parameter, the virtual
firmware executable can be instructed to execute
a testing function instead of processing
stdin/stdout I/O.

This can be used to attach an external
testing interface.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:29:57 -07:00
Florian Fleissner
cc38d157ae Enable c++ exceptions in virtual builds
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:29:48 -07:00
Florian Fleissner
6e5eee72bd Renamed hardward x86 -> virtual
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:29:38 -07:00
Florian Fleissner
f95d9e5084 Partially fixed virtual builds
This commit re-enables virtual builds with the Model01 keyboard.

The commit also prepares the infrastructure to generate virtual builds with all other
keyboards currently supported.

Please note that this commit does not enable virtual builds of the stock firmware
right away. This is because currently the stock firmware uses the
Model01-Testmode which is not compatible with virtual builds.

The stock firmware could be made ready for virtual builds by replacing the
Model01-Testmode with the more general HardwareTestMode.

In general for those features/plugins that do not support virtual builds,
this commit adds the generation of compiler error messages
that inform about what parts of the sketch need to be changed to allow virtual
builds.

To allow the stock firmware to build for the virtual core, just remove the
Model01-TestMode, then run the build on a unixoid system as follows.

cd ..../libraries/Model01-Firmware
ARCH=x86 make

With this change, virtual builds are furtheron triggered via setting ARCH=x86.
The board that firmware is meant to be build for is defined through the
BOARD variable, just like with non-virtual builds.

Please note that it is currently not yet possible to run virtual builds for
other keyboards than the Model01. This as because only for the Model01
specification files Model01_Spec.h/cpp have been generated.

To enable virtual builds for all keyboards, specification files need to be
factored out for all keyboards apart from Model01.

After all keyboards will have been made available to virtual builds
through future changes, it will be possible to build the whole examples set
as

cd ..../libraries/Kaleidoscope
ARCH=x86 BOARD_HARDWARE_PATH=$PWD/../../../.. make smoke-examples

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:29:20 -07:00
Jesse Vincent
821e2d3cf2 Blindly pull all plugins up to current 2019-07-07 13:10:46 -07:00
Jesse Vincent
60d06fdd42
Merge pull request #21 from CapeLeidokos/pr_HID_removed
Removed the redundant HID library
2019-06-19 14:05:25 -07:00
Florian Fleissner
16db1529b7 Removed the redundant HID library
The two contained c++ files are almost identical to those
in KeyboardioHID.

The HID library is not used by the build. Checks prove that two
firmware binaries build with and without the library are identical.

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-06-19 22:36:42 +02:00
Florian Fleissner
af96c42cfa Blindly pull all plugins up to current 2019-06-17 11:06:27 +02:00