[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: VM02 Beta 1
John B. Matthews wrote:
In article <9F%yk.355$YU2.75@nlpi066.nbdc.sbc.com>,
David Schmenk <dschmenk@YUCH.gmail.com> wrote:
<http://schmenk.is-a-geek.com/tarfiles/VM02BETA1.DSK.zip>
<http://schmenk.is-a-geek.com/tarfiles/vm02.beta1.src.zip>
[...] SourceForge [...]
Wurks gud:-) Thank you!
Awsum!
Several folks here work on SourceForge projects. Let me know how I can
help.
Thanks John- I've got a couple already there so it shouldn't be a
problem to migrate. I'll post a message, then start signing people up
for developer access.
I'm puzzled by Hello.java setting 80-column mode with "vm02.call(0,
0xC300);" commented out. What switches it to 40-columns after entering a
name?
[Sorry for the delay in responding; Ike took out the power here for the
best part of a day.]
Ah, yes. Good eye! When adding the device driver code, I cleaned up
some of the work-arounds I had. For the system I/O classes
(System.out/in) I check for an 80 column card during object
initialization and set it automatically. If you choose to use the lower
level conio class, you will have to set 80 column mode explicitly with a
tex80() call. I thought this would be a good compromise. Setting the
mode back to 40 columns required the disable-80-column-mode control
sequence (I send the codes for all the cards I know about). Here's the
rub - I only have the ref manuals for the IIe/IIc video card and a Videx
80 column card. So if you have a different card that uses different
control codes, it probably won't work. Send me the codes and I can add
them. You may see the codes printed out briefly, but I then print
backspaces to cover them up :-) I currently have one monolithic driver
for the console, but when I get more information about the different
cards, I will write a driver for each specific card to reduce the memory
footprint.
Besides the device drivers, the other major change since alpha was the
restart code. Instead of forcing a reboot when the program exits, it
now gives the option of reboot or run another Java program. This hasn't
been extensively tested so I expect to come across some problems. In
order to restart without having to write a lot of code, I simply reload
the VM02 binary on top of itself and jump to a warm init routine. This
reloads all the initialization code, which is what I was after. If you
find a failure after running a program (like a lockup or crash to
monitor) it's probably due to the restart code.
Thanks for taking the time to check it out,
Dave...