News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests
NB: Posting URL's See here: Posted URL Change

Main Menu

Can't get a rendering context, wglCreateContext fails

Started by hamper, November 11, 2013, 10:30:52 PM

Previous topic - Next topic

jj2007

Quote from: Gunther on November 17, 2013, 11:16:23 PMShould I post the changed code?

Thanks, no need for that. So for test ct, 65536*16-1 you see nothing, for test ct, 256-1 the screen feels rapidly? That would mean your message loop is a lot slower than ours ::)

Attached a version that allows modifying the speed via the menu.

dedndave

i can see a few immediate possibilities..
1) the multi-media timer isn't working as expected on Gunther's machine
2) the OpenGL init must be performed when the window is visible
3) OpenGL ver 1.x code isn't happy on a 4.4 machine

in this one, i moved the init code to the main proc

jj2007

Quote from: dedndave on November 17, 2013, 11:26:48 PM
in this one, i moved the init code to the main proc

Rapidly rotating triangle - but I'd like to clarify that message loop thing, see attachment to my post above.

dedndave

that one works as expected on my machine, Jochen
about one line of numbers per second (same as the previous one)
is that what you wanted ?

jj2007

Quote from: dedndave on November 17, 2013, 11:29:46 PM
that one works as expected on my machine, Jochen

I believe you, Dave. I'd like to see what Gunther's machine does when choosing the menu options :icon_mrgreen:

dedndave

didn't even notice the menu - rofl
they work here - let's see what happens on Gunther's

i need more coffee   :(

dedndave

hopefully, TWell will show up today
it would be nice if he would attach an EXE made with the C-version render module
i am having trouble building it, here

TWell


dedndave

now, i am a little lost.....

on TWell's code...
he posted a ZIP file named SmallOgl_ASM_C, supposedly using the C render module
and - that seems to work on Gunther's machine
and he says that the C version works, but the ASM version does not on his own machine
however, when i disassemble the EXE, it is clearly using the render code that i wrote in ASM
it would be great if he would attach both EXE's for a side-by-side comparison
i am having trouble building the C version, as i am not set up the same with Pelle's

it may also be helpful if both Gunther and TWell would post results from the version test i posted here

http://masm32.com/board/index.php?topic=2582.msg27374#msg27374

it generates a text file with version info   :t
please post or attach the text - thanks

TWell

Quote from: dedndave on November 18, 2013, 12:42:43 AM
now, i am a little lost.....

on TWell's code...
he posted a ZIP file named SmallOgl_ASM_C, supposedly using the C render module
and - that seems to work on Gunther's machine
and he says that the C version works, but the ASM version does not on his own machine
however, when i disassemble the EXE, it is clearly using the render code that i wrote in ASM
it would be great if he would attach both EXE's for a side-by-side comparison
i am having trouble building the C version, as i am not set up the same with Pelle's
But it is using that C version to rendering.
Quote from: dedndave on November 18, 2013, 12:42:43 AM
it may also be helpful if both Gunther and TWell would post results from the version test i posted here

http://masm32.com/board/index.php?topic=2582.msg27374#msg27374

it generates a text file with version info   :t
please post or attach the text - thanks

            Windows Version: 6.1.7601
                Platform ID: 2
Service Pack Version String: Service Pack 1
Service Pack Version Number: 1.0
                 Suite Mask: 00000300
               Product Type: 1
              Reserved Byte: 0

             OpenGL Version: 3.3.9836 Compatibility Profile Context

          OpenGL Extensions:
GL_AMDX_debug_output GL_AMD_conservative_depth GL_AMD_draw_buffers_blend GL_AMD_name_gen_delete GL_AMD_performance_monitor GL_AMD_shader_stencil_export GL_ARB_blend_func_extended GL_ARB_color_buffer_float GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_buffers_blend GL_ARB_draw_elements_base_vertex GL_ARB_draw_instanced GL_ARB_explicit_attrib_location GL_ARB_fragment_coord_conventions GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_geometry_shader4 GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_imaging GL_ARB_instanced_arrays GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_occlusion_query2 GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_provoking_vertex GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_shader_bit_encoding GL_ARB_shader_objects GL_ARB_shader_texture_lod GL_ARB_shading_language_100 GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_sync GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object GL_ARB_texture_compression GL_ARB_texture_compression_rgtc GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_multisample GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_rgb10_a2ui GL_ARB_texture_snorm GL_ARB_timer_query GL_ARB_transform_feedback2 GL_ARB_transform_feedback3 GL_ARB_transpose_matrix GL_ARB_uniform_buffer_object GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_envmap_bumpmap GL_ATI_fragment_shader GL_ATI_meminfo GL_ATI_separate_stencil GL_ATI_texture_compression_3dc GL_ATI_texture_env_combine3 GL_ATI_texture_float GL_ATI_texture_mirror_once GL_EXT_abgr GL_EXT_bgra GL_EXT_bindable_uniform GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_copy_buffer GL_EXT_copy_texture GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_histogram GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_EXT_subtexture GL_EXT_texgen_reflection GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object GL_EXT_texture_buffer_object_rgb32 GL_EXT_texture_compression_latc GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_add GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_rectangle GL_EXT_texture_sRGB GL_EXT_texture_shared_exponent GL_EXT_texture_snorm GL_EXT_texture_swizzle GL_EXT_timer_query GL_EXT_transform_feedback GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_blend_square GL_NV_conditional_render GL_NV_copy_depth_to_color GL_NV_explicit_multisample GL_NV_float_buffer GL_NV_half_float GL_NV_primitive_restart GL_NV_texgen_reflection GL_SGIS_generate_mipmap GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_SUN_multi_draw_arrays GL_WIN_swap_hint WGL_EXT_swap_control

dedndave

many thanks, TWell   :t

i see, now - the EXE actually contains both modules
and - i spotted an error in my code
i used FST, when i should use FSTP (i thought the POP was implied)

but, this is interesting
here is the C version code for that part of the render routine
:004012E7 DB450C                  fild dword[ebp+0C]
:004012EA DD1D88214000            fstp 64real[00402188]
:004012F0 DD05A0214000            fld 64real[004021A0]
:004012F6 83EC04                  sub esp, 004
:004012F9 D91C24                  fstp 32real[esp+esp]
:004012FC D90424                  fld 32real[esp+esp]
:004012FF 83C404                  add esp, 004
:00401302 83EC04                  sub esp, 004
:00401305 D91C24                  fstp 32real[esp+esp]
:00401308 DD0598214000            fld 64real[00402198]
:0040130E 83EC04                  sub esp, 004
:00401311 D91C24                  fstp 32real[esp+esp]
:00401314 D90424                  fld 32real[esp+esp]
:00401317 83C404                  add esp, 004
:0040131A 83EC04                  sub esp, 004
:0040131D D91C24                  fstp 32real[esp+esp]
:00401320 DD0590214000            fld 64real[00402190]
:00401326 83EC04                  sub esp, 004
:00401329 D91C24                  fstp 32real[esp+esp]
:0040132C D90424                  fld 32real[esp+esp]
:0040132F 83C404                  add esp, 004
:00401332 83EC04                  sub esp, 004
:00401335 D91C24                  fstp 32real[esp+esp]
:00401338 DD0588214000            fld 64real[00402188]
:0040133E 83EC04                  sub esp, 004
:00401341 D91C24                  fstp 32real[esp+esp]
:00401344 D90424                  fld 32real[esp+esp]
:00401347 83C404                  add esp, 004
:0040134A 83EC04                  sub esp, 004
:0040134D D91C24                  fstp 32real[esp+esp]


:biggrin:

it would seem it converts doubles to singles each time render is called
the only one that changes is the first value in the array

dedndave



dedndave


FORTRANS

Hi Dave,

   Just for jollies I will mention that yesterday I went to my Mother's
house and ran some of your older SmallOgl program and foo.exe.
The GUI and windowed CLI went as expected.  But when run from
a full screen session, they all ran in the background as processes.
Her machine had been infected (a while back), and then cleaned.
When infected, the command prompts were more or less disabled.
Meaningless data point I suppose.

   Back to today.  Results from SmallOgl_ASM_C.zip in Reply #144.
Results from SmallOgl6Fstp.zip in Reply #176.

                 SmallOgl_ASM_C              SmallOgl6Fstp
Windows 2000, P-III

Window CLI       Slow Triangle               Fast Triangle
Full Screen CLI  Blank                       Fast Triangle
Desktop GUI      Slow Triangle               Fast Triangle

Windows 98, HP Laptop

Window CLI       Locks up, reset to reboot.  Fast Triangle
Full Screen CLI  Locks up, reset to reboot.  Fast Triangle
Desktop GUI      Error message, locks up,    Fast Triangle
                 reset to reboot.

Windows XP, IBM Laptop

Window CLI       Slow Triangle               Fast Triangle
Full Screen CLI  Blank                       Blank
Desktop GUI      Slow Triangle               Fast Triangle

Windows XP, Sony Laptop

Window CLI       Slow Triangle               Fast Triangle
Full Screen CLI  Program Exception           Program exception
Desktop GUI      Slow Triangle               Fast Triangle


   I hope you find this interesting, and perhaps useful.  At least
it is a bit different.

Cheers,

Steve N.