From e803f2307e18b1caced640035f8ed2c8977ca118 Mon Sep 17 00:00:00 2001 From: MooglyGuy Date: Sun, 17 Mar 2019 02:44:44 +0100 Subject: [PATCH] -device: Added more granular device_feature bits as well as a couple more catch-all categories. [Ryan Holtz, Vas Crabb] --- src/emu/device.h | 45 ++++++++++++++++++++++++++++++++------------- 1 file changed, 32 insertions(+), 13 deletions(-) diff --git a/src/emu/device.h b/src/emu/device.h index 708b28a0fb9..efd7a590e09 100644 --- a/src/emu/device.h +++ b/src/emu/device.h @@ -90,24 +90,43 @@ struct device_feature { enum type : u32 { + // Functionality-related PROTECTION = u32(1) << 0, - PALETTE = u32(1) << 1, + TIMING = u32(1) << 1, + + // Graphics GRAPHICS = u32(1) << 2, - SOUND = u32(1) << 3, - CONTROLS = u32(1) << 4, - KEYBOARD = u32(1) << 5, - MOUSE = u32(1) << 6, + PALETTE = u32(1) << 3, + + // Sound + SOUND = u32(1) << 4, + + // Capture/Media Output + CAPTURE = u32(1) << 5, + CAMERA = u32(1) << 6, MICROPHONE = u32(1) << 7, - CAMERA = u32(1) << 8, - DISK = u32(1) << 9, - PRINTER = u32(1) << 10, - LAN = u32(1) << 11, - WAN = u32(1) << 12, - TIMING = u32(1) << 13, - CASSETTE = u32(1) << 14, + + // Controls/HID + CONTROLS = u32(1) << 8, + KEYBOARD = u32(1) << 9, + MOUSE = u32(1) << 10, + + // Media Output + MEDIA = u32(1) << 11, + DISK = u32(1) << 12, + PRINTER = u32(1) << 13, + TAPE = u32(1) << 14, + PUNCH = u32(1) << 15, + DRUM = u32(1) << 16, + ROM = u32(1) << 17, + + // Comms/Network + COMMS = u32(1) << 18, + LAN = u32(1) << 19, + WAN = u32(1) << 20, NONE = u32(0), - ALL = (u32(1) << 15) - 1U + ALL = (u32(1) << 21) - 1U }; };