Hey Brian,

I think I found some of those array size fixes also, but not sure I found all the same one you did perhaps. I will double-check your repo.

The extra warning parameter on the "Cancel button" in display.cpp was correct ... I also made that change.

Ken

On 3/24/20 3:28 PM, Brian K. White wrote:
This version has a handful of build fixes and array size fixes, but does not yet have the speed fix Tom Wilson posted.

Well, my best guess at the proper fixes. I made the compiler warnings go away, but I'm not 100% sure they are really the right way to fix each item.

Some arrays looked like they were one byte too small so they couldn't hold their terminating null. But maybe the arrays were the right size and the variables that used them needed to be reduced by one instead.

Others were fuzzier like just needing more room for path strings, but no specific number, just, more, so I just picked a bigger value arbitrarily.

This shows everything in one diff
https://github.com/bkw777/VirtualT/commit/fe6df94725a5fcf1989964b22cb79848dc778a6d

Oh yeah I see some fltk fixes for newer versions too I forgot those.

Particularly I'm not sure if removing the Cancel button in display.cpp was correct. It makes the too-many-params error go away, but I don't know if that option was actually needed and so it needs some other fix that lets you still have the button.

I think Ken said he addressed the speed problem in his repo by now. I don't remember if he posted a github or other public link to his new git repo.

The diff for Tom's speed fix from my local copy is:
(not a real diff, I collapsed all the spaces for the email)

bkw@negre:~/src/VirtualT$ git diff HEAD^
diff --git a/src/io.c b/src/io.c
index 28bbdb4..ef4cf42 100644
--- a/src/io.c
+++ b/src/io.c
@@ -1262,14 +1262,15 @@ int inport(uchar port)
{
 if (fullspeed == 0)
  {
+  // Disabled per Tom Wilson <[email protected]> post to m100 list
   /* Loop through all LCD driver modules */
-  for (c = 0; c < 10; c++)
-   {
-    /* Check if this driver is enabled */
-    if (lcdbits & (1 << c))
-     if (lcdTime[c]+.000014 > hirestimer())
-      return (0x80);
-   }
+   //for (c = 0; c < 10; c++)
+   //{
+   // /* Check if this driver is enabled */
+   // if (lcdbits & (1 << c))
+   //  if (lcdTime[c]+.000014 > hirestimer())
+   //   return (0x80);
+   //}
    return 64;
   }
  else



Reply via email to