scratch
chars
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.
scratch
- Windows XP dedicated image viewer?
-
What Happens Before the Main Function is Called ?
pbmview, an image viewer (windows subsystem).
-
A couple freestanding parsers in C99
For comparison (for those following along): https://github.com/skeeto/scratch/blob/master/parsers/qoi.c https://github.com/skeeto/scratch/blob/master/parsers/ini.c
- (POSIX) theory and practice of the useless use of cat
- [2023-05-19] Challenge #400 [Intermediate] Practical Numbers
-
Difference in accuracy when compiling in windows and linux
Another option I learned a couple years ago is embedding a UTF-8 manifest ([details])[https://github.com/skeeto/scratch/tree/master/libwinsane]. Also put the console in UTF-8 mode (SetConsoleOutputCP(CP_UTF8)), and you're done. Works on Windows 10 and later. This covers everything: argv is UTF-8 and fopen accepts UTF-8 paths. (This is exactly how CRTs should have worked all along.)
-
I made this small program in C :)
I was thinking more about this and I realized it's quite easy to do it in arbitrary precision, so here's my take: https://github.com/skeeto/scratch/blob/master/misc/bswap.c
-
Beside SDL, is there an easier way to just show a custom rectangle with text, cross-platform?
As was linked from my QOI article, here's my full decoder with comments: qoi.c. Each pixel decodes to a 32-bit integer, ABGR. That corresponds to SDL's SDL_PIXELFORMAT_ABGR8888. SDL_UpdateTexture copies that data into the texture's internal storage, and font is no longer needed. (In a real program I'd allocate it in a scratch arena, reset after initialization.)
-
GitHub - pmkenned/pmk_string: A simple string library in C
A recent, interesting experience with function+context allocation: For more than a decade, Windows accidentally exposed part of zlib in a public DLL, and (overly-)clever applications can exploit this as a "system zlib." Though it doesn't export the "end" functions, so cleanup seems impossible. However, custom allocation works, so doesn't matter. I plugged it into an arena.
- decompressing a .deflate file?
chars
-
Ask HN: What apps have you created for your own use?
All of mine are CLI...
https://github.com/jftuga/less-Windows - [not really mine, but I just help maintain the port] - GNU less compiled for Windows 10 & 11. Stand-alone version with no dependencies.
https://github.com/jftuga/gofwd - A cross-platform TCP port forwarder with Duo 2FA and Geo-IP integration
https://github.com/jftuga/spotprice - Quickly get AWS spot instance pricing - a bit easier to use than the aws cli; is also faster and has more features
https://github.com/jftuga/tcpscan - A standalone, fast, simple, multi-threaded cross-platform IPv4 TCP port scanner
https://github.com/jftuga/ipinfo - Return IP address info including geographic location and distance when given IP address, email address, host name or URL
https://github.com/jftuga/photo_id_resizer - Resize photo ID images using face recognition technology
https://github.com/jftuga/chars - Determine the end-of-line format, tabs, bom, and nul characters
-
How can I use git reset if I have already pushed?
! [rejected] main -> main (non-fast-forward) error: failed to push some refs to 'https://github.com/jftuga/chars.git' hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Integrate the remote changes (e.g. hint: 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details. ```
- I wrote a CLI tool to determine the end-of- line format, tabs, bom, and nul
- I wrote a cli tool to determine the end-of-line format, tabs, bom, and nul characters
What are some alternatives?
w64devkit - Portable C and C++ Development Kit for x64 (and x86) Windows
busybox-w32 - WIN32 native port of BusyBox.
BUSY - BUSY is a lean, statically typed, cross-platform, easily bootstrappable build system for GCC, CLANG and MSVC inspired by Google GN
PSCalendar - :calendar: A set of PowerShell commands for displaying calendars in the console.
cimgui - c-api for imgui (https://github.com/ocornut/imgui) Look at: https://github.com/cimgui for other widgets
gameinfojs - High level interface to the functionality provided by the other game* libraries
PL3D-KC - A very fast and simple software renderer using only integers and fixed point math. PiSHi LE (PL) is a subset of the 3D software graphics library used in King's Crook.
ipcrypt - IP-format-preserving encryption, with a dedicated 4-byte cipher
json-build - Tiny, zero-allocation JSON serializer written in ANSI C
libgamearchive - Library and command line utilities for examining and editing archive/group files used by DOS games
refterm - Reference monospace terminal renderer
SGDK - SGDK - A free and open development kit for the Sega Mega Drive