NanoComputer Bug Tracking Page

From NanoComputerWiki

Revision as of 18:28, 26 November 2008 by FlyingElectron (Talk | contribs)
(diff) ←Older revision | Current revision (diff) | Newer revision→ (diff)
Jump to: navigation, search

Open Bug Tracking List

Bug #4 - NanoComputer Tools conflicts with WinAVR

Status: To be Evaluated
Installing NanoComputer Tools on a machine with WinAVR installed causes makefiles not to compile properly.
Workaround is to add SHELL = cmd to top of makefile


Will be fixed in v1_10

Bug #3 - NC_CMD doesn't recognise / as a valid directory separator.

Evaluation
Will be fixed in v1_10. NC_CMD --upload will also be fixed to recognize both '\' and '/' as valid path separators.
Original Summary
Passing "--install output/cube" instead of output\cube results in the file still being uploaded, but with the file name of output/cube.app.
Found in v1_00
Note: Tracking Number IB_83

Bug #1 - NCFS_ReadFile may cause crash if size parameter is greater then available data in file

Evaluation
Will be fixed in v1_10
Original Summary
Passing in a size parameter greater then filesize - offset may cause a crash because the data buffer may become corrupted or no data may be read, yet NCFS_ReadFile will still return E_OK.
Found in v1_00
Note: Tracking Number IB_72


Closed Issues

Bug #2 - [Closed] LCD_Line goes crazy when you give it coordinates which are bigger than the screen

Evaluation
This is a valid problem.
It has been decided not to implement any kind of bounds checking or line cropping because it would impact the speed at which LCD_Line executes even for calls when the coordinates are in bounds because of the bounds checking code.
The rational behind this decision is that the coordinates would have to be first checked and then the line cropped to fit within the bounds. This is expensive because it involves a multiplication of the slope against the delta x or y to calculate the cropped coordinates.
The rational behind this decision is that the coordinates could be checked as each pixel position on the line is computed, but this would involve a check for each pixel which would be expensive in terms of performance.
Docs for LCD_Line will be updated to explicitly state that the coordinates must be within the range of the screen coordinates or else the behavior is undefined.
Original Summary
A bug in my sin function lead to values of x=6000 and y=-6000 being passed in for one of the coordinates, LCD_Line filled my entire screen with lines.
Found in v1_00
Note: Tracking Number IB_82