596 procedure chFullScr(var s: shortstring); |
596 procedure chFullScr(var s: shortstring); |
597 var flags: Longword = 0; |
597 var flags: Longword = 0; |
598 {$IFDEF DEBUGFILE} |
598 {$IFDEF DEBUGFILE} |
599 buf: array[byte] of char; |
599 buf: array[byte] of char; |
600 {$ENDIF} |
600 {$ENDIF} |
|
601 {$IFDEF SDL13} |
|
602 window: PSDL_Window; |
|
603 {$ENDIF} |
601 begin |
604 begin |
602 if Length(s) = 0 then cFullScreen:= not cFullScreen |
605 if Length(s) = 0 then cFullScreen:= not cFullScreen |
603 else cFullScreen:= s = '1'; |
606 else cFullScreen:= s = '1'; |
604 |
607 |
605 {$IFDEF DEBUGFILE} |
608 {$IFDEF DEBUGFILE} |
606 AddFileLog('Prepare to change video parameters...'); |
609 AddFileLog('Prepare to change video parameters...'); |
607 {$ENDIF} |
610 {$ENDIF} |
608 |
611 |
609 flags:= SDL_OPENGL;// or SDL_RESIZABLE; |
612 flags:= SDL_OPENGL;// or SDL_RESIZABLE; |
610 {$IFDEF IPHONEOS} |
|
611 // remove the topbar from the iPhone |
|
612 flags:= flags or SDL_NOFRAME; |
|
613 {$ENDIF} |
|
614 |
613 |
615 if cFullScreen then |
614 if cFullScreen then |
616 begin |
615 begin |
617 flags:= flags or SDL_FULLSCREEN; |
616 flags:= flags or SDL_FULLSCREEN; |
618 cScreenWidth:= cInitWidth; |
617 cScreenWidth:= cInitWidth; |
626 AddFileLog('Freeing old primary surface...'); |
625 AddFileLog('Freeing old primary surface...'); |
627 {$ENDIF} |
626 {$ENDIF} |
628 SDL_FreeSurface(SDLPrimSurface); |
627 SDL_FreeSurface(SDLPrimSurface); |
629 end; |
628 end; |
630 |
629 |
|
630 {$IFDEF SDL13} |
|
631 window:= SDL_CreateWindow('Hedgewars', 0, 0, cScreenWidth, cScreenHeight, |
|
632 SDL_WINDOW_OPENGL or SDL_WINDOW_SHOWN |
|
633 {$IFDEF IPHONEOS} or SDL_WINDOW_BORDERLESS{$ENDIF}); |
|
634 SDL_CreateRenderer(window, -1, 0); |
|
635 PixelFormat:= nil; |
|
636 |
|
637 SDL_SetRenderDrawColor(0, 0, 0, 255); |
|
638 SDL_RenderFill(nil); |
|
639 SDL_RenderPresent(); |
|
640 {$ELSE} |
631 SDLPrimSurface:= SDL_SetVideoMode(cScreenWidth, cScreenHeight, cBits, flags); |
641 SDLPrimSurface:= SDL_SetVideoMode(cScreenWidth, cScreenHeight, cBits, flags); |
632 SDLTry(SDLPrimSurface <> nil, true); |
642 SDLTry(SDLPrimSurface <> nil, true); |
633 PixelFormat:= SDLPrimSurface^.format; |
643 PixelFormat:= SDLPrimSurface^.format; |
|
644 {$ENDIF} |
634 |
645 |
635 {$IFDEF DEBUGFILE} |
646 {$IFDEF DEBUGFILE} |
636 AddFileLog('Setting up OpenGL...'); |
647 AddFileLog('Setting up OpenGL...'); |
637 AddFileLog('SDL video driver: ' + string(SDL_VideoDriverName(buf, sizeof(buf)))); |
648 AddFileLog('SDL video driver: ' + string(SDL_VideoDriverName(buf, sizeof(buf)))); |
638 {$ENDIF} |
649 {$ENDIF} |