Show newer

: So the profiler was pretty useful right now because I found a bunch of slow code, mostly resulting from performing too many method calls, and I managed to cut execution time in half! So it is quite nice to see where slowdowns actually are likely are!

Show thread

: Implemented a profiler (which took a few days) for SpringCoat so I can see how slow my code is! You can see here that LinkedList.size() is called 239k times, so I need to figure out why. Note ms means microsecond and not millisecond!

: Updating the versioning from 0.0.2 to 0.2.0 so that way I can more easily have bug-fix releases and such in the future, so I do not box myself into them and such.

: This time around for the LCDUI implementation, I will be taking the easier and simpler route. Before the system was far too complex and was pretty much hyper modular, but that increased complexity made it very unwieldy.

: I believe for fonts I will store font data in PCF format since it allows padding to int, fields set as int, and can be big endian. So this should be an easy to handle Java friendly format and such (since Java operates heavily on int).

: Initial run of SquirrelJME tests results of 23 tests ran, 18 passed and 5 failed. So this is pretty exciting that it can actually run some programs! Yay!

: Writing this code, I found a bunch of bugs that have slipped through the cracks for like a year. Examples: my upper case method was returning a blank string; I was reading the wrong key from a map for loading dependency information.

: I forgot to increment the size of the HashMap when entries were added into new buckets, this would explain some bugs.

: I found it pretty difficult to differentiate TODO and DEBUG messages between SpringCoat and the code running in it, so I added a simple number that indicates how deep the VMs are.

: I have implemented every instruction in the SpringCoat VM, so that means it can pretty much run every set of program. The only blanks needed to be filled in are the library code.

: Lex got a redesign! He was drawn by twitter.com/CMYKhia and you should totally commission and/or follow her! She is quite a talented artist and was wonderful to communicate with! Thank you so much!

: I am in the process of claiming cc.squirreljme and net.multiphasicapps so that way I could build and upload a Java ME 8 SDK for SquirrelJME, for development purposes. Just need to figure out how to do bootclasspath with Maven.

: Now that I have a sense of what I currently have, it is time to go through the project and do some house cleaning. This is where the numbers will be dropping as things will be removed and such.

: I think what would be cool in the future to demonstrate audio would be writing a tracker that can play modules.

: The JVM instruction invokespecial is pretty confusing. It can call constructors, super-class methods, and private methods. Also it has behavior that has been changed and removed in subsequent versions of the virtual machine.

: Now to write my own implementation of `HashMap`, which will be interesting but I guess I have a way I would do it. It should be too hard, I mean I did write a red-black tree implementation which definitely is more complex than this. I guess I will just do buckets!

Show older

Xer Shadow Tail ☄️🌺's choices:

Awoo Space

Awoo.space is a Mastodon instance where members can rely on a team of moderators to help resolve conflict, and limits federation with other instances using a specific access list to minimize abuse.

While mature content is allowed here, we strongly believe in being able to choose to engage with content on your own terms, so please make sure to put mature and potentially sensitive content behind the CW feature with enough description that people know what it's about.

Before signing up, please read our community guidelines. While it's a very broad swath of topics it covers, please do your best! We believe that as long as you're putting forth genuine effort to limit harm you might cause – even if you haven't read the document – you'll be okay!