Hello Jim, hello Steve,

I didn't know how to report a bug to the GW-BASIC folks, but TK Chia
hangs
out on this list, so I thought I'd mention it here.

I do not think there is any official support for channel any more,
either at Microsoft, or anywhere else.  Microsoft also stated that
"[t]he source files in this repo are for historical reference and will
remain read-only and unmodified in their original state", so there is that.

But this GW-BASIC seems to treat "TIMER" as a variable, so it's the
same as
typing:
RANDOMIZE 0
or any uninitialized variable: (which are set to zero)

I checked the release GW-BASIC code.  I think it does kind of recognize
a TIMER keyword --- when it is in tokenized form --- but it is
considered to be an "Advanced Feature" (i.e. not supported in this
GW-BASIC version).

Other such "advanced" tokens are ERDEV (and likely ERDEV$), IOCTL (+ $),
CHDIR, MKDIR, RMDIR, SHELL, ENVIRON (+ $), VIEW, WINDOW, and PMAP.  The
implementations are stubbed out in GWSTS.ASM in the source.

However, a workaround is to use the value from the system time (TIME$)
and
use only the seconds. You can do that with the MID$() function.
LET SEED = VAL(MID$(TIME$,7,2))
That picks up only the seconds from the system time.

I think an improvement to this work-around would be to use more of the
TIME$ value, including the hours and minutes.  Picking up only the
seconds field means that there are only 60 possible seed values.

I don't know how hard it would be to add the 2.x functionality in,
especially if it needs to be done "clean", as opposed to taking it from
what I refer to as "black code" (i.e., leaked sources to QBASIC).  (And

I think a TIMER function should not be that hard to re-implement from
scratch.  But the stuff involving screen viewports might be harder to do.

I don't know whether MS would have problems with reconstituting a 3.2x
GW-BASIC - from what I can tell, TK Chia's taken a play-it-safe approach.)

Yes.  At the same time, I hear that Michal Necasek (www.os2museum.com)
has been working on a separate reconstruction --- involving proprietary
code bits --- but has not published his results yet.

I believe there are at least two separate possible sub-projects here:

(1) to only restore the original GW-BASIC functionality;

(2) to also add features found in later versions of GW-BASIC --- support
for subdirectories, EGA/VGA screen modes, etc. etc. etc. --- and
possibly to extend it even further (maybe even have it run natively on
Linux?).

Thank you!

--
https://github.com/tkchia


_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to