Cumulus firmware rework task force
Posted: Fri Jan 23, 2015 6:33 pm
Hi everyone,
As most of you know what the Cumulus is, I will not explain, if you don't, please just look in this forum there are nice topic on it.
Current cumulus firmware works, or works in most situations, but there are still a few quirk and bugs. The UI is not the best we can expect there are a lot of usability issue, and the UI cause a lots of slowdown in the firmware, we also have some bug in the SD management that need to be solved.
The goal of this topic is to discuss and list all the new things that need to done, the bug that need to be solved.
This topic is ONLY about the firmware only, any hardware bugs or feature are not part of this topic.
I've stated to work on making the UI a bit more clean, and thinking about how to make the interface more easy to use.
Let's start with some of my own conventions:
The main interface is composed of 5 buttons and the screen.
There is two button on the left, three on the right, and I will call them from top to bottom and left to right
TL (top left), BL (bottom left), TR (top right), MR (middle right) and BR (bottom right).
Currently what theses buttons provide is really messy.
Next I'm showing you some mockup of what the interface could me (they are really early mockup):
Main screen: The idea is quite simple. On this main screen, each button TL, BL, TR, BR that belong to a "corner" (expect for TL) will display a menu related to the drive on the same corner. The MR button will display the cumulus main menu.
Menu sample: In the menu display, the TR is used to go up in a menu, BR to going down, and MR to select.
BL would be used for going back in the menu hierarchy, or if we are at the menu top level, go back to the home screen.
TL button will me a user definable button, so that the user could select the function to assign to this button. It could be a "Oric Reset" or "Eject all drive" etc.. The list of option need to be defined.
We can also do the same for the BL button, that by default do a back, but could be customised by the user.
All menu should provide a way to go by in the menu hierarchy anyway.
So we should have at least two types of menu, the drive menu, and the system menu.
The drive menu is the same for all drive, but what we select with it will change parameter for the specific drive selected on the home screen.
The system menu will allow to set parameter of the cumulus itself, like the screen contrast, screen backlight level, the number of drive we want to emulate (from 1 to 4)
Maybe if we want the cumulus to force, or not, a disk boot like the microdisk does (this would allow to not directly boot the Oric on the DOS and get the basic prompt without inserting a floppy) (not sure if this is feasible with current CPLD code.)
Also all drive/cumulus parameters should be saved on the currently used SD card, so that we can have different parameter on different SD card.
Also, the home screen should display more information that the mockup currently display, like the filename of the inserted floppy, maybe the CHS information.
I also integrate in this taskforce something that we discuss with _DBug_ about adding extensible metadatas to the DSK file format, so that we could add thumbnail for example, or information like the name of the compagnie who made the software etc.. Of course all of this should be available to display on the Cumulus, but not edited.
More to come later..
As most of you know what the Cumulus is, I will not explain, if you don't, please just look in this forum there are nice topic on it.
Current cumulus firmware works, or works in most situations, but there are still a few quirk and bugs. The UI is not the best we can expect there are a lot of usability issue, and the UI cause a lots of slowdown in the firmware, we also have some bug in the SD management that need to be solved.
The goal of this topic is to discuss and list all the new things that need to done, the bug that need to be solved.
This topic is ONLY about the firmware only, any hardware bugs or feature are not part of this topic.
I've stated to work on making the UI a bit more clean, and thinking about how to make the interface more easy to use.
Let's start with some of my own conventions:
The main interface is composed of 5 buttons and the screen.
There is two button on the left, three on the right, and I will call them from top to bottom and left to right
TL (top left), BL (bottom left), TR (top right), MR (middle right) and BR (bottom right).
Currently what theses buttons provide is really messy.
Next I'm showing you some mockup of what the interface could me (they are really early mockup):
Main screen: The idea is quite simple. On this main screen, each button TL, BL, TR, BR that belong to a "corner" (expect for TL) will display a menu related to the drive on the same corner. The MR button will display the cumulus main menu.
Menu sample: In the menu display, the TR is used to go up in a menu, BR to going down, and MR to select.
BL would be used for going back in the menu hierarchy, or if we are at the menu top level, go back to the home screen.
TL button will me a user definable button, so that the user could select the function to assign to this button. It could be a "Oric Reset" or "Eject all drive" etc.. The list of option need to be defined.
We can also do the same for the BL button, that by default do a back, but could be customised by the user.
All menu should provide a way to go by in the menu hierarchy anyway.
So we should have at least two types of menu, the drive menu, and the system menu.
The drive menu is the same for all drive, but what we select with it will change parameter for the specific drive selected on the home screen.
The system menu will allow to set parameter of the cumulus itself, like the screen contrast, screen backlight level, the number of drive we want to emulate (from 1 to 4)
Maybe if we want the cumulus to force, or not, a disk boot like the microdisk does (this would allow to not directly boot the Oric on the DOS and get the basic prompt without inserting a floppy) (not sure if this is feasible with current CPLD code.)
Also all drive/cumulus parameters should be saved on the currently used SD card, so that we can have different parameter on different SD card.
Also, the home screen should display more information that the mockup currently display, like the filename of the inserted floppy, maybe the CHS information.
I also integrate in this taskforce something that we discuss with _DBug_ about adding extensible metadatas to the DSK file format, so that we could add thumbnail for example, or information like the name of the compagnie who made the software etc.. Of course all of this should be available to display on the Cumulus, but not edited.
More to come later..