tschak909 Posted March 21, 2021 Share Posted March 21, 2021 Am curious as to how I am supposed to handle processing the BREAK key in the CIO handler, am I supposed to (at any potentially wait-y spot): * Check BREAK key via $11 * If set, set Y to $80 and jump out? -Thom Quote Link to comment Share on other sites More sharing options...
Rybags Posted March 21, 2021 Share Posted March 21, 2021 (edited) Depends on what the device does and whether you can be subject to hangs or unwanted long timeouts. For a device doing external IO you'd probably want to be able to abort part way through a record read or write rather than waiting on a potentially long timeout. S: checks it on each iteration e.g. per pixel when doing a line or fill, which is sort of overkill although a fill operation could be something that takes some time. (though that said, the nature of internal handlers is that the PUT code doesn't necessarily know if it's doing a single operation only or one that's part of thousands) Not sure if the OS portion of CIO checks it - might be worth looking at some source listings there. Also, further down the line you have retry logic - a good example there is with DOS - pressing Break can sometimes interrupt an operation but often just causes a retry and multiple presses are needed to abort. Edited March 21, 2021 by Rybags Quote Link to comment Share on other sites More sharing options...
thorfdbg Posted April 2, 2021 Share Posted April 2, 2021 On 3/21/2021 at 7:39 AM, Rybags said: Not sure if the OS portion of CIO checks it - might be worth looking at some source listings there. No, CIO itself does not check the break flag. That is up to the handler to do. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.