trunk/src/emu/emuopts.c
| r241465 | r241466 | |
| 65 | 65 | { OPTION_SNAPNAME, "%g/%i", OPTION_STRING, "override of the default snapshot/movie naming; %g == gamename, %i == index" }, |
| 66 | 66 | { OPTION_SNAPSIZE, "auto", OPTION_STRING, "specify snapshot/movie resolution (<width>x<height>) or 'auto' to use minimal size " }, |
| 67 | 67 | { OPTION_SNAPVIEW, "internal", OPTION_STRING, "specify snapshot/movie view or 'internal' to use internal pixel-aspect views" }, |
| 68 | { OPTION_SNAPBILINEAR, "1", OPTION_BOOLEAN, "specify if the snapshot should have bilinear filtering applied" }, |
| 68 | 69 | { OPTION_STATENAME, "%g", OPTION_STRING, "override of the default state subfolder naming; %g == gamename" }, |
| 69 | 70 | { OPTION_BURNIN, "0", OPTION_BOOLEAN, "create burn-in snapshots for each screen" }, |
| 70 | 71 | |
trunk/src/emu/emuopts.h
| r241465 | r241466 | |
| 78 | 78 | #define OPTION_SNAPNAME "snapname" |
| 79 | 79 | #define OPTION_SNAPSIZE "snapsize" |
| 80 | 80 | #define OPTION_SNAPVIEW "snapview" |
| 81 | #define OPTION_SNAPBILINEAR "snapbilinear" |
| 81 | 82 | #define OPTION_STATENAME "statename" |
| 82 | 83 | #define OPTION_BURNIN "burnin" |
| 83 | 84 | |
| r241465 | r241466 | |
| 239 | 240 | const char *snap_name() const { return value(OPTION_SNAPNAME); } |
| 240 | 241 | const char *snap_size() const { return value(OPTION_SNAPSIZE); } |
| 241 | 242 | const char *snap_view() const { return value(OPTION_SNAPVIEW); } |
| 243 | bool snap_bilinear() const { return bool_value(OPTION_SNAPBILINEAR); } |
| 242 | 244 | const char *state_name() const { return value(OPTION_STATENAME); } |
| 243 | 245 | bool burnin() const { return bool_value(OPTION_BURNIN); } |
| 244 | 246 | |
trunk/src/emu/video.c
| r241465 | r241466 | |
| 1058 | 1058 | // given screen |
| 1059 | 1059 | //------------------------------------------------- |
| 1060 | 1060 | |
| 1061 | typedef software_renderer<UINT32, 0,0,0, 16,8,0, false, true> snap_renderer_bilinear; |
| 1062 | typedef software_renderer<UINT32, 0,0,0, 16,8,0, false, false> snap_renderer; |
| 1063 | |
| 1061 | 1064 | void video_manager::create_snapshot_bitmap(screen_device *screen) |
| 1062 | 1065 | { |
| 1063 | 1066 | // select the appropriate view in our dummy target |
| r241465 | r241466 | |
| 1083 | 1086 | // render the screen there |
| 1084 | 1087 | render_primitive_list &primlist = m_snap_target->get_primitives(); |
| 1085 | 1088 | primlist.acquire_lock(); |
| 1086 | | software_renderer<UINT32, 0,0,0, 16,8,0, false, true>::draw_primitives(primlist, &m_snap_bitmap.pix32(0), width, height, m_snap_bitmap.rowpixels()); |
| 1089 | if (machine().options().snap_bilinear()) |
| 1090 | snap_renderer_bilinear::draw_primitives(primlist, &m_snap_bitmap.pix32(0), width, height, m_snap_bitmap.rowpixels()); |
| 1091 | else |
| 1092 | snap_renderer::draw_primitives(primlist, &m_snap_bitmap.pix32(0), width, height, m_snap_bitmap.rowpixels()); |
| 1087 | 1093 | primlist.release_lock(); |
| 1088 | 1094 | } |
| 1089 | 1095 | |