Skip to content
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

Support IAI SwyftCard #51

Open
santhoshr opened this issue Dec 29, 2024 · 6 comments
Open

Support IAI SwyftCard #51

santhoshr opened this issue Dec 29, 2024 · 6 comments
Labels
bug Something isn't working

Comments

@santhoshr
Copy link

Describe the bug
IAI SwyftCard by Jef Raskin converted into bootable disk particularly SwyftCardResurrected.do. SwyftCard does not use arrow keys, so delete by backspace does not work, you have also created an default delete behaviour issue on this. The request is to implement a delete behaviour for backspace or option/config settings for the same. I tried to build it, removed the condition for Option key and made it delete, it worked, but the screen has blue letterbox on top and bottom, how to remove them? I tried to change to release tag source well, but blue bars does not go away.

Another issue,
Swyft has selection/highlight when you tap both solid apple and open apple after a search, the highlight gets freezed everytime, only release after left option key pressed again, this is hard to explain unless one tries

Expected behavior
Start search of text by holding either of option key, e.g. if you have hello world, type, holding option 'o' 'r' 'l', now cursor jumps to wherever you are to 'o' of world, now tap both keys, it will highlight but also next actions like extending highlight or collapsing, or delete will not work, until cursor comes back, cursor will come back if you tap left option again. I have attached screenshots on the same.

Versions (please complete the following information):

  • OS: 14.5 (23F79)
  • Mariani: 1.4 (3)

Additional context
If possible implement the ROM itself, that would be great
No cursor after highlight,
SwyftCard NoCursor
With Cursor after once again tapping left option,
SwyftCard Cursor
Letterbox after build,
LetterBox

@sh95014
Copy link
Owner

sh95014 commented Dec 29, 2024

Sorry about the blue background. Fixed in a19d1d0

@sh95014
Copy link
Owner

sh95014 commented Dec 29, 2024

delete key now maps to delete by default as of 40bfa05

ROM support for Swyftcard would be best handled upstream, already filed as: AppleWin#130

Which leaves the issue of highlight/selection that I'll have to dig into a bit. Not familiar with Swyftcard at all...

@santhoshr
Copy link
Author

santhoshr commented Dec 30, 2024

ROM support for Swyftcard would be best handled upstream, already filed as: AppleWin#130

This issue is open for 11yrs, I doubt it would see light. One person in that mentioned, it is easy to implement and they lack interface, now that we have interface to select cards in slots, if it is all about adding list entry linking existing rom, calling appropriate startup code, can you give a try, ofcourse I'm suggesting without knowing anything. This would eliminate disk based loading and swapping with data disks everytime, also authentic experience.

Which leaves the issue of highlight/selection that I'll have to dig into a bit. Not familiar with Swyftcard at all...

I will give you quick recap because Swyftcard tutorial and manual will introduce new lingos and might confuse. In a nutshell it is incremental search and cursor based interface, arrow keys and page up / down will not work,

  1. typing alphabets results in text entry
  2. tapping escape inserts new page / document character
  3. it uses two types of cursor, if highlight and cursor in same letter, then delete works forward, if it is split, then delete works backwards
  4. these keys are all same called differently, open / closed apple keys (apple 2 lingo) or left / right option (what is configured in emulator) or leap forward / backward (swyftcard lingo)
  5. hold option key and type search pattern, result in jumping in to first character of search pattern, as well as result in collapsed cursor, you can hold either of leap keys before typing to search forward or backward
  6. tab key while holding leap key results in searching next or previous pattern
  7. highlight is little bit complex to explain but easier to use, pressing both leap keys will result in highlight text between previous location and current search jump, after highlight one can fine tune highlight with leap keys, either of leap keys will jump to left or right of highlight on first invocation to go either side of highlight, on subsequent invocation works like arrow keys tapping leap forwarard alone will work like tapping right arrow key, each tap result in moving to next character, repressing both leap keys after this will rehighlight based on current cursor position and previous highlight
  8. with highlighted text, one can delete (backspace), run commands like calc (control-g), print (control-n) and after delete the deleted text can also be inserted (control-a) multiple times

Save or reload new disk with disk command (control-l). Scrolling is achieved by searching for return in other words tapping return key while holding option key, and then using tab to scroll either side, another scroll option is searching for period to scroll sentences, sameway using option + escape search for page / documents. Depending on which option you hold you can change directions.

p.s. unrelated, DiskImageHelper.h requrires #include "../minizip/zip.h" to build correctly instead of #include "minizip/zip.h"

@santhoshr
Copy link
Author

santhoshr commented Dec 30, 2024

Did some experiments found using two command keys or two option keys, result in freeze, but using alternative like one of the command key as open apple and one of the option key as closed apple results in no freeze. Unfortunately tab key is used for search again and used extensively even to navigate. So using command key either left or right, results in triggering macos application switcher.

@sh95014
Copy link
Owner

sh95014 commented Dec 30, 2024

The minizip build error should've been fixed as of be1b29d

As for sending the hardware support issue upstream, one of the important goals of this project is to make it easy to accept upstream changes and stay up-to-date, unlike many of the prior attempts to port AppleWin. So while I understand the challenges, it doesn't make sense to maintain such a branch at my level.

@sh95014
Copy link
Owner

sh95014 commented Dec 30, 2024

sa2 does better here: control-N does some sort of refresh line-by-line (print?), and control-G prints a bunch of ?SYNTAX ERRORs presumably because I highlighted random text. delete doesn't do anything, possibly because sa2 maps it to backspace. I also don't think it's able to extend the highlight.

Mariani seems to do the same at the level of Keyboard.cpp, but nothing happens...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants