MHaensel Posted May 25, 2021 Share Posted May 25, 2021 On an emulated Model I in trs80gp, keyboard response is slow. Level I basic goes maybe 2 keys per second before letters get dropped. Level II basic is a little better. Level II DOS is fine up to about 40 wpm, but if I go faster it still drops characters. Is the emulator being faithful to the original? Is a real model I like this? Quote Link to comment Share on other sites More sharing options...
MrDave Posted May 25, 2021 Share Posted May 25, 2021 I have a buddy with one..i will ask him.. Quote Link to comment Share on other sites More sharing options...
George Phillips Posted May 25, 2021 Share Posted May 25, 2021 I've wondered about this myself. Level I will definitely have a limited typing speed as the ROM doesn't implement "N-key rollover". Which means that a key won't be recognized if another key is held down at the same time. And when one is typing quickly the key presses definitely overlap. Comparing against my Model I the keyboard input seems to be about the same as trs80gp. Might be a little clunkier but feels like it roughly the same. Level II is definitely substantially better than Level I which seems different from what you're reporting. I'm trying this out on Windows. What platform do you run the emulator on? Quote Link to comment Share on other sites More sharing options...
rietveld Posted May 25, 2021 Share Posted May 25, 2021 (edited) I just fired up my physical model 1 with lvl2 and I typed as fast as i could and never dropped a key Edited May 25, 2021 by rietveld Quote Link to comment Share on other sites More sharing options...
George Phillips Posted May 25, 2021 Share Posted May 25, 2021 There's definitely something going on here, the trick is to quantify it and eliminate the bug. "Typing fast" is a little hard to judge and whether or not keys are dropped depends on the skill of the typist. I found this sequence highlights the differences: Hold the 'U" key. Press 'I' and 'O' simultaneously. In trs80gp the 'O' will almost always be dropped. But I can confirm the 'O' key is down not only because I'm holding it but also because the software keyboard shows it down (in other words, the emulator has been given all the key switch changes). There is some need to be careful with that because it doesn't take too many simultaneous key presses for your average PC keyboard to ignore keys. On my Model I in Level II ROM BASIC the 'O' will sometimes drop but quite rarely. My guess is that the 'O' drops when the 'I' and 'O' are both seen down at the same time by the ROM keyboard scanning routine. It'll see the 'I', send it for output and be done. But it has recorded 'O' as being down so it ignores it on the next pass thinking it has been processed. If the keyboard is scanned more than 60 times a second then on a real machine the difference between the 'I' and 'O' press times will need to be very small. But since trs80gp only updates the keyboard once per frame it is easier to make the keys appear to press simultaneously. It is possible that somewhere along the line from keyboard to the emulator the timing of key presses becomes even more quantized. I'll have to see if there is better timing available or if there's some way to separate the key presses in time without fudging things too much. Quote Link to comment Share on other sites More sharing options...
rietveld Posted May 26, 2021 Share Posted May 26, 2021 2 hours ago, George Phillips said: There's definitely something going on here, the trick is to quantify it and eliminate the bug. "Typing fast" is a little hard to judge and whether or not keys are dropped depends on the skill of the typist. I found this sequence highlights the differences: Hold the 'U" key. Press 'I' and 'O' simultaneously. In trs80gp the 'O' will almost always be dropped. But I can confirm the 'O' key is down not only because I'm holding it but also because the software keyboard shows it down (in other words, the emulator has been given all the key switch changes). There is some need to be careful with that because it doesn't take too many simultaneous key presses for your average PC keyboard to ignore keys. On my Model I in Level II ROM BASIC the 'O' will sometimes drop but quite rarely. My guess is that the 'O' drops when the 'I' and 'O' are both seen down at the same time by the ROM keyboard scanning routine. It'll see the 'I', send it for output and be done. But it has recorded 'O' as being down so it ignores it on the next pass thinking it has been processed. If the keyboard is scanned more than 60 times a second then on a real machine the difference between the 'I' and 'O' press times will need to be very small. But since trs80gp only updates the keyboard once per frame it is easier to make the keys appear to press simultaneously. It is possible that somewhere along the line from keyboard to the emulator the timing of key presses becomes even more quantized. I'll have to see if there is better timing available or if there's some way to separate the key presses in time without fudging things too much. when i hold the U then press IO i get UIOIOIOIOIOIO i did this all the way down the screen without a miss in the pattern Quote Link to comment Share on other sites More sharing options...
rietveld Posted May 26, 2021 Share Posted May 26, 2021 I dont think it should matter but I am using a Model 1 with internal 48k mod and lowercase mod Quote Link to comment Share on other sites More sharing options...
MHaensel Posted May 26, 2021 Author Share Posted May 26, 2021 Interesting! I'm running the emulator on Windows. Here's a way to recreate what I'm doing: Open trs80gp as a Level I model I. Open the soft keyboard. Drag the soft keyboard to one side, use it to monitor which keys are being pressed on the host keyboard. Click to put the focus on trs80gp. Tap "R" repeatedly as fast as you can. Hit enter to go to the next line. Tap "RU" repeatedly. Start slow and speed up until the Model I starts dropping characters. Hit enter to go to the next line. Tap "RUN" about the same speed. The Model I has serious trouble. Slow down tapping "RUN" until the Model I keeps up. The rollover thing was a smart idea, but I don't think that's causing the problem. I don't see much difference if I'm very careful to press keys separately, or if I drag my fingers to intentionally induce rollover. Of course, there's several layers of software between my laptop keyboard and the emulated Model I . . . Quote Link to comment Share on other sites More sharing options...
rietveld Posted May 27, 2021 Share Posted May 27, 2021 9 hours ago, MHaensel said: Interesting! I'm running the emulator on Windows. Here's a way to recreate what I'm doing: Open trs80gp as a Level I model I. Open the soft keyboard. Drag the soft keyboard to one side, use it to monitor which keys are being pressed on the host keyboard. Click to put the focus on trs80gp. Tap "R" repeatedly as fast as you can. Hit enter to go to the next line. Tap "RU" repeatedly. Start slow and speed up until the Model I starts dropping characters. Hit enter to go to the next line. Tap "RUN" about the same speed. The Model I has serious trouble. Slow down tapping "RUN" until the Model I keeps up. The rollover thing was a smart idea, but I don't think that's causing the problem. I don't see much difference if I'm very careful to press keys separately, or if I drag my fingers to intentionally induce rollover. Of course, there's several layers of software between my laptop keyboard and the emulated Model I . . . i dont have a model 1 emulator setup on my pc right now Quote Link to comment Share on other sites More sharing options...
MHaensel Posted May 27, 2021 Author Share Posted May 27, 2021 I think the question is, do you see the same thing on your Model I? Do you have to tap keys for "RUN" much slower than "RU" when repeated? Also, congrats on having a real Model I! Quote Link to comment Share on other sites More sharing options...
MrDave Posted May 27, 2021 Share Posted May 27, 2021 Yeah , my buddy has a nice retro setup Quote Link to comment Share on other sites More sharing options...
MHaensel Posted May 28, 2021 Author Share Posted May 28, 2021 @GeorgePhillips thanks for the real-life test. It's not a big problem, I mostly paste code in from a Windows text editor. 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.