Leaderboard
Popular Content
Showing content with the highest reputation on 03/14/22 in Posts
-
Hi ! I've just published the source code in Pascal/Delphi of "Vidi Language" v0.2-alpha: https://github.com/davidberneda/Vidi It includes a parser/compiler and a simple ide/debugger for a new programming language (Vidi). This is a toy-experiment project in a very early stage. Attached pdf reference, same here: https://github.com/davidberneda/Vidi/blob/master/documentation/Vidi_Language_Reference.md regards david Vidi_Language_Reference.pdf
-
Build a Windows GUI shell in Delphi (CarPC)?
David Heffernan replied to PaulD's topic in General Help
Windows and Delphi must be the wrong tool for this task. There was a time when you didn't know Delphi. You learnt it. Is it so hard to imagine learning again? -
Pascal source code of Vidi Language, just published
Dave Novo replied to david berneda's topic in I made this
That has always been my dream, to have the spare time to create the "perfect" programming language! Good on you. -
I had such project running for some 2 years around 2008-2010, but it didn't gain much interest from the public. My hardware was based around one of the first Intel dual core Atom ITX based boards and had a M3-ATX power supply (this gracefully shut down the PC when you turned of the car engine. The earlier models just cut the power to the PC, which wasn't favourable). All put into a special ITX case looking just like an external amp. I can't remember the screen though, it was a motorized touchscreen with a blind front when closed. It opened automatically when the engine was started. The audio output was connected to a 4 channel amp with a subwoofer and actually sounded awesome. The soundcard on the Atom board was miles ahead for what the default headunit of the car provided, and with 5.1 separated channel support. It eventually got custom graphics from an actual designer, but he moved on to a commercial CarPC project soon after because the graphics framework couldn't compete with the smooth animations Android offered and he didn't like the speed of development (hey, it was a 1-man project in spare time). It was based on the Graphics32 library with -I think- the BASS audio library for playback of audio on multiple channels. Due to licensing of some of the external components, I'd chosen to provide it for free, although it was not opensourced. It had a plugin system with a couple of plugins for interior/exterior temperature monitoring (using the USB-Temper modules), displaying USB GPS receiver data, navigation using Garmin for PCs hosted in a window locked in a specific location, external signals (e.g. to connect steering wheel buttons), video playback, a USB FM radio receiver, ELM327 OBD-II interface, and some more stuff I can't remember. A front/rear camera plugin was also in development (can't remember if I ever finished this one.. the available webcams were quite horrible in low-light conditions, but I think I got some acceptable results using a Microsoft VX800). It also provided a Jukebox mode for the music playback where it tried to find music in the same genre you're currently playing. Unfortunately, the website I had for this is now defunct and mp3car.com doesn't seem to be in existence anymore either. I stopped developing it due to lack of interest from the public and the introduction of Android based headunits. The world moved on to those things, instead of Car PC's, understandably. But maybe I can dig up the code for this, I'll go look for it tonight.. might be a fun project to revive, although I don't have as much time for it anymore. I did find some of the earlier screenshots of it though (before it got more professional looking graphics).
-
It would be easier to duct tape an iPad over the airbag and run the speakers thru blue tooth. Second way. third item. https://www.makeuseof.com/tag/projects-raspberry-pi-touchscreen-display/ Third way. Delphi has a location demo for phone that works and ties into google maps. covers the map software. 25% of project would done. Works on my present android phone. Four. Finding screen size. https://stackoverflow.com/questions/1424920/how-do-i-get-the-usable-coordinates-of-the-screen-in-delphi to get the feel of embedded system Use the Task Manager to shut down Win Explorer. You can restart from Task Manager using new task Explorer.
-
A table name cannot be treated as a parameter. Instead you can use a macro like this: DELETE FROM &TableName and then set the actual table name with MacroByName.AsIdentifier := DestinationTableName;
-
Distributing DLLs with an exe is really very trivial. Either in the same directory as the exe or a sub directory as an assembly using manifests. Linking .obj files to an exe is a tricksy business. You need to supply the C RTL and for complex libs that is often very hard to achieve. And then on x64 you have the longstanding bug that the Delphi compiler doesn't pick up pdata sections with the exception tables. So exceptions in the C code can just terminate the process.
-
Refactoring code base with 32-bit support, will be in the next update!
-
You're welcome to use the code from here: https://github.com/DelphiWorlds/Multicaster/blob/master/MC.LocalAddresses.Android.pas Code repeated here in case that repo ever "disappears": unit MC.LocalAddresses.Android; interface uses IdStack; procedure GetLocalAddressList(const AAddresses: TIdStackLocalAddressList); implementation uses // RTL System.SysUtils, // Android Androidapi.JNI.Java.Net, Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNIBridge, // Indy IdGlobal; procedure GetLocalAddressList(const AAddresses: TIdStackLocalAddressList); var LInterfaces, LAddresses: JEnumeration; LInterface: JNetworkInterface; LAddress: JInetAddress; LName, LHostAddress: string; begin AAddresses.Clear; LInterfaces := TJNetworkInterface.JavaClass.getNetworkInterfaces; while LInterfaces.hasMoreElements do begin LInterface := TJNetworkInterface.Wrap(JObjectToID(LInterfaces.nextElement)); LAddresses := LInterface.getInetAddresses; while LAddresses.hasMoreElements do begin LAddress := TJInetAddress.Wrap(JObjectToID(LAddresses.nextElement)); if LAddress.isLoopbackAddress then Continue; // Hack until I can find out how to check properly LName := JStringToString(LAddress.getClass.getName); LHostAddress := JStringToString(LAddress.getHostAddress); // Trim excess stuff if LHostAddress.IndexOf('%') > -1 then LHostAddress := LHostAddress.Substring(0, LHostAddress.IndexOf('%')); if LName.Contains('Inet4Address') then TIdStackLocalAddressIPv4.Create(AAddresses, LHostAddress, '') else if LName.Contains('Inet6Address') then TIdStackLocalAddressIPv6.Create(AAddresses, LHostAddress); end; end; end; end. Note: this code hasn't been changed in some time. The "hack" can probably be done another way, and I'm pretty sure Yaroslav has told me JObjectToID isn't necessary
-
I think my view of the landscape is 32 bits less limited than your view.
-
Often because of dependencies on 32 bit code. Like how the Delphi IDE is. Personally I think could drop 32 bit support now and my customers would be fine with it.
-
Take a look at https://github.com/synopse/mORMot/blob/master/SynCrypto.pas It is Open Source, works from Delphi 6 up to latest Delphi 10.3, and is the fastest library for Delphi AFAIK - for instance, there is an Intel's SSE4 x64 optimized asm for SHA-256 on x86_64 (Windows and FPC Linux). You can use the THMAC_SHA256 record, or HMAC_SHA256() function for your purpose.
-
As I understand it, although it's being released on github, this project is not open source, right?
-
It's also the perfect place to get a noncommittal answer. I'll give you the answer right now so you don't have to wait: Okay, maybe not that last part but that would at least have meaning.