Again, we spent this week fixing bugs and adding more components. We are not adding new features but rather working on the features that are already implemented. Here’s the summary of what happened throughout the week.
We added more components to the web application. These components are LCD, Mtwi, Mspi. Previously we have had these components (Mtwi and Mspi), however we needed to change their names to Stwi and Sspi (hence, changing them from masters to slaves). So, for each protocol we have two components, one is slave and one is master.
A feature that we wanted to add to the LCD is to make its screen show text. This will be a useful feature when integrating the simulator with the schematic editor. After a lengthy discussion with Sumia and Khai Yong we reached to the conclusion that it is very complicated to actually simulate the LCD, especially that we did not even simulate the board in the schematic editor yet. We decided to delay this task for now, and the LCD now is just a static SVG picture.
Also, we added a Serial object. However, when testing it we found some problems. Let me talk about these bugs now.
Problems and bugs
The serial class is inheriting the Uart class. When defining a Serial object, both the Serial and the Uart appear in the object list. For now, the simple solution was to remove this inheritance, though a better solution should be implemented.
Another bug that occurred is that components get out of the editor when instantiating more than 30 components at once. This was because components was set by adding an offset to the previous component location. However, now the locations are tested to ensure that all components are within the editor screen.
Last week we changed the objectList format to be JSON format. Thus, we can use the Wt parser instead of parsing the file ourselves. A bug that we encountered is when the user does not instantiate any objects. In this case, the objectList file will be empty, hence, when it is parsed to update the schematic editor, a parsing error occurs. The solution was to ensure that when no object is created, the objectList file would contain an empty JSON array [ ] instead of being completely empty. This way, the parser would not produce a parsing error.
There were also many other bugs, such as that the editor cannot load when setting a component to front using toFront( ) function, and the format of the internal components that have an empty markup property, as well as many others. However, all these bugs have been fixed.
Well, that’s it. A thing worth noting is that on Friday we have presented our SIP/SIT presentations to our university supervisor, Dr. Lila Iznita.
Anyways, talk to you next time.