So, when set up with lightbars, the MPL is taking the keypress, and passing it to Mystic, and then halts. With having it set on a timer on
the menu, it will restart the MPL, and do it all over again. I'd like to see if there's a way for the MPL to pass the arrow keypress, pass it to Mystic, and continue to operate until enter, or some other key is
pressed.
It sounds like instead of using a timer you should maybe set it to
"AFTER" so that the MPL executes after every redraw. You can press
CTRL+L I think on the hotkey box to pop up a list of auto execution options. Setting it as a TIMER like you said will mean it won't resume until after 1 second at the least (since thats the lowest amount of time you can set a timer).
It sounds like you're trying to do a scrolling text? In one of the
Mystic 2 builds there is a "Marquee" setting on each menu, which will actually do exactly what you're wanting to do without MPL, and it even supports pipe colors. The only reason I never put it into Mystic 1.x
was because I didn't want to change the menu file format at the time (because I have to write an upgrade program then to upgrade people).
I more recently rewrote in Mystic 2.x the menu loader so that it saves/loads menus as INI files (easier to change the format), so I could easily add in the marquee option to Mystic 1.x if I move to that INI format loader.
I started out having it seat to 'AFTER', but then Mystic didn't draw the 'Command prompt' on the menu. I set it to 'TIMER' to allow it to do so.
That's why I was wondering if an MPL could transfer a keystroke, ie an arrow, back to Mystic, without exiting. I doubt there is a way, but figured it didn't hurt to ask. :)
No it can't and there wouldn't be any easy way to make it work better unless I allowed timers less than 1 second. Even if I added an "AFTERP" that runs after prompt, that would work fine for single input menus, but if you wanted to have any options that required multiple character input then it would break.
TIMER would work much better for this if I were to increase the
resolution of the timer functions from 1 second to maybe 1/10th of a second. That might be something worth looking into for the future.
Yeah it seems right that TIMER is the only real way to do it and you'd have to suffer the 1 second delay for the restart which is unfortunate.
I am pretty sure that is why I made the Marquee system because I
realized it would be a little tricky to do via MPL. It does all of that while allowing MCI codes and pipe colors in the scrolling text so you
can have menus with timers, lightbars, long key input, and a scrolling marquee. I never quite finished it in the menu system, but I went and found the code that I wrote outside of the BBS that does it that I can "drop it" to Mystic once I put the configuration on the menus.
Should I just bite the bulletin and of the MNU > INI conversion? One negative about going to INI format is that its slower to load the menus compared to the current system.
Yeah it seems right that TIMER is the only real way to do it and you' have to suffer the 1 second delay for the restart which is unfortunat
The 1 second really isn't too bad. If you'd like to take a look at it, I have it running on the Main menu here. :)
That would be awesome. I'd love to see something like that within Mystic.
I for one, wouldn't mind the change to the INI format. I'm sure the
speed difference wouldn't be an issue for anyone.
That would be awesome. I'd love to see something like that within Mys
I mostly forgot all about it until you mentioned this so its just been sitting here benefiting no one!
You're probably right things are only getting faster. And its not like people are loading a lot of menus really fast or anything, so its one
area where we can probably afford to spend a little extra time for an easier to maintain format.
I will have to experiment with some of these new ideas (sub 1 second timers, marquee, INI, and the AFTERP option). The thing about AFTERP
that would be confusing is that for Lightbar menus AFTER is ran after
the prompt would have been drawn. Its only on the regular menu that
AFTER is executed before the prompt, so I am not sure what to do there.
I mostly forgot all about it until you mentioned this so its just bee sitting here benefiting no one!
I really didn't intend to add more to your TODO list. :)
That's kinda strange. Would it be possible on the regular menu, to have AFTER run after the prompt? Not looking at the code, it's difficult to guess what the options might be. :)
Again, this is not a priority. I know your working on getting Python3 working, and that would probably be more beneficial to the general community than this at the moment.
I really didn't intend to add more to your TODO list. :)
Adding to my TODO list is a good thing :)
And I already had this one done so thats a bonus! I also noticed that there is a blank line in the menu files from something I must have
removed in the past, so I could *could* put the Marquee in without a
menu format change.
I don't want to step on your toes of the project you're doing though. What do you think about if I added it in now?
No it wouldn't be difficult the issue with changing it is what impact it would have on users? I think the most likely scenario for AFTER is to
use it to display other information like a rumor or something, which people tend to want before the prompt.
I think the state of Python 3 is good so there won't be too much to do there. I just have to add back in the functions from the mystic_bbs module!
It suffers from the same environment issues as 2.7 and I am hoping the community can figure out how to install it. Python 3 needs to be
compiled with shared library, and then there is the issue with having multiple Python versions side by side. In Windows it works great from what I can tell so its just a setup problem now.
Adding to my TODO list is a good thing :)
In that case, I have a few more items you could add to the TODO list. ;)
Either way that would work best for you would be fine with me. If the
.INI would make things better for the long run, that might be the path
to take.
Understandable. Although, would displaying the rumor after the prompt cause any problems? Just wondering out-loud.
Python on Linux has always been an issue for me. When I ran Ubuntu, I
had it running fine. Then I switched to running Debian, due to overhead, and I haven't been able to get Python running right. Every time a Python mod tries to read a message base, it crashes the node and gives me the 'Error 216' in the logs... I've given up on it for now...
In that case, I have a few more items you could add to the TODO list.
I am always open to ideas and I have a huge list already, bring it on!
Also if I add in the Marquee stuff would you be willing to help me test it? Considering the functionality is already done the hardest part will probably be adding in the configuration into the menu editor.
It would just make it easier to add new options someday without the need for any type of conversion program, thats really the only benefit. The thing is the menu engine doesn't change often these days so I go back
and forth on how worth it, it is.
No not really. I could always change it and see if anyone notices. :)
Or change the lightbar and add AFTERP to see what happens.
What is the overhead that made you stop? Do you mean the extra applications and stuff? I don't think Debian has much of a performance difference between Ubuntu (assuming the same versions are compared).
They're both faster than macOS or Windows for me so thats all I really care about lol.
I used to run Debian myself before Ubuntu just got so good (around 16.04 is when it was getting on my Radar and its only gotten better IMO).
I am planning to try to do a Slackware installation and maybe I'll add
the latest Debian to that too for testing. I used to test under a bunch of different Linux systems but its just too time consuming since I'm already testing under Windows 10, Ubuntu 18 and 20, macOS, and Pi (and sometimes Windows XP).
I know this has been mentioned earlier, but maybe having the node directories, temp1, temp2, etc, in another directory, such as /nodes/temp1, nodes/temp2. Or, if it's possible, have the directories created when a user logs in on that node.
In my nightly maintenance, I have the files set for purge, pack and mass-upload. I'm not sure if this may be caused by having too many files in a directory, as I do have a few that have over 5000 files in them
First, when I look at the mutil.log, I'll notice the Pack File Bases: Removed 787 records, 213892 bytes in 0.40s.
Then the Mass Upload Files:
Uploaded 788 file(s) in 2.88s.
Mystic will then run the Pack File Bases:
Removed 787 records, 213868 byes in 0.40s.
I have also seen, when moving files from one file area to another within the 'E'dit feature in Mystic, the files seem to move, but they will actually be mass-uploaded back into the area they originally were in.
With this happening, I was showing all of these files as being 'new' on
a daily basis. I have turned off the packing/purging for now.
Absolutely! I do have menus with and without the lightbars, so I can
test it on both. Anything I can do to help out, just ask. :)
Maybe once the Marquee is up and running, we'll get some idea to add
other things. :)
I think my old 486dx40 with OS/2 was faster than a system with
Windows... ;)
I did like Ubuntu before they started with Unity. That's when it started going downhill for me. Even after they changed back to Gnome again, it just wasn't the same for me. I know the Debian isn't the latest and greatest, but for a system running a BBS, it works. (except for
Python...)
On my main system that I use daily, I'm running Manjaro, so if you want something tested on that, I can help out. I haven't tried Slackware yet, but after hearing about people having so many issues with it, I might
not. I did have a system running PCLinuxOS for awhile, but there were so many packages that wouldn't work with it that I gave up on that one...
The only reason I don't is because it seems that *MANY* people hard code the temp directories into their door commands. Instead of using %P
which is replaced with the temp path where the drop files are located, they will hard code "c:\mystic\temp%3" to construct the node directory.
To counter this issue, I was thinking about making "door profiles" to
help them rebuild everything easier.
It shouldn't be. 5000 isn't actually all that much compared to how I test things. When I make changes to things like mass upload or message
linking I'll be testing them with HUGE numbers like 500,000-1 million messages in an area or 50,000 files in a file base. That doesn't mean there isn't something broken but its designed to easily handle 5000
files in a base.
It seems like something might be getting messed up with the "*.dfx"
files which is what is used for duplicate file detection. I was messing with it during A46 development while I was working on the FTP server and maybe I messed something up.
Is it running the Pack File Bases twice? Or do you just mean that next time it runs it looks the same as the previous run?
Sounds like maybe its having trouble deleting the original file. I just changed the code for the move to actually move the file if it can (it was always copying it and then trying to erase the original). Wow that code is ugly - it probably hasn't been touched since the 1990s. Anyway maybe that change will help this issue.
Ok so this stops when you stop packing/purging? Maybe the pack or purge is screwing with those .dfx files.
I just finished the Marquee stuff. I was playing around with it a
little off and on the past day or two and since I had the basics working already for Mystic 2 I was able to get it done quickly. The latest prealpha has it and there is a new "testlightbar.mnu" that has an
example of timers, long key input, lightbars, and marquee all going at once.
I was also thinking of doing a "MarqueeInput" in MPL/MPY too so people
can do something like:
SetMarquee('This is my marquee', X, Y)
Ch := MarqueeInput; // This will scroll the marque while waiting for a key and resume the next time you call MarqueeInput
I never tried Manjaro or any of those *aros but I did use ArchLinux at some point. I seemed to have settled in with Ubuntu and stopped trying new things at some point, but I used to try all sorts of distributions.
I should try Manjaro sometime.
Sure test anything you want to and let me know. I'm always trying to
make things better and these days I don't stray much outside of Ubuntu.
I just finished the Marquee stuff. I was playing around with it a
little offand on the past day or two and since I had the basics working already forMystic 2 I was able to get it done quickly. The latest prealpha has it andthere is a new "testlightbar.mnu" that has an example of timers, long keyinput, lightbars, and marquee all going at once.
they will hard code "c:\mystic\temp%3" to construct the node director
I'm guilty of doing this as well... :) But, I'm in the process of
changing all of my doors to be run via a bash script. Mystic will just
it runs the doors. Trying to get dosemu to play nice has been a bit of a challenge though.
To counter this issue, I was thinking about making "door profiles" to help them rebuild everything easier.
How would that work?
WOW! And I thought I might have been pushing the limits. :) I guess my total of 125,000+ files isn't too bad then...
I didn't think you'd have it done that quick! That sounds great! When is the next pre-alpha coming out? ;)
SetMarquee('This is my marquee', X, Y)
Ch := MarqueeInput; // This will scroll the marque while waiting for key and resume the next time you call MarqueeInput
Ohhhhh, I'm already thinking of ways I could use that. :)
Ok, I wasn't expecting you to have to already compiled and posted. :)
I have it installed here, and it looks great! I did notice the Offset field doesn't save. I would enter '20', and it would go back to '1'. I just entered spaces after the message to compensate. ;)
I have it installed here, and it looks great! I did notice the Offset field doesn't save. I would enter '20', and it would go back to '1'. I just entered spaces after the message to compensate. ;)
I've heard from Ryan that DOSEMU2 is the way to go these days, although
I havenot tried it.
The Mystic 2 demo from 2001 had door profiles so it work like that, if
you eversaw it (probably not many saw that version these days).
You'd basically have a "Execute Door Profile" menu command and pass it
the IDof the door you want to run. There would be a door configuration just like amessage/file area with an "Active" setting and a ton of
default doors alreadyset up. For most popular doors you'd just be able
to install the door to theproper directory and set the door to Active.
I think in real world terms you are pushing limits I guess that not a
lot ofpeople collect that many files! But in terms of what the software is supposedto be capable of you're not even close to limits. :)
Its out now go get it!
Yeah it'd be pretty cool, easy to use thing. It'll just be a drop in replacement for "ReadKey"
I have it installed here, and it looks great! I did notice the Offset field doesn't save. I would enter '20', and it would go back to '1'. just entered spaces after the message to compensate. ;)
Fixed! Thanks for the help testing!
Oh I forgot to mention its limited to Marquees of 255 characters. I originallydid it for 1024 characters but it turns out my form editor has
a bug in it thatwas causing a crash in the menu editor if longer than
255 characters. Once Iget around to getting that fixed I'll probably increase it to 512 or 1024characters.
I've heard from Ryan that DOSEMU2 is the way to go these days, althou I havenot tried it.
That is one that I haven't tried yet. I guess it handles DOS DPMI, so I mighthave to check it out.
That sounds pretty easy to work with. I wouldn't mind seeing that. I
just wishwe had more users that played door games...
It started out with just the shareware CDs that I still have, and then keptadding to it. ;) I've heard from a couple other Sysops that if they need anyfiles, they come here to find them.
Its out now go get it!
You're awesome! But again, do you sleep? ;)
That is one that I haven't tried yet. I guess it handles DOS DPMI, so mighthave to check it out.
Yep it does and just the fact that its actively in development is a big plus.Maybe there will be a chance of a macOS version someday! That
would be a gamechanger for BBSes on Mac!
It started out with just the shareware CDs that I still have, and the keptadding to it. ;) I've heard from a couple other Sysops that if th need anyfiles, they come here to find them.
Very cool. I need to stop in some time and look around!
Not a lot lately. I have had a lot going on and I've had trouble sleeping. Atsome point I have just started getting out of bed in the middle of the nightand reading echomail or coding a little. I hope
things settle down for me soonbut I doubt it.
Sysop: | altere |
---|---|
Location: | Houston, TX |
Users: | 68 |
Nodes: | 4 (0 / 4) |
Uptime: | 01:31:32 |
Calls: | 891 |
Calls today: | 1 |
Files: | 7,880 |
Messages: | 294,253 |