atari8warez Posted February 15, 2012 Share Posted February 15, 2012 (edited) FWIW: Some small suggestions for AspeQt. I'm very impressed with AspeQt, especially considering that it is a relatively recent release. But I do have a few "user friendly" suggestions. ........ 4) I had trouble before getting the printer window to open up, but now it seems fine. (?) But looks like you can't print directly to the Win printer. Printing to a text file certainly works, but would be a little more convenient going directly to the printer. -Larry Larry, that suggestion # 4) above is already done, I am now working on adding ATASCII fonts too (both to display and print with) Cheers. Ray Edited February 15, 2012 by atari8warez Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2466730 Share on other sites More sharing options...
+JAC! Posted February 15, 2012 Share Posted February 15, 2012 And one convenience request also from me: I frequently use "Boot Executable" - and very often I forget to press OPTION or (not to press it), so I have to browse for the file again. I would be more convenient and consistent to "mount" and EXE like a disk or folder. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2466813 Share on other sites More sharing options...
HiassofT Posted February 15, 2012 Share Posted February 15, 2012 5) Make the SIO transmissions compatible with real disk drives. Using a real Speedy 1050 drive causes AspeQt to stop even when just loading from the real drive, like, no ATR's involved. I already identified the code responsible for this, but didn't have the time to check/fix it. It's the following line in the readCommandFrame method, file serialport-unix.cpp / serialport-win32.cpp: } while (totalRetries < 100); After 100 attempts to read a command frame AspeQt just stops. Speedy uses a transmission speed that's incompatible with the standard RS232 speeds, so AspeQt gets a lot of "invalid" command frames. Killing the totalRetries code, and replacing the loop with a "do { ... } while (true);" could be a fix for this issue, not sure if this has any unwanted side-effects. I'll have a look at this as soon as I find some time (not sure when this will be...), and also try phaeron's suggestion. so long, Hias Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2466854 Share on other sites More sharing options...
+Larry Posted February 15, 2012 Share Posted February 15, 2012 Terrific! Thought of another one, and hopefully it is easy to accomplish. "Right-justify" the path info used on the GUI. Reason -- IMO, It is more important to see what image is there and the "low-order" info on the path since currently if the path is long, all you might see is "C:\DOCUMENTS AND SETTINGS\LARRY\SETTINGS\ASPEQT\UTILI" -- i.e. you can't see what image is mounted. -Larry Larry, that suggestion # 4) above is already done, I am now working on adding ATASCII fonts too (both to display and print with) Cheers. Ray Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2466862 Share on other sites More sharing options...
flashjazzcat Posted February 15, 2012 Share Posted February 15, 2012 Isn't the usual practice with very long pathnames to use an elipsis (...) in the middle? That way, you get to see the start and the end. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2466882 Share on other sites More sharing options...
Fox-1 / mnx Posted February 15, 2012 Share Posted February 15, 2012 I already identified the code responsible for this, but didn't have the time to check/fix it. Good to see you are already that far. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2466897 Share on other sites More sharing options...
+Larry Posted February 15, 2012 Share Posted February 15, 2012 I don't recall the way that you mention, but would be fine so long as the ATR name gets in there. I have seen the way that I suggested. -Larry Isn't the usual practice with very long pathnames to use an elipsis (...) in the middle? That way, you get to see the start and the end. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2466987 Share on other sites More sharing options...
atari8warez Posted February 15, 2012 Share Posted February 15, 2012 I may be able to change it so that it only shows the name of the file and when you hover your cursor over, shows the whole dir path as a tooltip. Ray Terrific! Thought of another one, and hopefully it is easy to accomplish. "Right-justify" the path info used on the GUI. Reason -- IMO, It is more important to see what image is there and the "low-order" info on the path since currently if the path is long, all you might see is "C:\DOCUMENTS AND SETTINGS\LARRY\SETTINGS\ASPEQT\UTILI" -- i.e. you can't see what image is mounted. -Larry Larry, that suggestion # 4) above is already done, I am now working on adding ATASCII fonts too (both to display and print with) Cheers. Ray Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2467073 Share on other sites More sharing options...
HiassofT Posted February 16, 2012 Share Posted February 16, 2012 I found some time this evening and added 2 patches: First one is the suggestion from phaeron, calling timeBeginPeriod(1) to (hopefully) decrease the latency on Win32 systems. I don't have a real Win32 box up and running at the moment, so I couldn't check yet if it improves the performance, but at least the performance didn't decrease in my WinXP VM Second one is to remove the retry limit when waiting for a command frame, this should fix the issues with the 1050 Speedy. Again, almost untested, booting MyDOS from AspeQt in an XP VM worked. Please send me some feedback if this version works better or worse than the previous one. Here's the link to the new version: http://www.horus.com...Hias-120215.zip This file includes the win32 executable, the complete source code, in the "src" directory (Linux users just type "qmake; make") and the patches against version 0.6, in the "hias-patches" directory: 01-fix-pokey-divisor-0-1-on-PAL.patch 02-fix-image-size-calculation-support-8k-sectors.patch 03-try-timeBeginPeriod-to-decrease-latency.patch 04-remove-totalRetries-limit-in-readCommandFrame.patch so long, Hias Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2467381 Share on other sites More sharing options...
phaeron Posted February 17, 2012 Share Posted February 17, 2012 This version loads EXEs noticeably faster at 80Kbaud than the stock 0.6 version. Wheeeeeeeee! I still can't go below POKEY divisor 3, though. It feels like the fast SIO routine at least needs more device retries -- right now it mimics the OS and just gives up at one retry. At high speeds I've had AspeQt almost complete a long EXE load, then give up after two retries. I can't see a point to having such a low retry limit if the loader just halts afterward. I also noticed in the source that it isn't waiting for the final serial output ready IRQ before polling serial output complete, which I thought we'd determined was a source of problems. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2468433 Share on other sites More sharing options...
Roydea6 Posted February 18, 2012 Share Posted February 18, 2012 Yes I am able to use divisor 3 now and it all seem very stable. I copied an 8mb atr to a SIDE partition SDX445 and no errors and it seems faster than the stock version 0.6. Thanks to Hias. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2468578 Share on other sites More sharing options...
HiassofT Posted February 21, 2012 Share Posted February 21, 2012 Here's another update: I replaced the highspeed SIO code of the EXE-loader with my own code, booting EXEs now works fine up to Pokey divisor 0 (tested in my WinXP VM and natively on Linux). http://www.horus.com...Hias-120221.zip Important note on the patch: the file hias-patches/05-replace-autoboot-highspeed-code-with-hiassoft-code is only half the truth, as "svn diff" skips binary files (diff is text-only). The binaries autoboot.bin and autoboot-hispeed.bin (in src/atari/autoboot) aren't automatically recompiled by the Qt build system, so please also copy these two files from the src directory - or you'll be using the old Atari code. Better just use only the files from src/atari/autoboot. I converted autoboot.s to ATasm format (and renamed it to autoboot.src, so you also need ATasm instead of ca65/ld65 to assemble the code) so I could mate it with my highspeed SIO code. I also noted that 2 unusued variables (address and size, each 2 bytes) were placed at the very beginning of the binary (just after the boot header), so there were 4 BRKs at the beginning of the code - not nice, so I removed them. so long, Hias Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2470858 Share on other sites More sharing options...
phaeron Posted February 22, 2012 Share Posted February 22, 2012 I found a cause of a UI lock-up problem: the Win32 version of the serial port worker prioritizes the command line event higher than the cancel event. This makes it possible for the Atari to lock up the program by sending back-to-back commands, preventing the UI from stopping emulation. There was also a possible handle leak if the poll operation ran synchronously and a dangling I/O operation on the cancel. Modified code: if (WaitCommEvent(mHandle, &mask, &ov)) { CloseHandle(ov.hEvent); if (WaitForSingleObject(mCancelHandle, 0) == WAIT_OBJECT_0) return data; } else { if (GetLastError() == ERROR_IO_PENDING) { HANDLE events[2]; events[0] = mCancelHandle; events[1] = ov.hEvent; const DWORD x = WaitForMultipleObjects(2, events, false, INFINITE); if (x != WAIT_OBJECT_0+1) CancelIo(mHandle); CloseHandle(ov.hEvent); if (x == WAIT_OBJECT_0) { data.clear(); return data; } if (x == WAIT_FAILED) { qCritical() << "!e" << tr("Cannot wait for serial port event: %1").arg(lastErrorMessage()); data.clear(); return data; } I managed to get a Release build with line number information, and CodeAnalyst is showing that at high I/O speeds the UI is chewing up a lot of CPU time, mostly in the Qt library and in GDI. Not sure if there's a good way to fix this. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2471200 Share on other sites More sharing options...
+JAC! Posted February 22, 2012 Share Posted February 22, 2012 <coders.... I love this thread :-) > Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2471227 Share on other sites More sharing options...
atari8warez Posted February 22, 2012 Share Posted February 22, 2012 Ok folks here are my contributions, along with Hias's latest mods to the AspeQt project. These have been tested fairly good but let me know if you find any problems. I changed the version number to 0.7 as there were enough mods to warrant that. Unfortunately I don't have admin access to the project files in sourceforge so I can not upload the changes there, however the source and the latest binaries (Windows) available for download from my website: http://atari8warez.for-the.biz/support.html AspeQt v.0.7 what's new: + Disk slots now show the filename without the path and in Uppercase letters (a la 8 bit ). The directory path can be seen as a tooltip to filename, and the full path+filename can be seen as a statusTip on the status bar. This makes it easier to read the mounted file/folder names. (Ray Ataergin) + Decrease the latency on Win32 systems (Matthias Reichl). + Remove the retry limit when waiting for a command frame (Matthias Reichl). + Modified Atari text output to display Ascii/Atascii split screen window (Ray Ataergin) + Added ATASCII font support for Atari text output (Ray Ataergin) + Fixed problems with Pokey divisors 0 and 1 on PAL 800XL. Set the baudrates to values actually supported by the FTDI chip to avoid possible rounding errors - resulting in too high speeds (Matthias Reichl) + Fixed small backslash-escape issue in the project file (Matthias Reichl) + A (cosmetic) fix for the image size calculation in the "create image" dialog (Matthias Reichl) + Added support for ATRs with 8192 byte sectors (Matthias Reichl) + Added turkish translation (Ray Ataergin) + Added option to send the Atari text output to a PC printer (Ray Ataergin) + Added option to display documentation (Ray Ataergin) + Relaxed the .atr integrity check rules to allow some .atr files that are larger than the header value to be loaded (Ray Ataergin) Note: The latest Hias mod (two messages above) is not included in this release as I've just noticed it but I will also implement that code once it's tested and verified that it works with no probs. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2471375 Share on other sites More sharing options...
atari8warez Posted February 22, 2012 Share Posted February 22, 2012 (edited) With the addition of new GUI features Polish Language translation needs to be updated. If Krzysztof Pyrkosz is reading this, please update the aspeqt_pl.ts file as necessary. Also, I did not experience any performance increase on Windows 7 (64 bit) using Prolific based virtual comm port after the latest Hias mods. I still have problems with command frame errors when trying to write (reads are OK) with 3x speeds. I'd like to know about your experiences, please let me know if you also have issues with similar configuration. Ray Edited February 22, 2012 by atari8warez Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2471382 Share on other sites More sharing options...
Mclaneinc Posted February 22, 2012 Share Posted February 22, 2012 Erm...Where's the Aspeqt binary in the version 7 zip file? Or am I missing something (apart from that) Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2471412 Share on other sites More sharing options...
atari8warez Posted February 22, 2012 Share Posted February 22, 2012 Erm...Where's the Aspeqt binary in the version 7 zip file? Or am I missing something (apart from that) Ooops, sorry . It's now included.... Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2471419 Share on other sites More sharing options...
Mclaneinc Posted February 22, 2012 Share Posted February 22, 2012 Erm...Where's the Aspeqt binary in the version 7 zip file? Or am I missing something (apart from that) Ooops, sorry . It's now included.... Lol...Thanks... Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2471425 Share on other sites More sharing options...
atari8warez Posted February 23, 2012 Share Posted February 23, 2012 (edited) Ok, I just discovered a small bug on the "Disk/New Disk Image" menu item. This is due to file name display mod I've done recently on AspeQt. What happens is: A blank disk image name is displayed on the slot where the new disk is mounted. It should show "Untitled Image x". Attached file is the fixed executable. Updated source and the full binary package can be found on my website here: http://atari8warez.for-the.biz/support.html aspeqt_v0.7_exe.zip Edited February 23, 2012 by atari8warez Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2472084 Share on other sites More sharing options...
atari8warez Posted February 25, 2012 Share Posted February 25, 2012 (edited) Hi folks I developed a desktop icon for the AspeQt executable, and here I am presenting it for your suggestions/approval. I am open to ideas and to other people's submissions. I must add that I am not a graphics artist, I am sure there is someone here who can make a much better icon and if you are willing to put some work in it you are certainly more than welcome. In the meantime I also attached the executable with the new icon. P.S: Next quick change in my agenda is to make a Windows installer for AspeQt, after that, more functional mods as my time permits. AspeQt.ico aspeqt_v0.7.zip Edited February 25, 2012 by atari8warez Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2473456 Share on other sites More sharing options...
+JAC! Posted February 25, 2012 Share Posted February 25, 2012 Hi, I would prefer a more distinct/functional icon. I have so many Atari-Fuji-Icons on my Desktop, it hard to find out what is which emu/tools. Here's how AspeQT is represented on my desktop. Regarding the installer: Please keep the normal ".zip" download also in addition. I sync my tools across multiple computers and it's really valueable to be able to use simple file operations without breaking the installation. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2473498 Share on other sites More sharing options...
cyco130 Posted March 1, 2012 Author Share Posted March 1, 2012 Hi, I want to apologize for my absence and unresponsiveness, which, it seems, will have to continue for a while due to personal stuff and to thank everybody contributing to AspeQt. Today I've granted admin rights to Peter and Ray for the sourceforge project. I've also tried the latest patches and I was pretty impressed (Except the uppercase file names; Linux is case-sensitive and I like CamelCasing my images, ha ha, feels good to criticize from the outside ) Even though hands on coding seems a little far fetched for now, I'll try my best to help with the internals (though I don't really remember that well how they were). I'm very pleased to see the project back from the grave! Regards, Fatih. PS: As with the folder images, it was just a quick hack, a different approach is necessary for more robust operation. Maybe drac030's Dos2Dos can be a good alternative to support. Without Atari-side awareness, anything I can think of is bound to fail in some circumstances. 1 Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2476465 Share on other sites More sharing options...
atari8warez Posted March 3, 2012 Share Posted March 3, 2012 Hi, (Except the uppercase file names; Linux is case-sensitive and I like CamelCasing my images, ha ha, feels good to criticize from the outside ) Regards, Fatih. Hey Fatih, nice to hear from you and thank you for the access to the project repository. As for the Uppercase file names, it's just for your eyes only (meaning display only) will not affect the main code, however if preferred I can change it back to lower, np. Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2477733 Share on other sites More sharing options...
atari8warez Posted March 6, 2012 Share Posted March 6, 2012 (edited) Here are some minor UI (usability) mods: + MainWindow position is now saved upon exit and restored upon restart + Reorganized About Dialog content + Modified main window to use the new application icon + Reverted previous UPPERCASE image file name mod, file names now show as is Upload is the main .exe file, New source is in the SF repo. Ray aspeqt_v0.7_exe.zip Edited March 6, 2012 by atari8warez Quote Link to comment https://forums.atariage.com/topic/154949-aspeqt-yet-another-sio2pcape-clone/page/10/#findComment-2479083 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.