-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Floppy eject/insert #897
Floppy eject/insert #897
Conversation
The first failing test is an openbsd floppy test that tests fdb behavior. Arguably the test should never have passed since fdb was never used in floppycontroller. |
Thanks! This works pretty well so far. I've left a few comments above, but in general there's nothing major in the way of merging. A few notes:
Few stylistic things:
|
Thanks for the review. I’ll address the style issues and wrong flag sets, and try to add an automated test using eject and insert. |
I ended up adding an “extra_images” config option (and field on V86Starter) so that the starter can download/initialize all the floppies or CDs or whatever that will be necessary. This way it’s easy to code up something to swap disks by name (as I do in the integration tests). |
I've added an async function on V86 to load an image file description as an image description, which I use from |
I went ahead and slightly refactored continue_init in the way I described, just so we have only one code path for loading image files. I left the put_on_settings function intact and did not use Promise.all since I thought it would complicate the progress bar-related code even more. |
Sorry for the spam--if you don't want the last commit, feel free to just use the preceding one and keep the code duplication. I thought adding the async function to load an image would be a smoother, nicer change than exposing v86util or the buffer types as exports of the library, since they kind of feel like implementation details. |
7bdfc93
to
29ecdee
Compare
I've refactored the tests and buffer loading. Also improved the command parser and implemented port 3F4 reset (for ReactOS and winxp, previously this code was never hit because we didn't run it without a floppy disk). Will merge when tests pass. |
212fc18
to
a3dab59
Compare
Also pushed another change to expose it in the UI. |
Thanks! |
This patch implements two new methods on FloppyController,
eject_fda
andinsert_fda
. These are not exposed to the UI yet, but from the browser console in debug mode they work for removing and inserting floppies in MS-DOS at least.Caveats:
So, please see this PR as a request for testing and review towards part of #54 .