Commit Graph

179 Commits

Author SHA1 Message Date
Scott Allen b71b2815b2 Indent some lines for consistency 2016-05-26 18:30:27 -04:00
Scott Allen ded48cef81 Fix setting CPU clock to 8MHz
A dedicated #define is used.
The PLL prescaler for USB is readjusted.
2016-05-26 18:30:27 -04:00
rogosher f6e7ee40e7 using bool type 2016-05-26 18:30:27 -04:00
rogosher ca2aeb19ec adding bool type 2016-05-26 18:30:27 -04:00
Josh Goebel 2361d0d20f audio on/off sets up pins appropriately for each mode 2016-05-26 18:30:27 -04:00
Scott Allen 44a175eae0 Change EEPROM write() to update() 2016-05-26 18:30:26 -04:00
Scott Allen 2d0a6317a3 Combine function __attribute__ statments
Also delete getInput keyword and add buttonsState keyword
2016-05-26 18:30:26 -04:00
Scott Allen daa2128252 Add a #define for the library version 2016-05-26 18:30:26 -04:00
Josh Goebel 993877b641 fix frame timing
previosly timing was calculating the next frame based on now + duration
when the correct timing should have been last_frame + duration.

This would have the effect of slowing the game down the higher your CPU
usage.  A 0% CPU usage game would  play at the request frame rate,
but a 100% CPU usage game would play at only half the requested frame rate.

(RR is render time below)

Timing with the bug:
60FPs requested, 35FPs actual, 3 frames, 87ms.
|         29ms         |         29ms         |         29ms         |
| RR 12ms + 17ms sleep | RR 12ms + 17ms sleep | RR 12ms + 17ms sleep |

Timing after the fix:
60FPs, 60FPs actual, 3 frames, 51ms.
|       17ms      |       17ms      |       17ms      |
| RR 12ms + sleep | RR 12ms + sleep | RR 12ms + sleep |

After this fix you may need to change your games timing mechanics or
adjust your frame rate (to slow things back down). Your game will run
faster after this fix, even if you were using "100% CPU" before.
2016-05-26 17:19:18 -04:00
Josh Goebel 81c534ee3d rip out tunes 2016-05-26 17:19:18 -04:00
Josh Goebel 390e5919dc break out printing into separate class (-2,014 bytes)
- stated savings is for any graphics only programs
  not using the printing code at all
2016-05-26 17:19:18 -04:00
Josh Goebel 6d13d7cb43 faster drawFastHLine from Adafruit SSD1306 lib
- +32 bytes for faster line rendering
2016-05-26 17:19:18 -04:00
Josh Goebel fe1ccc65ac explain why audio pins are not in bootPins 2016-05-26 17:19:18 -04:00
Josh Goebel f41441fe68 rename internal core boot utils for consistency 2016-05-26 17:19:18 -04:00
Josh Goebel c081d281fe reorder defines and use base 10 for clarity 2016-05-26 17:19:18 -04:00
Josh Goebel e346d587ca core.h already includes SPI 2016-05-26 17:19:18 -04:00
Josh Goebel 592d13bd93 individual pixel color is not a Core concept
- core only deals with pixel data in bytes (groups of 8 pixels)
- invert has no meaning at all to Core
2016-05-26 17:19:18 -04:00
Josh Goebel 47114cf366 remove extra ; 2016-05-26 17:19:18 -04:00
Josh Goebel a92747f38d rename bootLCD to bootOLED 2016-05-26 17:19:18 -04:00
Josh Goebel fa9d47310b move additional OLED command defines to .h 2016-05-26 17:19:18 -04:00
Josh Goebel a591ce7705 remove another unused variable 2016-05-26 17:19:18 -04:00
Josh Goebel 59c143af2f boot() should be public now 2016-05-26 17:19:17 -04:00
Josh Goebel 37cae4704b remove beginNoLogo, do not deprecate 2016-05-26 17:19:17 -04:00
Josh Goebel 3a1625a1db move tune_played default (false) to var declaration
- this way it's set even if begin() is not properly called
2016-05-26 17:19:17 -04:00
Josh Goebel 6ff1c13b22 we already have a minimal begin, it's boot() 2016-05-26 17:19:17 -04:00
Josh Goebel c25668de0e move utils back into begin() until we have more 2016-05-26 17:19:17 -04:00
Josh Goebel eb5fb39e28 minimal boot mode to save flash space 2016-05-26 17:19:17 -04:00
Josh Goebel 1e95b4edfe [spacing] remove extra spaces 2016-05-26 17:19:17 -04:00
Arduboy 982175ecac Squash commits up to Arduboy V1.1 release 2016-05-26 17:18:33 -04:00