xref: /haiku/src/system/boot/platform/atari_m68k/menu.cpp (revision 1a76488fc88584bf66b9751d7fb9b6527ac20d87)
1 /*
2  * Copyright 2008-2010, François Revol, revol@free.fr. All rights reserved.
3  * Copyright 2004-2007, Axel Dörfler, axeld@pinc-software.de. All rights reserved.
4  * Distributed under the terms of the MIT License.
5  */
6 
7 
8 #include "smp.h"
9 #include "video.h"
10 
11 #include <boot/menu.h>
12 #include <boot/platform/generic/text_menu.h>
13 #include <safemode.h>
14 
15 
16 void
17 platform_add_menus(Menu *menu)
18 {
19 	MenuItem *item;
20 
21 	switch (menu->Type()) {
22 		case MAIN_MENU:
23 			menu->AddItem(item = new(nothrow) MenuItem("Select screen resolution", video_mode_menu()));
24 			item->SetTarget(video_mode_hook);
25 			break;
26 		case SAFE_MODE_MENU:
27 			menu->AddItem(item = new(nothrow) MenuItem("Use fail-safe graphics driver"));
28 			item->SetType(MENU_ITEM_MARKABLE);
29 			item->SetData(B_SAFEMODE_FAIL_SAFE_VIDEO_MODE);
30 			item->SetHelpText("The system will use VESA mode and won't try to open any video graphics driver");
31 
32 #if 0
33 			smp_add_safemode_menus(menu);
34 
35 			menu->AddItem(item = new(nothrow) MenuItem("Don't call the BIOS"));
36 			item->SetType(MENU_ITEM_MARKABLE);
37 
38 			menu->AddItem(item = new(nothrow) MenuItem("Disable APM"));
39 			item->SetType(MENU_ITEM_MARKABLE);
40 			item->SetData("disable_apm");
41 			item->SetHelpText("This overrides the APM setting in the kernel settings file");
42 
43 			menu->AddItem(item = new(nothrow) MenuItem("Disable ACPI"));
44 			item->SetType(MENU_ITEM_MARKABLE);
45 			item->SetData(B_SAFEMODE_DISABLE_ACPI);
46 			item->SetHelpText("This overrides the ACPI setting in the kernel settings file");
47 #endif
48 			break;
49 		default:
50 			break;
51 	}
52 }
53 
54 
55 void
56 platform_update_menu_item(Menu *menu, MenuItem *item)
57 {
58 	platform_generic_update_text_menu_item(menu, item);
59 }
60 
61 
62 void
63 platform_run_menu(Menu *menu)
64 {
65 	platform_generic_run_text_menu(menu);
66 }
67 
68 
69 size_t
70 platform_get_user_input_text(Menu *menu, MenuItem *item, char *buffer,
71 	size_t bufferSize)
72 {
73 	return platform_generic_get_user_input_text(menu, item, buffer,
74 		bufferSize);
75 }
76