Please help testing upcoming openMSX release!

Page 21/57
14 | 15 | 16 | 17 | 18 | 19 | 20 | | 22 | 23 | 24 | 25 | 26

By Manuel

Ascended (17941)

Manuel's picture

16-05-2020, 10:14

Grauw: what about the other commands, do they also need a Mac variant?

key(s) function
up show previous command from history
down show next command from history
Delete delete character at cursor
Tab attempt completion of current command
left/right move cursor on command line
Enter/Return execute command line
PageUp scroll one line up
PageDown scroll one line down
SHIFT+PageUp scroll one page up
SHIFT+PageDown scroll one page down
CTRL+H/Backspace erase character left of cursor
CTRL+A/Home put cursor at the start of the command line
CTRL+E/End put cursor at the end of the command line
CTRL+C clear command line
CTRL+V paste clipboard content in console

By ren

Paragon (1811)

ren's picture

16-05-2020, 13:56

Console AA

ren wrote:

I will provide screenshots later (if still necessary). The anti-aliasing is different. Where in 0.15 it was modest, and just filling some corners so to say (and basically nothing 'extra' is added along the vertical sides of characters), now I see, when zooming in on the screenshot, there's a lot more going on vertically. E.g. there's AA now on both sides of the 'U' (where there's nothing in 0.15), and e.g. to the right of T's stem (where in 0.15 that character is clean, no AA at all there).

Of course, behavior might be different between platforms here. No change noticeable in Ubuntu (if that's what you're using)? Mac users? (It's enough to be kinda annoyed about Wink)

Screens (so that's Win 7)

By Manuel

Ascended (17941)

Manuel's picture

16-05-2020, 14:06

It looks similar on my Linux box, ren.

We didn't change anything, as far as I know, just updated to the latest SDL2_ttf and FreeType libraries. Perhaps they changed something?
No idea (yet) what we can do about it.

By donluca

Expert (75)

donluca's picture

16-05-2020, 14:17

Manuel wrote:

donluca: how are you compiling openMSX? Did you try the staticbindist method? Then openMSX will download and compile (locally) the required libraries by itself.

The old school way: git clone, configure, make.

I'll try the staticbindinst method later.

EDIT: regardless of this, I'll still have to fix my 32-bit only libraries, so I'll give it a shot at some point at compiling openMSX with configure and make.

EDIT 2:

Manuel wrote:

Grauw: what about the other commands, do they also need a Mac variant?
≥ up: show previous command from history
≥ down: show next command from history
≥ Delete: delete character at cursor
≥ Tab: attempt completion of current command
≥ left/right: move cursor on command line
≥ Enter/Return: execute command line
≥ PageUp: scroll one line up
≥ PageDown: scroll one line down
≥ SHIFT+PageUp: scroll one page up
≥ SHIFT+PageDown: scroll one page down

AFAIK all good, but we don't have PageUp and PageDown buttons on Apple Keyboards, I think we do the same functionality by using Fn+Up and Fn+Down but don't quote me on that.
Besides, this is how the shell works on macOS (and *nix, for that matter), so it's alright.

Quote:

≥ CTRL+H/Backspace: erase character left of cursor
≥ CTRL+A/Home: put cursor at the start of the command line
≥ CTRL+E/End: put cursor at the end of the command line
≥ CTRL+C: clear command line
≥ CTRL+V: paste clipboard content in console

≥ CMD + H = OS wide function: Hide active window
≥ CMD + A = OS wide function: Select all text in active window
≥ CMD + E = OS wide function: Search highlighted text in the active window
≥ CMD + C = OS wide function: Copy highlighted text
≥ CMD + V = OS wide function: Paste whatever is in the clipboard (works with pictures and all kind of stuff)

By Manuel

Ascended (17941)

Manuel's picture

16-05-2020, 14:06

Sure, keep us updated, donluca!

By donluca

Expert (75)

donluca's picture

16-05-2020, 14:50

I've edited my previous post, although the HTML stuff didn't make it through. Sigh.
I'll edit it for better clarity.

EDIT: tried on my macbook with the classic configure make, zlib is good here but TCL still isn't and I don't understand where the hell it is getting it from :/

TCL: Found header
linker command: clang++ derived/x86_64-darwin-opt/config/TCL.o -o derived/x86_64-darwin-opt/config/TCL.bin -arch x86_64 -mmacosx-version-min=10.7 -stdlib=libc++ -m64
Undefined symbols for architecture x86_64:
  "_Tcl_CreateInterp", referenced from:
      _f in TCL.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
return code from linker: 1
TCL: Missing lib

EDIT 2: it is definitely getting it from the wrong location as the TCL installed by default in macOS is 64-bits

Tcl: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit dynamically linked shared library x86_64] [i386:Mach-O dynamically linked shared library i386]
Tcl (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
Tcl (for architecture i386):	Mach-O dynamically linked shared library i386

The path is /System/Library/Frameworks/Tcl.Framework

By ren

Paragon (1811)

ren's picture

16-05-2020, 15:50

Quote:

It looks similar on my Linux box, ren.

In some ways it even looks like a different font face (I checked, it's still the same VeraMono.ttf package Wink) E.g. check the 'D' in 'PgDn'..

I don't have an env. set up to quickly test things, but perhaps, somwhat of a wild guess, the font hinting setting might have an effect?

Well it's not like you're in the console all the time, so not a biggie. I do prefer the sharper rendering though.

Quote:

But what is the point if in many cases you don't even get that whole dialog?

What's the point of anything? ;) I think taking care of (many) details improves the overall quality/experience, but I understand this isn't high prio ;)
So perhaps I'll have a look then at some point ;)

Quote:

If we keep flexible scaling in mind [...]

I understand your reasoning, but I guess it isn't that hard to define some sane defaults for 2 to 4x. And when free-scaling comes to play it would be kinda like CSS media queries ;-)

Quote:

consolebackground

Ah indeed, it uses a png with alpha layer. Could/should have checked that myself beforehand ;)

Quote:

How would you use tool tips for the info panel?

E.g. for stuff that doesn't fit in the individual panel boxes. E.g. long software titles / file names, or perhaps (when possibly extending it) abbreviate things and show full info on mouse over. Just an(other) idea.
E.g. ATM the boosted TR config name doesn't fit in it's box, nor the 'TEXT80' screen mode. VRAM & RAM boxes looks a bit cramped as well :)

Quote:

The list will quickly become very long. Note that there is a variable number of slots and disk drives in a system.

Sure, therefore the suggestion to list only the default machine cartridge slots & disk drives. That would not exceed 2+2 right? A tooltip could be used here for extended info. As you brought up buttons yourself, a possibility: 'print to console' for stuff that doesn't fit and/or would be too much info to display (in a tooltip).

I think most (casual) users just run a ROM or disk and that's it. I do think it would be nice to display what's e.g. in drive A when there's a ROM running.

Thanks for the pointers again!

By Manuel

Ascended (17941)

Manuel's picture

16-05-2020, 18:45

Grauw wrote:

I added:

    case Keys::KM_META:
        switch (key) {
#ifdef __APPLE__
        case Keys::K_V:
            paste();
            return true;
#endif
        }

Paste code extracted to a method to avoid duplication, #ifndef __APPLE__ around the CTRL-V case, and it works. CMD+L, CMD-T, CMD-P, etc. also still work as usual while the console is up. That comment there seems to be about using it as a modifier key for typing characters. I can submit the change tomorrow.

I pushed this change just now. Please test...

By donluca

Expert (75)

donluca's picture

16-05-2020, 19:54

I've just solved the zlib issue on my Mac Pro, now the only issue remaining is the TCL library.

Manuel, when you have some free time, please look into this.
To recap, the error I'm getting is:

TCL: Found header
linker command: clang++ derived/x86_64-darwin-opt/config/TCL.o -o derived/x86_64-darwin-opt/config/TCL.bin -arch x86_64 -mmacosx-version-min=10.7 -stdlib=libc++ -m64
Undefined symbols for architecture x86_64:
  "_Tcl_CreateInterp", referenced from:
      _f in TCL.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
return code from linker: 1
TCL: Missing lib

But this is wrong and can be easily be proved by examining the TCL library in /System/Library/Frameworks

luca@Cougar /S/L/F/T/V/8.5> file Tcl
Tcl: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit dynamically linked shared library x86_64] [i386:Mach-O dynamically linked shared library i386]
Tcl (for architecture x86_64):	Mach-O 64-bit dynamically linked shared library x86_64
Tcl (for architecture i386):	Mach-O dynamically linked shared library i386

I'll try to use the staticbindinst method and report back, but I'd really love if this issue could be looked at.

EDIT: trying to compile with staticbindinst gives the following error:

Compiling events/Keys.cc...
src/events/Keys.cc:54:14: error: no viable constructor or deduction guide for deduction of template arguments of 'array'
        auto keys = std::array{
                    ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__tuple:223:64: note: candidate function template not viable: requires 0
      arguments, but 152 were provided
template  struct _LIBCPP_TEMPLATE_VIS array;
                                                               ^
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__tuple:223:64: note: candidate function template not viable: requires 1
      argument, but 152 were provided
src/events/Keys.cc:54:7: error: variables defined in a constexpr function must be initialized
        auto keys = std::array{
             ^
2 errors generated.
make[1]: *** [derived/x86_64-darwin-opt-3rd/obj/events/Keys.o] Error 1
make: *** [staticbindist] Error 2

By Grauw

Ascended (9904)

Grauw's picture

16-05-2020, 21:33

Manuel wrote:

I pushed this change just now. Please test...

Hey, nice, it works!

I myself had also wrapped the CTRL-V in #ifndef __APPLE__ #endif since it’s not used on macOS, although I guess it does no harm.

donluca wrote:

AFAIK all good, but we don't have PageUp and PageDown buttons on Apple Keyboards, I think we do the same functionality by using Fn+Up and Fn+Down but don't quote me on that.
Besides, this is how the shell works on macOS (and *nix, for that matter), so it's alright.

Fn+Up and Fn+Down are Page-Up/Down and Fn+Left/Right are Home/End, and they work in openMSX. The other terminal key combinations are indeed also the same, only copy/paste uses CMD.

Page 21/57
14 | 15 | 16 | 17 | 18 | 19 | 20 | | 22 | 23 | 24 | 25 | 26