Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2016-03

SDL2 - win64

2 messages · 1 person · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Björn Lundin

Hi!
Using Lasarus 1.4.4
I'm following the SDL tutorial at
http://www.freepascal-meets-sdl.net/
and get problems very fast.

looking at http://www.freepascal-meets-sdl.net/chapter-5-drawing-primitives/ I have the code starting like this

program Chapter5_SDL2;
uses SDL2;
var
i : integer;
sdlWindow1 : PSDL_Window;
sdlRenderer : PSDL_Renderer;
sdlRect1 : PSDL_Rect;
sdlPoints1 : array[0..499] of PSDL_Point;
begin
  //initilization of video subsystem
  if SDL_Init( SDL_INIT_VIDEO ) < 0 then HALT;
  sdlWindow1 := SDL_CreateWindow( 'Window1', 50, 50, 500, 500,
SDL_WINDOW_SHOWN );
  if sdlWindow1 = nil then HALT;
  writeln('1');
  sdlRenderer := SDL_CreateRenderer( sdlWindow1, -1, 0 );
  writeln('2');
  if sdlRenderer = nil then HALT;
and so on

However it crashes with runtime error 217 on line
sdlRenderer := SDL_CreateRenderer( sdlWindow1, -1, 0 ); I get '1' on the screen but not '2'

C:\bnl\svn\trunk\pascal\sdl-stuff>chapter5_sdl2.exe 1
Runtime error 217 at $000007FEFD28ADAD
$000007FEFD28ADAD
$000007FEF9417F69
$0000000000002D6E

if run from Lazarus, I get some assembler listing

.....

RaiseException
000007FEFD28AD70 4881ecc8000000 sub $0xc8,%rsp 000007FEFD28AD77 83e201 and $0x1,%edx 000007FEFD28AD7A 488d05efffffff lea -0x11(%rip),%rax # 0x7fefd28ad70 <RaiseException>
000007FEFD28AD81 894c2420 mov %ecx,0x20(%rsp) 000007FEFD28AD85 33c9 xor %ecx,%ecx 000007FEFD28AD87 4889442430 mov %rax,0x30(%rsp) 000007FEFD28AD8C 89542424 mov %edx,0x24(%rsp) 000007FEFD28AD90 48894c2428 mov %rcx,0x28(%rsp) 000007FEFD28AD95 4d85c9 test %r9,%r9 000007FEFD28AD98 0f859a080100 jne 0x7fefd29b638 <ProcessIdToSessionId+200>
000007FEFD28AD9E 894c2438 mov %ecx,0x38(%rsp) 000007FEFD28ADA2 488d4c2420 lea 0x20(%rsp),%rcx 000007FEFD28ADA7 ff15f3040400 callq *0x404f3(%rip) # 0x7fefd2cb2a0 <NlsUpdateLocale+4928>
000007FEFD28ADAD 4881c4c8000000 add $0xc8,%rsp

and I have no clue where i crashes, but I presume it is in sdl2.dll somewhere.
Downloaded the latest 64 bit for (2.0.4)
searching throught the disk gives exactly 1 sdl2.dll

C:\>dir /s sdl2.dll
Directory of C:\bnl\bin
2016-01-02 11:59 1 230 336 SDL2.dll
1 File(s) 1 230 336 bytes
Total Files Listed:
1 File(s) 1 230 336 bytes
0 Dir(s) 122 686 066 688 bytes free

Anyone has some ideas what to do.
Needless to say, google runtime error 217 gives no clear indication on why it is complaining.

I had Lazarus 1.6 before, but downgraded because of bug in databse interface reagrding floats.
(thread with subject "TPQConnection and float")

/Bj?rn -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20160323/f10f0850/attachment-0001.html>

Reply by email

Björn Lundin
to Björn Lundin
Bj?rn Lundin wrote 6 lines
Hi! Using Lasarus 1.4.4 I had Lazarus 1.6 before, but downgraded because of bug in databse interface reagrding floats. (thread with subject "TPQConnection and float")

Nevermind, I got the 32 bit version to work for both db interface and sdl2.

-- Bj?rn

Reply by email