The driver for Bloody keyboards, including the B840, is called KeyDominator, and the current version (KeyDominator 2) can be downloaded here. Note that you will download a self-extracting archive file that needs to be run to get the actual installer operating, which is a fairly straightforward procedure. The program is fairly lightweight and takes up <50 MB of space, along with ~3-4% CPU utilization at most on an Intel Core i7-7700K.
The driver also opens a widget when opened, which just minimizes to the system tray when closed. Actually, exiting the widget also closes the driver window. Unfortunately, using the software on a high-resolution screen remains an issue. There is poor scaling of the program in Windows 7, although things get better with the built-in scaling in Windows 10. Even so, I had to increase scaling to 300% on a 32" 4K monitor to get things fully legible, and it does not help either that the program does not have a full-screen mode. UX design is still an issue here, and Bloody/A4Tech need to seriously handle this to be considered on par with the competition.
The Button menu is fairly extensive and has lots of options. You can re-assign any primary key (no arrow, numpad, etc.) to another key, a mouse button, an action, or text, or can execute a macro or combo. Bloody has some pre-configured macro and combo actions, although you may want to create your own, and that is where the other menus come in.
The B820R supports RGB animations with some on-board controls, but you get those and a few more if the driver is installed and active. Unfortunately, all the driver does is select the hotkey combination to activate said effects, but you still have to trigger them manually. There is also very limited control on the backlighting - be it static or animated. For a product that has "RGB Animation" in its name, this is fairly disappointing.
The macro menu is still called Oscar Macro for some reason, but is, again, one of the most extensive macro programs I have seen. You can edit existing macros, but it is easier to start with a new file to create the macro you want. You can control the keystrokes and have the mouse move a few coordinates, which can potentially be very powerful in some situations. Say you are playing a game that requires more mouse and keyboard movement. Here, you can not only execute a combo move via keystrokes, but could also have your cursor move automatically between or after such combos.
Finally, we have a Super Combo menu, which is a combination of everything seen so far. You can create a combo that does a certain action once, as with a macro, or cycle through a combination of actions. Each has the option to press keys on a keyboard or mouse (or both) with controlled delays, and there's an option to record macros on the fly that get saved into this bigger combo action. Again, this is a powerful tool for work or leisure if you spend the time to properly configure everything. But it can also be intimidating to users, and to the point where many may shy away from exploring these options to stick to the default keyboard by itself.
Once you have created a macro (or combo), you will see it in the drop-down list when assigning keys in the Button menu. Bloody does have a link to manuals in their driver to help explain the macro and combo sections, as well as on their website, which is the only reason I managed to learn enough to get those working, so this is where the lack of UX development shows and where they need to improve.