Recent

Author Topic: We are planning the next release: Lazarus 2.0.10  (Read 19185 times)

SlackerNReckless

  • New member
  • *
  • Posts: 5
  • Slackered Recklessness!!!
    • Slacker N' Reckless
Re: We are planning the next release: Lazarus 2.0.10
« Reply #30 on: June 27, 2020, 05:19:22 pm »
Nice!  8)

As you can see, FreePascal team released a new Win16 target in their 3.2.0 release. You could release a certain Lazarus for Win16. Win 3.x compilation. Like Borland Delphi 1.0 or Borland/Turbo Pascal for Windows.

But sadly you dropped even Win9x (former Win32 target). I know it's because the maintainer didn't want to continue. At least it was what I read in some Wiki pages and some forum posts here a long time ago.

I'm not complaining. Okay? And honestly I don't want do discuss about, I'm just commenting about.  ::)

With Borland Delphi 7.0, the latest version with the classic GUI capable of generate Win32 executables, 8.0 is .NET), is possible to develop apps for Win9x (including first Win95 version) and they even work in WinNT 3.51 (with latest SP5) and some DLL updates found at BearWindows site (google for). You need to install Delphi 7.0 at least in Win98 (SE if possible), but the generated executable will work in NT 3.51.

It's not possible to install even Delphi 2.0 (first Win32 version) in Windows NT 3.51. The IDE and even the "System" unit don't work. And even the forms creation. Some functions simply don't exist in the API. Only Win95 and more recent Windows versions.

But using Delphi 1.0 you can install it and you can use Call32NT (an way to call 32bit DLL functions in Win16 apps, Google for) in Delphi 1.0. The executable will be a NE (New Executable) like every Win16/Win3.x executable but it can call the 32bit functions of NT 3.5x API.

Anyway... just some thoughts about. Not asking or anything. See ya! ;)
« Last Edit: June 27, 2020, 05:21:58 pm by SlackerNReckless »
A RECKLESS SLACKER! ;-)

PascalDragon

  • Hero Member
  • *****
  • Posts: 2416
  • Compiler Developer
Re: We are planning the next release: Lazarus 2.0.10
« Reply #31 on: June 27, 2020, 05:29:13 pm »

The intended minimum requirements for the release will be:
...
macOS:
   10.5 to 10.12; Carbon (32bit), Cocoa (64bit, beta), qt and qt5
   (32 or 64bit).
I'm a little confused about that statement. Does it mean, that Lazarus 2.0.10 will only run on macOS 10.5 to 10.12? Or is 10.12 the minimum requirement and Lazarus 2.0.10 will run on 10.12 and higher up to Catalina (10.15)?

It's probably simply that this part of the ReadMe wasn't updated for quite some time... ;D

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 8896
  • FPC developer.
Re: We are planning the next release: Lazarus 2.0.10
« Reply #32 on: June 27, 2020, 05:54:17 pm »
Nice!  8)

As you can see, FreePascal team released a new Win16 target in their 3.2.0 release. You could release a certain Lazarus for Win16. Win 3.x compilation. Like Borland Delphi 1.0 or Borland/Turbo Pascal for Windows.

Or you could do it! FPC and Lazarus are community efforts.

Quote
But sadly you dropped even Win9x (former Win32 target). I know it's because the maintainer didn't want to continue. At least it was what I read in some Wiki pages and some forum posts here a long time ago.

There never was a dedicated win9x maintainer. The general Windows maintainers kept it running for 10 years after Windows XP mostly took over, but many of them had cleaned out old machines over the years, so very few could test win9x. There was exactly one responsible user (Bart, who regularly tested releases and reported bugs) and massive unicode changes were scheduled for FPC 3.0.

Basically those changes brought up "should we still support windows 9x" discussion. The core problem being putting unworkable 9x compatibility constraints on people that didn't have win9x.

I made the suggestion to split the targets into a "winnt"  (then still 2000+) and a "win9x" target, (so winnt people could just work without constraints, and win9x would not constantly broken with winnt commits), but nobody stepped up for the win9x part.

It was not about being old (FPC trunk supports ZX Spectrum). It is just that there seems to be no retro community around win9x like it is for Amiga, ZX Spectrum, C=64 and even Dos and CP/M.

Even Bart was mostly only active just before and after release time, so there was no continuous feedback/usage at all.

Quote
I'm not complaining. Okay? And honestly I don't want do discuss about, I'm just commenting about.  ::)

So am I. But it needs stressing that the general windows devels had already kept it up for 10 years, and feedback was near zero, which made the whole situation unpractical.

Quote
With Borland Delphi 7.0, the latest version with the classic GUI capable of generate Win32 executables,  8.0 is .NET), is possible to develop apps for Win9x (including first Win95 version)

And old FPC/Lazarus also just generate win9x just fine. Just not new Delphi or Lazarus/FPC versions. Same thing.

« Last Edit: June 27, 2020, 05:59:05 pm by marcov »

SlackerNReckless

  • New member
  • *
  • Posts: 5
  • Slackered Recklessness!!!
    • Slacker N' Reckless
Re: We are planning the next release: Lazarus 2.0.10
« Reply #33 on: June 27, 2020, 06:38:05 pm »
So am I. But it needs stressing that the general windows devels had already kept it up for 10 years, and feedback was near zero, which made the whole situation unpractical.

Ok! Yeah... like you said, keeping Unicode (Wide) and former ANSI functions is a bit stressing. I have some Delphi 7.0 apps where I had to use "TntWare Delphi Unicode Controls" and develop some forks. The forks have the "/W" meaning Wide (Widestring) in their Application Name, Main form and .exe's filenames have a "W" in the ending. Like Application.exe and ApplicationW.exe

And old FPC/Lazarus also just generate win9x just fine. Just not new Delphi or Lazarus/FPC versions. Same thing.

Yeah... I'm aware of this fact. Some old Lazarus releases, pre 1.0 work in 9x and even NT 3.51. By the way, the best Windows version ever! I like NT 4.0 but the 3.x GUI is lovely...  :-* But for me the best Windows ever will be Win2K. It sucks less than XP and it's more light.

I know it's 2020, but I still develop Win3.x apps. And as I never liked C/C++ I use basically Delphi 1.0 and Borland Turbo Pascal for Windows as Delphi 1.0 can't produce for 3.0. Even patching the 3.1 Delphi 1.0 NE executables signing them for 3.0 they don't work.

Sometimes it's annoying mostly because of 16 bit limitations but it's "relaxing". I still love the 3.x GUI.  I just imagined a Lazarus for Windows 3.x :P

Anyway... it was nice talking to you. See ya!  ;)
« Last Edit: June 27, 2020, 06:40:14 pm by SlackerNReckless »
A RECKLESS SLACKER! ;-)

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 6708
  • Debugger - SynEdit - and more
    • wiki
Re: We are planning the next release: Lazarus 2.0.10
« Reply #34 on: June 27, 2020, 06:45:38 pm »
macOS:
   10.5 to 10.12; Carbon (32bit), Cocoa (64bit, beta), qt and qt5
   (32 or 64bit).
I'm a little confused about that statement. Does it mean, that Lazarus 2.0.10 will only run on macOS 10.5 to 10.12? Or is 10.12 the minimum requirement and Lazarus 2.0.10 will run on 10.12 and higher up to Catalina (10.15)?
Afaik: Carbon <> Cocoa

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 6708
  • Debugger - SynEdit - and more
    • wiki
Re: We are planning the next release: Lazarus 2.0.10
« Reply #35 on: June 27, 2020, 06:51:37 pm »
Well if someone wants to work on W95 or W3.1 => Open a new thread.

No idea how much work it would be. But you would need to create a new widgetset. Adapting the current WS would not be a solution.

Also it would be build from sources, since the current innosetup needs a newer windows too. (I think I downgraded it for XP again, but I am not sure....)

Handoko

  • Hero Member
  • *****
  • Posts: 3906
  • My goal: build my own game engine using Lazarus
Re: We are planning the next release: Lazarus 2.0.10
« Reply #36 on: June 27, 2020, 07:01:01 pm »
 :-[ Sorry of being off topic. I'm just curious.

... but I still develop Win3.x apps.

Really? Are they your hobby projects or you write them because you're working in a software house?

I meant, Win3.x ... wow!
I wonder who are still using it.

I'm a computer technician, fixing computers is my daily work. Here are many computers, very low end to high end. I live in a developing country, some are rich but most are poor. It's been more than a decade, I haven't seen anyone here using a Win98 computer. But, you still develop for Win3.x, that's really makes me wow!

I ever installed Win 3.1 on a Pentium 4 computer. It really run lightning fast. What kind of computer do you use for developing those apps?
« Last Edit: June 27, 2020, 07:13:39 pm by Handoko »

SlackerNReckless

  • New member
  • *
  • Posts: 5
  • Slackered Recklessness!!!
    • Slacker N' Reckless
Re: We are planning the next release: Lazarus 2.0.10
« Reply #37 on: June 27, 2020, 07:31:56 pm »
Well if someone wants to work on W95 or W3.1 => Open a new thread.

No idea how much work it would be. But you would need to create a new widgetset. Adapting the current WS would not be a solution.

Also it would be build from sources, since the current innosetup needs a newer windows too. (I think I downgraded it for XP again, but I am not sure....)

Oh... cool! But it won't be me. At least I gave an idea for someone here. Hope someone gets it. Or not:  :-[

Yeah... it would be a lot of work. Downgrading IDE and mainly the units. At least the compiler we already have it. Thanks a lot, Mr. Martin!  :D

:-[ Sorry of being off topic. I'm just curious.

... but I still develop Win3.x apps.

Really? Are they your hobby projects or you write them because you're working in a software house?

Some sort of hobby as the Win 16 Delphi 1.0 apps I have are downgraded forks of Win32 Delphi 7.0 I have developed in the past. Actually I began developing them in Delphi 3.0 back in 1998. 2.0 is horrible. They are all private, but I really use them.

Moved to 5.0 once and 7.0 later as I noticed they can still work in NT 3.51 like I said, but you need to be very careful as shell functions (of the NT 4.0/Win9x Shell32.dll) don't work and other GDI/User/Kernel and even Networking functions. But a Delphi 7.0 application with only VCL controls and Delphi functions will work without problems.

I'm still intending to move them to D2009 (first Unicode version) but keeping the ANSI and Wide Delphi 7.0 ones. And port them to 64 bits (Win64!) using XE2 and later versions and one day move them to Lazarus. I already did some tests but for a while not. 

Well, because my target always will be backward compatibility. My Delphi 7.0 apps can work since NT 3.51 up to Win10 including Server versions.

[EDIT] Just a past edit. I forgot to reply your last question. Actually I use a Pentium Dual Core 64bits of 3.0Ghz. I managed to install Delphi 7.0. It runs Windows 7 Ultimate 64 bits. I have an old Pentium 3 600Mhz where it has Windows 3.11 for Workgroups with Delphi 1.0 installed, NT 3.51, 4.0 and Windows 95 where I do some tests. Multiple boot, you know. I have a Pentium 4 3.0Hz with Win98SE, Me and 2000 installed for more testings. And two other computers with WinXP installed. One, a Pentium 4 with 2.8Ghz (32bits) and one Dual Core of 2.2ghz (64bits) with XP 64 bits. But these last two ones aren't really needed as they completely work in 2k.

Okay... I'll stop talking now! It's not the subject of this topic. Sorry. Bye!  ;D
« Last Edit: June 27, 2020, 07:58:25 pm by SlackerNReckless »
A RECKLESS SLACKER! ;-)

winni

  • Hero Member
  • *****
  • Posts: 1996
Re: We are planning the next release: Lazarus 2.0.10
« Reply #38 on: June 27, 2020, 07:37:39 pm »

Sometimes it's annoying mostly because of 16 bit limitations but it's "relaxing". I still love the 3.x GUI.  I just imagined a Lazarus for Windows 3.x :P

Yes - with the nice "speedometer" while installing .
And the nice Gauge in the components palette.
And endless chains of 64k chunks for loading a TIFF image into the RAM.

Those were the days ....

Winni

avra

  • Hero Member
  • *****
  • Posts: 2044
    • Additional info
Re: We are planning the next release: Lazarus 2.0.10
« Reply #39 on: June 27, 2020, 10:11:56 pm »
I live in a developing country, some are rich but most are poor. It's been more than a decade, I haven't seen anyone here using a Win98 computer.
Home users do not use it any more, but factories all over the world still do. There was an OS/2 SCADA application running 2 caster plants inside of steelshop. One of my colleagues has transferred it to Win 3.1, and I have upgraded it for Win 98. It couldn't be moved to newer OS because of the drivers. To enable data logging I was able to make a DDE client to read and write SCADA tags, DDE/TCP gateway and custom OPC server so other parts of the plant could communicate to it. It is running 24/7 as we speak. They will get rid of it one day once everything else gets an upgrade, but since that costs tens of millions of dollars we do not see an upgrade each decade. And it is even not the most drastic case. You can still find DOS based X-Ray thickness measurement device (big as a house), or ancient Siemens M70 unix server (nowadays emulated) or IBM mainframes with old real terminals in Hot Strip Mill plants.

So yes, people still use ancient operating systems and there is a need for development tools supporting them. While using latest and greatest is nice, it is not a problem in such cases to pick up an older version.
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 8896
  • FPC developer.
Re: We are planning the next release: Lazarus 2.0.10
« Reply #40 on: June 27, 2020, 11:59:58 pm »
Afaik while formally FPC 2.4.x was the last win9x version, FPC 2.6.x had few issues, and Bart had some patches for them.


Bart

  • Hero Member
  • *****
  • Posts: 4033
    • Bart en Mariska's Webstek
Re: We are planning the next release: Lazarus 2.0.10
« Reply #41 on: June 28, 2020, 12:43:38 am »
I mostly had patches for Lazarus.
IIRC I had one patch for fpc (win9xwsmanager unit).

Bart

SlackerNReckless

  • New member
  • *
  • Posts: 5
  • Slackered Recklessness!!!
    • Slacker N' Reckless
Re: We are planning the next release: Lazarus 2.0.10
« Reply #42 on: June 28, 2020, 03:52:01 am »
Well, I was not intending to reply about this "off-topic" I created here but considering some replies above I'd like to share more thoughts I have about.

1st:

Actually, I found a pretty bad move of Lazarus team removing old Win32 support (Win9x mostly). We know Microsoft is sucking a lot lately, I really hate Windows 8.x and 10. They ended Windows 7 support and now they dropped support for 32bit in Win10. But it's just my humble opinion about. I mean, the fact I think it was a bad move of Lazarus team.  %)

Yeah... OS/2 is still used. It was released as eComStation by Serenity Systems for a while and now as ArcaOS. Nice OS, really 32 bits. Just lacks a 64bits version. I'm aware a lot of companies still use it and even Win3.x software in some parts. Mainly for old (and unportable) like old accounting and database programs without source where the old companies are already defunct and they are totally abandonware.

Even the guys that created ClassicShell (http://www.classicshell.net), a nice Delphi app, stopped developing it, released the source of its latest version again (they had stopped releasing the sources of newer version since then) and complained once in their site saying Microsoft was moving away of classic Win32 compilation and it was becoming hard to follow. They removed this text, but I understood them.

By the way, I always hated the new Start Menu that began with Windows XP, at least Windows XP still had the old one (Classic Menu), while Vista/7, 8.1 and 10 not.

Yeah... Microsoft is really sucking. A lot of old documents, like FAQs, Q&As, mainly KBs and even their old FTP archive are gone. They are forcing people to use only the latest versions of their products. Windows 10 SUCKS! Sorry! :D

2nd:

FreePascal team at least and it's what it seems think in more portability, more targets and as far I know they never dropped support for older operating systems.

It's great as I have developed some DOS FreePascal programs using FreePascal's TStringList object, it's like the Delphi one, great for parsing and processing texts as using old Turpo Pascal 7.0 for texts pretty sucks.

And I like to use Free Vision (their Turbo Vision implementation), it's like developing a Delphi application but in DOS.

By the way, there is a nice wrapper for Delphi called DWPL (http://dwpl.sourceforge.net/), you develop a Delphi Win32 App, add their units to project, changes some functions if needed and guess what? Compile it and you wikl have a certain Dos 32 bits Application using WDOX extender and a modified version of TurboVision working like a Delphi one. It's so adorable...  8-)

And just saying this: FreePascal, you guys are AMAZING!!! Long life, FreePascal, Pascal forever!  ;D

3rd, last and my suggestion about:

As I can see Bart appeared. Hey guy! Nice to meet you!  :)

Well, you could return with the old Win32 support for Win9x and after releasing it some time later, you could ask people (like recruiting) for Win16 support as I think it would be less painful to port old ANSI functions to their 16-bit counterparts.

It's not so hard to backport (downgrade) a Delphi 7.0 app to 1.0 Win16, You need to change the names of some units, like Windows to Winprocs and Wintypes, if you use text .DFM files (the forms files) you need to convert to old binary ones. Delphi has a converter for them, not only the IDE as they have a command-line one, "convert.exe". You need to make some changes in the .DPR removing "Application.Initialize;" too. This procedure doesn't exist in Delphi 1.0.

But before moving a Delphi 7.0 to Delphi 1.0, change only the .DFMs to binary and use Delphi 2.0. Some new properties/procedures and functions will be gone but as it's the first Win32 version it's very similar to Delphi 1.0.

After changing the codes, etc. If the original Delphi 7.0 program compile in Delphi 2.0 it will compile very well in Delphi 1.0, except some Win32 functions, you will have to use Win16 one and not using any of the Win32 VCL Components. That famous tab in the IDE.

And don't forget to change the .DPR's, .PAS's and .DFM's to 8.3 filenames and uppercase them. Don't use the trunked ones, like "A_UNIT~1.PAS"

Of course, a lot of functions of Win32 API don't exist in Win16 API, but some are very similar, the only real problems are the 16-bit limitations. An integer is really 16bit, if you need at least a 32bit integer, you need to change your variable to "longint". Strings are 256 bytes, a lot of other items are really limited to 64K (or 65536 bytes), mainly the TStrings/TStringList objects.

The Delphi 1.0 IDE is limited, you can't write a line of code with more than 256 characters. If declaring vars try trunking their names to fit the line like in functions or procedures. If declaring a long const string declare the const string in two or more parts if needed, like:
 
const1 = 'string very long...';
const2 = 'string very long...';

and concatenate them in code normally using the '+'.

Comments are annoying, only the old ones work {} the new ones //. If you comment a lot you will have to replace them.

Even the Unit can't have a large file size. I had two programs here where I had to  create an extra unit and move some procedures/functions to it. Delphi 1.0 gives an error trying to compile the code. Not related with stack or memory as the Delphi program will run normally.

By the way, the Delphi 1.0 has some source code. Not all as the latest versions. Mainly the Client/Server 1.0. I think you can use them as base. A lot of Win16 API's are declared in them.

Well, I can help later providing tips for Win16 backporting, but only if someone really starts a "Lazarus for Win 3.x" here. Hardly, I know.

Just PM me and I'll be glad to give a real name, my location, a real e-mail and other contacts. I'm not American neither English is my native language but for a while I won't say my nationality publicly. Okay?  :-X

Okay... I'll stop with all this talking! Sorry for talking too much! :P See ya!  ;)
« Last Edit: June 28, 2020, 04:21:19 am by SlackerNReckless »
A RECKLESS SLACKER! ;-)

trev

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1053
  • Former Delphi 1-7, 10.2 User
Re: We are planning the next release: Lazarus 2.0.10
« Reply #43 on: June 28, 2020, 10:02:36 am »
Dragging this back on topic for a moment... the Lazarus 2.0.8 macOS pkg files:

* fpc-3.0.4-macos-x86_64-laz.pkg
* LazarusIDE-2.0.8-macos-x86_64.pkg
* fpc-src-3.0.4-laz.pkg

do not work on Mountain Lion (10.8.5) giving the somewhat spurious error detailed in the attached Installer dialog.

Can this be bug fixed for 2.0.10?
o Lazarus v2.1.0 r63871, FPC v3.3.1 r47164, macOS 10.14.6, Xcode 11.3.1
o Lazarus v2.1.0 r64160, FPC v3.3.1 Nov 27 21:16:31, macOS 11.0.1 (aarch64), Xcode 12.2
o Lazarus v2.1.0 r61574, FPC v3.3.1 r42318, FreeBSD 12.1 amd64 (VMware VM)
o Lazarus v2.1.0 r61574, FPC v3.0.4, Ubuntu 20.04 (PD VM)

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 3886
  • I like bugs.
Re: We are planning the next release: Lazarus 2.0.10
« Reply #44 on: June 28, 2020, 10:48:30 am »
Well, I was not intending to reply about this "off-topic" I created here but considering some replies above I'd like to share more thoughts I have about.
Why didn't you open a new on-topic thread about the issue? Martin explicitly asked for it.
The correct forum section would be :
 Forum »Programming »Widgetset

Quote
Okay... I'll stop with all this talking! Sorry for talking too much! :P See ya!  ;)
You can talk as much as you want in a proper forum thread dedicated for the topic. Why people have an obsession to hijack this thread about Lazarus bug fix release 2.0.10? Martin apparently deleted the earlier hijacked contents. Is there a way to move all hijacked content to a new thread so that also the original author information remains?
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux.

 

TinyPortal © 2005-2018