Close

Better Load and Save Screens

A project log for OSI Challenger 4P Reproduction

I am making a full sized Challenger 4P reproduction, a 6502 based personal computer from the late 1970s.

michael-gardiMichael Gardi 08/30/2022 at 22:320 Comments

While the Python/tkinter based load and save panels work OK, the windowed popups are disconcerting and would not be suitable when my Challenger 1P reproduction is working with a full screen text only display.  So I created some "integrated" replacements. Now when you press F1 or F2, my emulator saves the current screen, "takes over" the display and keyboard, and uses them to present the user with Load and Save dialogs.  When you exit the dialogs by pressing the Return key, the original screen is restored with the appropriate file names set behind the scene just as with the tkinter dialogs. Loading and saving has not changed and is implemented through the Challenger 1P cassette interface.

So as not to create too much work for myself I tried to keep the screens as minimal as possible. I think that the aesthetic is in keeping with the other period screens.

The load screen looks like this:

It supports a scrolling list of any number of file names. The files listed must be located in the TAPEs folder and only files with a .bas extension will be shown. Similarly the Save screen looks like:

Simply type the file name in and press Return. If the user does not add a .bas extension one will be added on their behalf since only BASIC files can be loaded or saved.  There is an additional check to see if the file name entered already exists. If it does:

Only pressing the 'Y' or "y" key will allow overwriting. Any other key and the user will have to start over. 

All of the above changes have been posted to this projects GitHub repository.

Discussions