Mercurial > repos > blastem
annotate stateview.c @ 1102:c15896605bf2
Clean up symbol visiblity and delete a ltitle bit of dead code
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Mon, 28 Nov 2016 22:45:46 -0800 |
parents | e2d345e351b5 |
children | 22e87b739ad6 |
rev | line source |
---|---|
467
140af5509ce7
Added copyright notice to source files and added GPL license text in COPYING
Mike Pavone <pavone@retrodev.com>
parents:
465
diff
changeset
|
1 /* |
140af5509ce7
Added copyright notice to source files and added GPL license text in COPYING
Mike Pavone <pavone@retrodev.com>
parents:
465
diff
changeset
|
2 Copyright 2013 Michael Pavone |
140af5509ce7
Added copyright notice to source files and added GPL license text in COPYING
Mike Pavone <pavone@retrodev.com>
parents:
465
diff
changeset
|
3 This file is part of BlastEm. |
140af5509ce7
Added copyright notice to source files and added GPL license text in COPYING
Mike Pavone <pavone@retrodev.com>
parents:
465
diff
changeset
|
4 BlastEm is free software distributed under the terms of the GNU General Public License version 3 or greater. See COPYING for full license text. |
140af5509ce7
Added copyright notice to source files and added GPL license text in COPYING
Mike Pavone <pavone@retrodev.com>
parents:
465
diff
changeset
|
5 */ |
20
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
6 #include <stdlib.h> |
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
7 #include <stdio.h> |
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
8 #include "vdp.h" |
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
9 #include "render.h" |
793
9aff36a172b2
Fix missing includes of util.h
Michael Pavone <pavone@retrodev.com>
parents:
792
diff
changeset
|
10 #include "util.h" |
75 | 11 #include "blastem.h" |
12 | |
783
e64975fc5f98
Fix stateview build and fix Makefile to use /bin/echo since builtin echo does not always support -e
Michael Pavone <pavone@retrodev.com>
parents:
719
diff
changeset
|
13 |
75 | 14 uint16_t read_dma_value(uint32_t address) |
15 { | |
16 return 0; | |
17 } | |
20
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
18 |
962
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
19 m68k_context *m68k_handle_code_write(uint32_t address, m68k_context *context) |
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
20 { |
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
21 return NULL; |
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
22 } |
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
23 |
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
24 z80_context *z80_handle_code_write(uint32_t address, z80_context *context) |
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
25 { |
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
26 return NULL; |
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
27 } |
f52cb02a1466
Fixed loading save states from menu
Michael Pavone <pavone@retrodev.com>
parents:
959
diff
changeset
|
28 |
982
f7bbbf49db4e
Add a trivial get_open_bus_value() function to stateview so it compiles again.
Michael Pavone <pavone@retrodev.com>
parents:
962
diff
changeset
|
29 uint16_t get_open_bus_value() |
f7bbbf49db4e
Add a trivial get_open_bus_value() function to stateview so it compiles again.
Michael Pavone <pavone@retrodev.com>
parents:
962
diff
changeset
|
30 { |
f7bbbf49db4e
Add a trivial get_open_bus_value() function to stateview so it compiles again.
Michael Pavone <pavone@retrodev.com>
parents:
962
diff
changeset
|
31 return 0; |
f7bbbf49db4e
Add a trivial get_open_bus_value() function to stateview so it compiles again.
Michael Pavone <pavone@retrodev.com>
parents:
962
diff
changeset
|
32 } |
f7bbbf49db4e
Add a trivial get_open_bus_value() function to stateview so it compiles again.
Michael Pavone <pavone@retrodev.com>
parents:
962
diff
changeset
|
33 |
465
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
34 void ym_data_write(ym2612_context * context, uint8_t value) |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
35 { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
36 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
37 |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
38 void ym_address_write_part1(ym2612_context * context, uint8_t address) |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
39 { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
40 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
41 |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
42 void ym_address_write_part2(ym2612_context * context, uint8_t address) |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
43 { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
44 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
45 |
1028
56b1748a8473
Initial stab at Saturn keyboard support
Michael Pavone <pavone@retrodev.com>
parents:
982
diff
changeset
|
46 void handle_keydown(int keycode, uint8_t scancode) |
465
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
47 { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
48 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
49 |
1028
56b1748a8473
Initial stab at Saturn keyboard support
Michael Pavone <pavone@retrodev.com>
parents:
982
diff
changeset
|
50 void handle_keyup(int keycode, uint8_t scancode) |
465
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
51 { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
52 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
53 |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
54 void handle_joydown(int joystick, int button) |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
55 { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
56 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
57 |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
58 void handle_joyup(int joystick, int button) |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
59 { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
60 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
61 |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
62 void handle_joy_dpad(int joystick, int dpadnum, uint8_t value) |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
63 { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
64 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
65 |
959
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
66 void handle_mousedown(int mouse, int button) |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
67 { |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
68 } |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
69 |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
70 void handle_mouseup(int mouse, int button) |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
71 { |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
72 } |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
73 |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
74 void handle_mouse_moved(int mouse, uint16_t x, uint16_t y, int16_t deltax, int16_t deltay) |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
75 { |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
76 } |
3b270fc43ed4
Get stateview building again
Michael Pavone <pavone@retrodev.com>
parents:
931
diff
changeset
|
77 |
465
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
78 tern_node * config; |
703
6e751a8f46aa
Get save state viewer compiling again
Michael Pavone <pavone@retrodev.com>
parents:
467
diff
changeset
|
79 int headless = 0; |
465
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
80 |
20
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
81 int main(int argc, char ** argv) |
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
82 { |
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
83 if (argc < 2) { |
792
724bbec47f86
Use a new fatal_error function instead of calling fprintf and exit for fatal errors. This new function more gracefully handles the case in which BlastEm was not started from a terminal or disconnected from ther terminal (Windows).
Michael Pavone <pavone@retrodev.com>
parents:
783
diff
changeset
|
84 fatal_error("Usage: stateview FILENAME\n"); |
20
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
85 } |
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
86 FILE * state_file = fopen(argv[1], "rb"); |
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
87 if (!state_file) { |
792
724bbec47f86
Use a new fatal_error function instead of calling fprintf and exit for fatal errors. This new function more gracefully handles the case in which BlastEm was not started from a terminal or disconnected from ther terminal (Windows).
Michael Pavone <pavone@retrodev.com>
parents:
783
diff
changeset
|
88 fatal_error("Failed to open %s\n", argv[1]); |
20
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
89 } |
812
574495372d1c
Finish OS X support in build_release script. Fix a name conflict in vgmplay on OS X. Call set_exe_str in vgmplay and stateview
Michael Pavone <pavone@retrodev.com>
parents:
793
diff
changeset
|
90 set_exe_str(argv[0]); |
465
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
91 config = load_config(argv[0]); |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
92 int width = -1; |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
93 int height = -1; |
33
2e15fa26fe58
Add support for simple resolution scaling
Mike Pavone <pavone@retrodev.com>
parents:
20
diff
changeset
|
94 if (argc > 2) { |
2e15fa26fe58
Add support for simple resolution scaling
Mike Pavone <pavone@retrodev.com>
parents:
20
diff
changeset
|
95 width = atoi(argv[2]); |
2e15fa26fe58
Add support for simple resolution scaling
Mike Pavone <pavone@retrodev.com>
parents:
20
diff
changeset
|
96 if (argc > 3) { |
2e15fa26fe58
Add support for simple resolution scaling
Mike Pavone <pavone@retrodev.com>
parents:
20
diff
changeset
|
97 height = atoi(argv[3]); |
2e15fa26fe58
Add support for simple resolution scaling
Mike Pavone <pavone@retrodev.com>
parents:
20
diff
changeset
|
98 } |
2e15fa26fe58
Add support for simple resolution scaling
Mike Pavone <pavone@retrodev.com>
parents:
20
diff
changeset
|
99 } |
465
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
100 int def_width = 0; |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
101 char *config_width = tern_find_ptr(config, "videowidth"); |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
102 if (config_width) { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
103 def_width = atoi(config_width); |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
104 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
105 if (!def_width) { |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
106 def_width = 640; |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
107 } |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
108 width = width < 320 ? def_width : width; |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
109 height = height < 240 ? (width/320) * 240 : height; |
dc322bc77ea2
Fix stateview. Update "all" target in Makefile.
Mike Pavone <pavone@retrodev.com>
parents:
424
diff
changeset
|
110 |
20
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
111 vdp_context context; |
719
019d27995e32
Upgrade to SDL 2.0 and drop support for the non-OpenGL render path
Michael Pavone <pavone@retrodev.com>
parents:
703
diff
changeset
|
112 render_init(width, height, "GST State Viewer", 60, 0); |
703
6e751a8f46aa
Get save state viewer compiling again
Michael Pavone <pavone@retrodev.com>
parents:
467
diff
changeset
|
113 init_vdp_context(&context, 0); |
424
7e8e179116af
Add support for loading GST format savestates
Mike Pavone <pavone@retrodev.com>
parents:
322
diff
changeset
|
114 vdp_load_gst(&context, state_file); |
20
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
115 vdp_run_to_vblank(&context); |
322
8e2fa485c0f2
Remove z80_ram reference in SDL renderer to get stateview compiling again. Print out the sprite list in stateview.
Mike Pavone <pavone@retrodev.com>
parents:
75
diff
changeset
|
116 vdp_print_sprite_table(&context); |
75 | 117 printf("Display %s\n", (context.regs[REG_MODE_2] & DISPLAY_ENABLE) ? "enabled" : "disabled"); |
43
3fc57e1a2c56
Add debug render mode and fix vertical flip bit for bg tiles
Mike Pavone <pavone@retrodev.com>
parents:
33
diff
changeset
|
118 render_wait_quit(&context); |
20
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
119 return 0; |
f664eeb55cb4
Mostly broken VDP core and savestate viewer
Mike Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
120 } |