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

Macro / step not visible #101

Closed
rruhle opened this issue Aug 10, 2022 · 6 comments
Closed

Macro / step not visible #101

rruhle opened this issue Aug 10, 2022 · 6 comments

Comments

@rruhle
Copy link

rruhle commented Aug 10, 2022

Hello, many thanks for this project, which migrates Lotus 1-2-3 from Windows to Linux

Linux novice using (Ubuntu 22.04 LTS) Release Candidate "lotus123r3_1.0-2jammy_i386.deb"

This runs my legacy 30yr. old 16bit DOS 123.v2 macro library natively on 64bit PopOS linux. Simply amazing

Minor hot key, macro syntax, & display changes mostly due to lotus-123 application change from v2 to v3.

Can't figure out why Macro code won't display during STEP function "Ctrl-F2". Getting panel results only.

Do Macros show their steps for anyone else?

@taviso
Copy link
Owner

taviso commented Aug 10, 2022

I see, you're right - the STEP function works but doesn't display the step at the bottom like it does in DOS. Let me investigate and see if I can figure out why!

@taviso
Copy link
Owner

taviso commented Oct 10, 2022

Okay, let's try to fix this issue! It looks like the STEP function is handled by mr_step_wait(). I don't see any logic anywhere for displaying the current status, I think it was never implemented on UNIX.

Let's try to add some, I think we can just call set_error_string() with the current macro step and see if that works.

Something like this...

int mr_step_wait()
{
    uint32_t key  = input_key();
    uint16_t wkey = key;
    char cellname[256];

    char *p;

    if (key & 0xFFFF0000)
        return true;

    if (wkey == 0)
        return false;

    p = cellname;

    if (INVALID_CELL_ADDR(mac_cell)) {
        if (mac_xrtns.get_mac_name) {
            mac_xrtns.get_mac_name(&p);
        } else if (!INVALID_CELL_ADDR(mac_lastgoodcell)) {
            dspcref(0xff, mac_lastgoodcell, 0, &p, 1);
        }
    } else {
        dspcref(0xff, mac_cell, 0, &p, 1);
    }

    // Terminate the string.
    *p = 0;

    if (strlen(cellname)) {
        set_error_string(cellname, 0, 0);
    }

    if (wkey != KFUN_BREAK)
        return true;

    if (!mac_nobreak())
        return true;

    return false;
}

I'll try this out for a while and see if anything breaks, if it looks okay I'll commit it.

@rruhle
Copy link
Author

rruhle commented Oct 10, 2022

Excellent - look forward to beta testing..

@rruhle
Copy link
Author

rruhle commented Oct 14, 2022

If waiting on me to beta test, I would need a procedure to compile, or *.deb file similar to "lotus123r3_1.0-3jammy_i386.deb"

My Linux terminal Kung Fu began this year on System76 hardware with Pop!_OS, but tech support won't help compile anything from source, preferring to direct me to apps within their POP shop instead.

@taviso
Copy link
Owner

taviso commented Oct 14, 2022

Oh okay - no problem, see if this one works!

https://lock.cmpxchg8b.com/files/lotus123r3_1.0-4betajammy_i386.deb

@rruhle
Copy link
Author

rruhle commented Oct 15, 2022

Congratulations are in order, since Macro STEP function now displays limited Macro progress at bottom left.

  1. Except for blank {Subroutines}, STEP displays top-level command, with first 18 of 625 characters of macro, until the next macro line becomes active. So, top-level functions are followed, but not displayed beyond first 18 characters of each line.
  2. STEP can appear stuck waiting or blank during multi-levels of subroutine {Branch ..} and perhaps {goto}

-- Some trouble with installing the Beta --
Apparently, Linux "APT" re/install refuses *.deb file names that don't match expected release candidates?
'APT' $ 'Note, selecting 'lotus123r3:i386' instead of 'lotus123r3_1.0-4betajammy_i386'
After hiding prior release files & disconnecting internet *.deb Beta file loaded with complaints

@taviso taviso closed this as completed Mar 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants