Download Pelles C here: http://www.pellesc.se
Quote from: Pelle on November 30, 2025, 10:03:50 PMApparently there are four versions of Rich Edit:Works in my tests in Windows 11 laptop.
Version 1.0, Riched32.dll, class "RICHEDIT"
Version 2.0, Riched20.dll, class "RichEdit20A"/"RichEdit20W"
Version 3.0, Riched20.dll, class "RichEdit20A"/"RichEdit20W"
Version 4.1, Msftedit.dll, class "RICHEDIT50W"
Not sure who came up with this, but surely strong medication must have been involved...
The next version of the dialog editor will have four RichEdit controls (1, 2, 3, and 5).
include SaveRegs.inc
SaveRegs MACRO
mov QWORD PTR [rbp],rcx
mov QWORD PTR [rbp+8],rdx
mov QWORD PTR [rbp+16],r8
mov QWORD PTR [rbp+24],r9
ENDM
.data
msg db 'Hello!',0
msg2 db 'rcx,rdx,r8 and r9 are saved.',0
title db 'MsgBox',0
title2 db 'Macro test',0
.code
start PROC PARMAREA=5*SIZEOF QWORD
; Pass rsp to the procedure main
invoke main,ADDR msg2,ADDR title2,10,20,rsp
invoke ExitProcess,0
start ENDP
main PROC uses rbp r:QWORD,s:QWORD,t:QWORD,u:QWORD,_rsp:QWORD PARMAREA=4*SIZEOF QWORD
mov rbp,_rsp
SaveRegs
_r TEXTEQU <QWORD PTR [rbp]>
_s TEXTEQU <QWORD PTR [rbp+8]>
_t TEXTEQU <QWORD PTR [rbp+16]>
_u TEXTEQU <QWORD PTR [rbp+24]>
invoke MessageBox,0,ADDR msg,ADDR title,0
; The first call to MessageBox destroys rcx,rdx,r8 and r9
invoke MessageBox,0,_r,_s,0
ret
main ENDP
END start
Quote from: PaoloC13 on March 20, 2026, 11:24:53 AMIntel Celeron N4020 CPU @ 1.10GHz - RAM 4,00 GB
Windows 11 Vers. 23H2
Quote from: PaoloC13 on March 20, 2026, 11:24:53 AMIntel Celeron N4020 CPU @ 1.10GHz - RAM 4,00 GBPerhaps capable to test Pelles C v14 too.
Windows 11 Vers. 23H2
Intel Core i7-7700HQ @ 2.80 GHz - RAM 16,0 GB
Windows 10 Vers. 22H2
include SaveRegs.inc
SaveRegs MACRO
mov QWORD PTR [rbx],rcx
mov QWORD PTR [rbx+8],rdx
mov QWORD PTR [rbx+16],r8
mov QWORD PTR [rbx+24],r9
ENDM
.data
msg db 'Hello!',0
msg2 db 'rcx,rdx,r8 and r9 are saved.',0
title db 'MsgBox',0
title2 db 'Macro test',0
.data?
mainRsp dq ?
.code
start PROC PARMAREA=5*SIZEOF QWORD
; Pass rsp to the procedure main
invoke main,ADDR msg2,ADDR title2,10,20,rsp
invoke ExitProcess,0
start ENDP
main PROC uses rsi rdi rbx x:QWORD,y:QWORD,w:QWORD,z:QWORD,_rsp:QWORD PARMAREA=4*SIZEOF QWORD
LOCAL temp1:QWORD
mov temp1,10
mov rbx,_rsp
SaveRegs
xor rsi,rsi
mov rdi,1
invoke MessageBox,0,ADDR msg,ADDR title,0
; The first call to MessageBox destroys rcx,rdx,r8 and r9
invoke MessageBox,0,QWORD PTR [rbx],QWORD PTR [rbx+8],0
ret
main ENDP
END start
Page created in 0.041 seconds with 15 queries.