Walt Nagel
unread,Aug 16, 2023, 8:13:50 PM8/16/23Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to MikeOS
I failed to mention in my previous post that the changes are transparent
to nearly all existing programs (the exception being one that dedicates
ES to another purpose).
While working on USB I have built/found some interesting programs (see
attached). These are assembled in the ordinary manner, using nasm. The
USB driver uses the .com format for auxiliary and installation programs.
It is an interesting format that allows passing information to the child
process without dedicating a register or system call to that purpose.
Although these supplemental programs could be compiled in a straight
binary format I will attempt to maintain the .com setup. To assemble one
of these programs you must set an environmental variable called do_debug
-- batch files that I use (less their extensions because of Google) are
part of the zip.
'do_com' is a binary loader for .com files that have been assembled for
MikeOS. MikeOS license. The .com must be less than about 30k to fit in
the user area with the loader.
'com_test' is a very simple 'hello world' program to test 'do_com'.
MikeOS license.
I found that reading PCI configuration data using the BIOS is
unsatisfactory. I modified 'pcisleep', by Eric Auer, from the FeeDOS
project to enumerate the PCI bus. GPL version 2. The modifications
removed some potentially dangerous code and translated the printouts to
MikeOS format. The printouts could use some additional formatting, but
the program appears to work. Mr. Auer uses the PCI access method 1 to
read configuration data.
I hope the code is interesting.
Cheers,
Walt