Mercurial > hg > dmlib
comparison tools/view64.c @ 1238:e8c99da451cd
Cosmetics.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Fri, 06 Mar 2015 18:14:03 +0200 |
parents | 985225a93aeb |
children | 17199f53d8fa |
comparison
equal
deleted
inserted
replaced
1237:8b6ed580e800 | 1238:e8c99da451cd |
---|---|
67 break; | 67 break; |
68 | 68 |
69 case 1: | 69 case 1: |
70 dmVerbosity++; | 70 dmVerbosity++; |
71 break; | 71 break; |
72 | 72 |
73 case 2: | 73 case 2: |
74 optVFlags |= SDL_FULLSCREEN; | 74 optVFlags |= SDL_FULLSCREEN; |
75 break; | 75 break; |
76 | 76 |
77 case 3: | 77 case 3: |
112 dmErrorMsg("Invalid image format argument '%s'.\n", optArg); | 112 dmErrorMsg("Invalid image format argument '%s'.\n", optArg); |
113 return FALSE; | 113 return FALSE; |
114 } | 114 } |
115 } | 115 } |
116 break; | 116 break; |
117 | 117 |
118 default: | 118 default: |
119 dmErrorMsg("Unknown option '%s'.\n", currArg); | 119 dmErrorMsg("Unknown option '%s'.\n", currArg); |
120 return FALSE; | 120 return FALSE; |
121 } | 121 } |
122 | 122 |
123 return TRUE; | 123 return TRUE; |
124 } | 124 } |
125 | 125 |
126 | 126 |
127 BOOL argHandleFile(char *filename) | 127 BOOL argHandleFile(char *filename) |
162 Uint8 *dataBuf = NULL; | 162 Uint8 *dataBuf = NULL; |
163 size_t dataSize; | 163 size_t dataSize; |
164 int ret; | 164 int ret; |
165 | 165 |
166 dmSetScaleFactor(2.0); | 166 dmSetScaleFactor(2.0); |
167 | 167 |
168 dmInitProg("view64", "Display some C64 bitmap graphics formats", "0.2", NULL, NULL); | 168 dmInitProg("view64", "Display some C64 bitmap graphics formats", "0.2", NULL, NULL); |
169 | 169 |
170 /* Parse arguments */ | 170 /* Parse arguments */ |
171 if (!dmArgsProcess(argc, argv, optList, optListN, | 171 if (!dmArgsProcess(argc, argv, optList, optListN, |
172 argHandleOpt, argHandleFile, OPTH_BAILOUT)) | 172 argHandleOpt, argHandleFile, OPTH_BAILOUT)) |
176 if (optFilename == NULL) | 176 if (optFilename == NULL) |
177 { | 177 { |
178 dmErrorMsg("No input file specified, perhaps you need some --help\n"); | 178 dmErrorMsg("No input file specified, perhaps you need some --help\n"); |
179 goto error; | 179 goto error; |
180 } | 180 } |
181 | 181 |
182 if ((ret = dmReadDataFile(NULL, optFilename, &dataBuf, &dataSize)) != DMERR_OK) | 182 if ((ret = dmReadDataFile(NULL, optFilename, &dataBuf, &dataSize)) != DMERR_OK) |
183 goto error; | 183 goto error; |
184 | 184 |
185 dmMsg(1, "Read %d bytes of input.\n", dataSize); | 185 dmMsg(1, "Read %d bytes of input.\n", dataSize); |
186 | 186 |
269 { | 269 { |
270 case SDL_KEYDOWN: | 270 case SDL_KEYDOWN: |
271 switch (event.key.keysym.sym) | 271 switch (event.key.keysym.sym) |
272 { | 272 { |
273 case SDLK_ESCAPE: exitFlag = TRUE; break; | 273 case SDLK_ESCAPE: exitFlag = TRUE; break; |
274 | 274 |
275 default: | 275 default: |
276 break; | 276 break; |
277 } | 277 } |
278 | 278 |
279 needRedraw = TRUE; | 279 needRedraw = TRUE; |
280 break; | 280 break; |
281 | 281 |
282 case SDL_VIDEORESIZE: | 282 case SDL_VIDEORESIZE: |
283 optScrWidth = event.resize.w; | 283 optScrWidth = event.resize.w; |
284 optScrHeight = event.resize.h; | 284 optScrHeight = event.resize.h; |
285 if (!dmInitializeVideo(&screen)) | 285 if (!dmInitializeVideo(&screen)) |
286 goto error; | 286 goto error; |
287 | 287 |
288 needRedraw = TRUE; | 288 needRedraw = TRUE; |
289 break; | 289 break; |
290 | 290 |
291 case SDL_VIDEOEXPOSE: | 291 case SDL_VIDEOEXPOSE: |
292 needRedraw = TRUE; | 292 needRedraw = TRUE; |
293 break; | 293 break; |
294 | 294 |
295 case SDL_QUIT: | 295 case SDL_QUIT: |
296 exit(0); | 296 exit(0); |
297 } | 297 } |
298 | 298 |
299 if (needRedraw) | 299 if (needRedraw) |
300 { | 300 { |
301 float aspect = (float) bmap.height / (float) bmap.width; | 301 float aspect = (float) bmap.height / (float) bmap.width; |
302 int sheight = optScrWidth * aspect * C64_SCR_PAR_XY; | 302 int sheight = optScrWidth * aspect * C64_SCR_PAR_XY; |
303 int ypos = (optScrHeight - sheight) / 2; | 303 int ypos = (optScrHeight - sheight) / 2; |
305 if (SDL_MUSTLOCK(screen) != 0 && SDL_LockSurface(screen) != 0) | 305 if (SDL_MUSTLOCK(screen) != 0 && SDL_LockSurface(screen) != 0) |
306 { | 306 { |
307 dmErrorMsg("Can't lock surface.\n"); | 307 dmErrorMsg("Can't lock surface.\n"); |
308 goto error; | 308 goto error; |
309 } | 309 } |
310 | 310 |
311 dmScaledBlitSurface8to8(surf, 0, ypos, optScrWidth, sheight, screen); | 311 dmScaledBlitSurface8to8(surf, 0, ypos, optScrWidth, sheight, screen); |
312 SDL_SetColors(screen, (SDL_Color *)dmC64Palette, 0, C64_NCOLORS); | 312 SDL_SetColors(screen, (SDL_Color *)dmC64Palette, 0, C64_NCOLORS); |
313 | 313 |
314 if (SDL_MUSTLOCK(screen) != 0) | 314 if (SDL_MUSTLOCK(screen) != 0) |
315 SDL_UnlockSurface(screen); | 315 SDL_UnlockSurface(screen); |
316 | 316 |
317 SDL_Flip(screen); | 317 SDL_Flip(screen); |
318 needRedraw = FALSE; | 318 needRedraw = FALSE; |
319 } | 319 } |
320 | 320 |
321 SDL_Delay(100); | 321 SDL_Delay(100); |
322 } | 322 } |
323 | 323 |
324 | 324 |
325 error: | 325 error: |