JSMN
winevdm
JSMN | winevdm | |
---|---|---|
14 | 116 | |
3,553 | 2,442 | |
- | - | |
0.0 | 7.9 | |
about 2 months ago | 10 days ago | |
C | C | |
MIT License | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
JSMN
-
Building a high performance JSON parser
Like how https://github.com/zserge/jsmn works. I thought it would be neat to have such as parser for https://github.com/vshymanskyy/muon
-
Flattening ASTs (and Other Compiler Data Structures)
One more JSON implementation using this approach is https://github.com/zserge/jsmn.
-
Show HN: WinGPT, AI Assistant for Windows 3.1
Yep! I'm using JSMN (https://github.com/zserge/jsmn), which is a streaming parser that visits each token sequentially, so there's only one copy of each JSON response in memory. I also avoid allocating new intermediate memory whenever possible; for example, to unescape backslashes in the JSON strings, I use a destructive loop that moves the non-backslash characters forward in memory, and truncates the string by moving the null terminator earlier in the string. Not something I'd imagine doing in most environments today, but as you said, it saves a bit of space at the expense of CPU time :)
void DestructivelyUnescapeStr(LPSTR lpInput) {
- A good C library to parse json data
-
Lightweight data serialization/deserialization format
After reviewing several options, I’ve settled on plain old JSON. For parsing, I use https://github.com/zserge/jsmn. For serialization I use https://github.com/rdpoor/jems (disclaimer: I wrote the latter, but others use it as well).
-
jemi: a compact JSON serializer for embedded systems
As mentioned here, it appears that tiny-json is a parser, not a serializer. If you're looking for parsers, I've been very happy with jsmn.
-
What is the proper way to store a RFC3339 date string?
Very small, 4-5 fields but I'm still going to write in binary because I'm trying to reduce dependencies and https://github.com/zserge/jsmn looks like good fit but jsmn only does parsing which I need for parsing some Oauth json data and config.json file. I will be able to dump the state struct in a state.bin file and read it later for comparing it with system time. Not having to write in text fits well for this particular use case. Benefits: Reduced dependencies and almost cost less decoding of the state struct(which the user will never see).
- Jsmn: A minimalistic JSON parser in C
- CJSON – Ultralightweight JSON parser in ANSI C
-
A tiny zero-allocation JSON serializer compatible with C89!
This is my very straight-forward implementation that came to be from the lack of JSON encoding in jsmn:
winevdm
-
Winlator: Android app that lets you to run Windows apps with Wine
Not exactly what you were asking, but winevdm [0] does use code from Wine to run 16-bit Windows applications on 64-bit Windows installs that don't support it natively (via ntvdm).
[0] - https://github.com/otya128/winevdm
-
"LibreOffice is better at reading old Word files than Word"
https://github.com/otya128/winevdm run 16 bit apps on 64 windows
This, along with Windows's own compatibility mode tweaks, should run almost any game that has ever been released on Windows.
- 29 years ago today I went online. Netscape Navigator 1.0 was the tool I loved
- Anyone ever play Castle of the Winds?
-
SimCity Classic - Guide to Installation (Windows / DOSBox)
WineVDM: https://github.com/otya128/winevdm/releases
-
Show HN: WinGPT, AI Assistant for Windows 3.1
It could work with the help with otvdm: https://github.com/otya128/winevdm
-
Free Tech Tools and Resources - Mac Scrolling, Load Testing, Win Server Switch Tip & More
You can repeat this command as many times as you need to for additional records. More information can be found here. Total downtime in a VMWare environment is less than five minutes, barring any DNS server replication in play." Yet Another Free Tool winevdm enables you to keep old Windows programs on life support by running 16-bit Windows (1.x, 2.x, 3.0, 3.1, etc.) on a 64-bit Windows system. Ojakobe explains, "Had a special case of a user who clung to their Windows 7 PC because their work was reliant on a 16-bit program from 1997 (and even on 7 it didn't run properly). Used the program above to make it run reliably on 10." One Final Free Tool LocalAI is a self-hosted, OpenAI-compatible API that allows you to run language learning models locally or on-prem using consumer-grade hardware without the need for GPUs. This RESTful API supports multiple model families that are compatible with ggml format. Our thanks go to mudler_it for this one.
-
IT Pro Tuesday #255 - Mac Scrolling, Load Testing, Win Server Switch Tip & More
winevdm enables you to keep old Windows programs on life support by running 16-bit Windows (1.x, 2.x, 3.0, 3.1, etc.) on a 64-bit Windows system. Ojakobe explains, "Had a special case of a user who clung to their Windows 7 PC because their work was reliant on a 16-bit program from 1997 (and even on 7 it didn't run properly). Used the program above to make it run reliably on 10."
-
Anyone know how to get ActiveSync on windows 10?
After that you should now be able to install software. One final sticking point is that some older programs are wrapped up in 16-bit installers, however these can be installed by running the installer with something like otvdm.
-
Why won't this run on my windows 11 pc?
Try WineVDM because NTvdm never got a port to 64-bit since the CPU mode it relied on for fast 16-bit code execution gets disabled when a x86 processor is switched into long mode. WineVDM is likely translating 16-bit instruction calls to 32-bit and then passing that off to Windows
What are some alternatives?
cJSON - Ultralightweight JSON parser in ANSI C
OTVDM - Windows/DOS emulator -> https://github.com/otya128/winevdm
json-c - https://github.com/json-c/json-c is the official code repository for json-c. See the wiki for release tarballs for download. API docs at http://json-c.github.io/json-c/
dosbox-x - DOSBox-X fork of the DOSBox project
Jansson - C library for encoding, decoding and manipulating JSON data
ntvdmx64 - Run Microsoft Windows NTVDM (DOS) on 64bit Editions
RapidJSON - A fast JSON parser/generator for C++ with both SAX/DOM style API
em-dosbox - An Emscripten port of DOSBox
ArduinoJson - 📟 JSON library for Arduino and embedded C++. Simple and efficient.
ScpToolkit - Windows Driver and XInput Wrapper for Sony DualShock 3/4 Controllers
json - JSON for Modern C++
DS4Windows - Like those other ds4tools, but sexier