summaryrefslogtreecommitdiff
path: root/src/test
Commit message (Collapse)AuthorAge
* altos/test: Fix AES key format in test codeKeith Packard2017-07-23
| | | | | | Use temp variable instead of stepping on the AES name. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Fix printf format for int64 arithmetic testKeith Packard2017-07-23
| | | | | | Use 'long long' and %lld for 64-bit values when printing. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Add EasyMini test modeKeith Packard2017-07-21
| | | | | | Use baro-only mode, parse easymini logs. Signed-off-by: Keith Packard <keithp@keithp.com>
* Ignore ao_lisp_testKeith Packard2017-04-24
|
* altos/lisp: Clean up hanoi.lisp demo a bitKeith Packard2017-02-20
| | | | | | No serious changes. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Include memory stats for test programKeith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Build new ao_lisp_stack.c into test and lambdakeyKeith Packard2017-02-20
| | | | | | Helpful to include the new source file. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Take advantage of implicit progns in hanoi demoKeith Packard2017-02-20
| | | | | | | Remove extra progn wrappers now that cond, lambda and while all support implicit ones. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Clean up hanoi.lisp comments.Keith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Eliminate compiler warning about array bounds at -O3Keith Packard2017-02-20
| | | | | | | | | Using ao_lisp_pool - 4 caused the compiler to whinge about computing an address outside the bounds of the array. Sigh. Restructure the code to do the adjustment-by-4 in the integer computations instead of the pointer ones. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Disable position independent executablesKeith Packard2017-02-20
| | | | This makes debugging programs so much harder
* altos/lisp: Optimize chunk searching in collectKeith Packard2017-02-20
| | | | | | | Note range of existing chunks to exclude objects outside. Only look at chunks which have been set to reduce loop cost. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Add incremental collectionKeith Packard2017-02-20
| | | | | | | | | | | | Realizing that long-lived objects will eventually float to the bottom of the heap, I added a simple hack to the collector that 'remembers' the top of the heap the last time a full collect was run and then runs incremental collects looking to shift only objects above that boundary. That doesn't perfectly capture the bounds of transient objects, but does manage to reduce the amount of time spent not moving persistent objects each time through the collector. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Make hanoi example output a bit prettierKeith Packard2017-02-20
| | | | | | Make the towers symmetrical instead of lopsided. Much nicer looking. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: remove nth from hanoi.lispKeith Packard2017-02-20
| | | | | | It's now in ROM. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: remove duplicate 'length' lambda from hanoi exampleKeith Packard2017-02-20
| | | | | | This function is now a builtin. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Add license to hanoi demoKeith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Improve hanoi demoKeith Packard2017-02-20
| | | | | | | Repaint in place, without first clearing. This makes the updates a lot clealyer looking. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Show number of collect calls in ao_lisp_testKeith Packard2017-02-20
| | | | | | This helps tune the allocator Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Append a CRC to the saved image to validate on restoreKeith Packard2017-02-20
| | | | | | | The CRC is actually of the ROM bits, so we can tell if the restored image relates to the currently running code. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Add save/restore to ao_lisp_testKeith Packard2017-02-20
| | | | | | Allow testing of the save/restore code under Linux. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Share mark function for mark and moveKeith Packard2017-02-20
| | | | | | | These two operations both wanted to walk the referenced objects; sharing is caring. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: add length, pack, unpack and flushKeith Packard2017-02-20
| | | | | | lots more builtins Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Add towers of hanoi exampleKeith Packard2017-02-20
| | | | | | Uses vt100 escape sequences to animate the display even. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Improve lisp test program UIKeith Packard2017-02-20
| | | | | | | Add a prompt for stdin, read from other files on command line before stdin. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Clean up OS integration bits, add defunKeith Packard2017-02-20
| | | | | | | Provide an abstraction for the OS interface so that it can build more cleanly on Linux and AltOS. Add defun macro. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: working on lexical scopingKeith Packard2017-02-20
| | | | | | Not working yet Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add lambda support to lispKeith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Separate out values from atomsKeith Packard2017-02-20
| | | | | | | | | | | This enables changing values of atoms declared as constants, should enable lets, and with some work, even lexical scoping. this required changing the constant computation to run ao_lisp_collect() before dumping the block of constant data, and that uncovered some minor memory manager bugs. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/lisp: Change lisp objects to use ao_poly everywhere. Add constKeith Packard2017-02-20
| | | | | | | | | | | This makes all lisp objects use 16-bit ints for references so we can hold more stuff in small amounts of memory. Also adds a separate constant pool of lisp objects for builtins, initial atoms and constant lisp code. Now builds (and runs!) on the nucleo-32 boards. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add lisp readerKeith Packard2017-02-20
|
* Add first lisp bitsKeith Packard2017-02-20
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Fix testsKeith Packard2016-10-30
| | | | | | | A couple of fixups for ao_flight_test to dump pyro info only when running in debug mode, and to change the aprs testing Signed-off-by: Keith Packard <keithp@keithp.com>
* Switch from GPLv2 to GPLv2+Keith Packard2016-07-12
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Add easy mini plotting helper in test codeKeith Packard2016-04-13
| | | | Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Support old telemega eeprom file formats in ao_flight_testKeith Packard2015-03-10
| | | | | | | | The old eeprom format used different stoarge for the accel calibration data, which doesn't matter to this code, but the change in the format value does. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Sort out ao_gps_print altitude fetchingKeith Packard2014-10-25
| | | | | | | | | | ao_gps_print is used by both teledongle/telebt and the host-based GPS test code. The first instance uses the old internal GPS structure, containing just a 16-bit altitude while the second uses an ao_telemetry structure, which contains 32 bits split into two members. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Handle antenna down in ao_flight_testKeith Packard2014-09-29
| | | | | | | Parse the Pad orientation config value and flip the accelerometer value back around in antenna down configuration. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Add TMv2 test program to .gitignoreKeith Packard2014-09-11
|
* altos/test: Build TeleMetrumV2 flight test variantKeith Packard2014-07-13
| | | | | | Parses TeleMetrumV2 eeprom files and runs the TeleMetrumV2 flight code. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Use 32-bits for flight state data (alt/speed/accel)Keith Packard2014-07-10
| | | | | | | Stores 32-bits for all of the flight parameters. Uses 64-bit intermediates for kalman computation. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Extend GPS altitudes to at least 24 bits everywhereKeith Packard2014-07-10
| | | | | | | | Telemetry gets a special 'mode' flag indicating that 24-bit data is present; log files get new data and log readers are expected to detect that via the firmware version number. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/ao_flight_test: Get the Tmega version compiling againKeith Packard2014-06-24
| | | | | | A few changes broke this recently. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/aprs: Encode last serial number in SSID. Transmit serial in commentKeith Packard2014-06-20
| | | | | | | | This makes it a lot easier to tell which device is sending information, and to receive data from multiple devices on the same receiver. Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Test APRS altitude encodingKeith Packard2014-05-30
| | | | | | Verify fixed point version against naïve implementation Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Fix ADC structure for mega, use ao_config.hKeith Packard2014-05-25
| | | | | | | | This switches from hand-coding the ao_config structure to using ao_config.h and also updates the ADC structure for ao_flight_test_mega to using the same one as telemega does natively Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Make MS5607 PROM a public variableKeith Packard2014-05-25
| | | | | | | This will let the fake flight code update it as necessary, without creating a new interface in ao_ms5607.c Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Parse mega ground data. Fix pyro parsingKeith Packard2014-05-21
| | | | | | This gets ao_flight_test_mega working with eeprom files Signed-off-by: Keith Packard <keithp@keithp.com>
* altos/test: Get APRS generation test working againKeith Packard2014-05-21
| | | | | | | APRS now includes sat info, so we have to fake that up to generate an APRS test file Signed-off-by: Keith Packard <keithp@keithp.com>
* altos: Rename 'core' to 'kernel'Keith Packard2014-04-05
| | | | | | | core remains a bad name to use -- dirvish skips files (and directories, it seems) with that name. Signed-off-by: Keith Packard <keithp@keithp.com>