News:

Download Pelles C here: http://www.pellesc.se

Main Menu

Recent posts

#31
Bug reports / Creating resource with manifes...
Last post by PaoloC13 - March 17, 2026, 12:07:33 AM
Start a new project >
 Win64 Program (EXE) | Name: Test >
  Open >
   Filename: main.c >
    Add file to project >
     Filename: main.c >
      Open >
       Build >

[Ouput]
Project build started
Project build ended successfully

File >
 New >
  Resources (Untitled) >
   New >
    Manifest >
     Save >
      Filename: resources >
       Save >

"Do you want to add the file 'resource.rc' to the current project?" >
 Yes

[Ouput]
Document saved: C:\Documents\Test\resources.rc

Build >
 ...Freezed with spinning wheel

Version: 13.00.9
Windows 11

#32
Assembly discussions / Re: Verifying the support of t...
Last post by Vortex - March 16, 2026, 09:27:38 PM
Here is the 64-bit version :

include     movbeCheck.inc

.data

m1          db 'The processor does not support the instruction movbe.',0
m2          db 'The processor supports the instruction movbe.',0
StrTable    dq OFFSET m1,OFFSET m2

.code

start:

    sub     rsp,8+4*8
    call    main
    invoke  ExitProcess,0

main PROC PARMAREA=4*SIZEOF QWORD

LOCAL _rax:QWORD

    xor     rax,rax
    mov     _rax,rax
   
    mov     rax,1
    cpuid

    bt      rcx,22
    mov     rax,_rax
    adc     rax,0

    mov     rdx,OFFSET StrTable
    lea     rcx,[rdx+8*rax]

    invoke  printf,QWORD PTR [rcx]
    ret   

main ENDP

END start
#33
Assembly discussions / Verifying the support of the i...
Last post by Vortex - March 16, 2026, 08:45:29 PM
Hello,

To check if your processor supports the instruction movbe :

include     movbeCheck.inc

.data

m1          db 'The processor does not support the instruction movbe.',0
m2          db 'The processor supports the instruction movbe.',0
StrTable    dd OFFSET m1,OFFSET m2

.code

start:

    xor     eax,eax
    push    eax
   
    mov     eax,1
    cpuid

    bt      ecx,22
    pop     eax
    adc     eax,eax

    invoke  printf,DWORD PTR [StrTable+4*eax]
    invoke  ExitProcess,0

END start
#34
General discussion / Re: Compiling using pomake
Last post by TimoVJL - March 16, 2026, 08:09:44 PM
How project works with version 14 rc1 ?

It is possible to have many Pelles C versions in test PC
#35
General discussion / Re: Compiling using pomake
Last post by rweidner - March 16, 2026, 07:52:25 PM
Yes, main.c is in a different directory. I have a reason for it. It is just not a great reason. LOL.

My personal convention is to keep the program entry point next to the project file. The goal is simple: if I come back to this code months or years later, I do not want to hunt for the entry point. I also typically build the .exe next to the project file while I am debugging, so having main.c at the top level feels like it belongs with the build/run artifacts.

So for me, the top-level folder is "project management." Finding the entry point is barely in that domain, but it is in it enough that this pattern stuck.

Everything else that is "real code" lives under src\ (and headers under src\include\). Assets, deps, and notes get their own folders.

This layout is pretty typical for me:

C:\dev\XecronixEngine\FBIPursuit>tree /F
Folder PATH listing
Volume serial number is 73AB-A1AE
C:.
│   env_pelles32.bat
│   FBIPursuit.exe
│   FBIPursuit.geany
│   FBIPursuit.tags
│   main.c
│   project.bat
│   raylib.dll
│   RaylibWin32.ppj
│   RaylibWin32.ppx
│   RaylibWin32.tag
│   README.md
│   tags.bat

├───assets
│   │   scores
│   │
│   └───level1
│           astronaut12-energy-gaming-electro-trap-301124.mp3
│           astronaut12-ultimate-gaming-soundtrack-for-legends_astronaut-272122.mp3
│           astronaut12-victory-awaits-in-the-gaming-universe_astronaut-265184.mp3
│           baddie1.pdn
│           baddie1.png
│           civ1.pdn
│           civ1.png
│           click.wav
│           click_heavy.wav
│           damage.wav
│           explode.wav
│           fassounds-level-up-energetic-gaming-rock-music-251284.mp3
│           hero.png
│           hit.wav
│           hitslab-retro-retro-synthwave-gaming-music-270173.mp3
│           level.map
│           mroneilovealot-neon-overdrive-cyberpunk-gaming-edm-415723.mp3
│           sapan4-edm-gaming-music-335408.mp3
│           shot.wav
│           shots.png
│           song1.mp3
│           stereo-complete-in-dash.png
│           tiles.png

├───deps
│   │   MANIFEST.txt
│   │
│   ├───include
│   │       raylib.h
│   │       raymath.h
│   │       rlgl.h
│   │
│   └───lib
│           raylib.dll
│           raylib.lib
│           raylibdll.lib

├───output
│       actor.obj
│       actor_manager.obj
│       actor_templates.obj
│       game_sim.obj
│       gfx_manager.obj
│       high_score_sim.obj
│       main.obj
│       pause_sim.obj
│       settings_sim.obj
│       sfx_manager.obj
│       start_sim.obj
│       xx_input.obj

├───project_notes
│   │   game_rules.txt
│   │
│   ├───designIdeas
│   │       initialRoughEngineIdea.txt
│   │
│   └───milestones
│           milestones.txt
│           milestones_fbi_pursuit_v1_2026_02_27.md

└───src
    │   actor.c
    │   actor_manager.c
    │   actor_templates.c
    │   game_sim.c
    │   gfx_manager.c
    │   high_score_sim.c
    │   pause_sim.c
    │   settings_sim.c
    │   sfx_manager.c
    │   start_sim.c
    │   xx_input.c
    │
    └───include
            actor.h
            actor_manager.h
            actor_templates.h
            game_sim.h
            gfx_manager.h
            high_score_sim.h
            pause_sim.h
            settings_sim.h
            sfx_manager.h
            start_sim.h
            xx_conf.h
            xx_input.h
            xx_types.h

#36
Announcements / Re: Release Candidate #1 for v...
Last post by Vortex - March 16, 2026, 01:22:18 PM
To check if your processor supports MOVBE, run Coreinfo on the command prompt :

Coreinfo64.exe -f
Check the output of the tool to see if MOVBE is supported :

MOVBE           *       Supports MOVBE instruction
https://learn.microsoft.com/en-us/sysinternals/downloads/coreinfo
#37
Announcements / Re: Release Candidate #1 for v...
Last post by John Z - March 16, 2026, 12:57:35 PM
Quote from: Pelle on March 15, 2026, 06:39:56 PMSee https://www.pellesc.se/, Download and Changes.


Thanks very much!

John Z

P.S. ARM64 will be a good challenge as will finding testers. I think currently a general population of users is a few percent, for high end systems it is reportedly approaching 10% mainly due to high performance snapdragon systems.  AI supplied numbers  :(  Of course that neglects about 1 billion device in phones . . . .
#38
Bug reports / Re: bug report. setvbuf() func...
Last post by John Z - March 16, 2026, 12:09:50 PM
Thanks Pelle!

👍👍👍

John Z
#39
Announcements / Re: Release Candidate #1 for v...
Last post by Pelle - March 16, 2026, 10:07:35 AM
Well, the movbe instruction is rather old. Hard to find the complete history and origin, but possibly from ~2013.
I have hold back some progress for years, due to certain old processors, but I'm getting fed up with that. In a perfect world I rather drop X86/X64 and move permanently to ARM64. Or better yet: find another project to waste time on. We'll see...
#40
Announcements / Re: Release Candidate #1 for v...
Last post by Vortex - March 15, 2026, 10:08:07 PM
Hi Pelle,

Thanks for the new release. Poide is crashing on Windows 7 Sp1.