Posts
5424
Following
346
Followers
539
.

Jarkko Sakkinen

One of the many reasons why Lua is my favorite scripting language, is that you don't need JSON, YML or TOML.

Lua works well for all those needs and purposes also as a data format.
0
0
0

Jarkko Sakkinen

WDF circuit modelling and learning all about the topic has by accident become my hobby 🤷

It started by learning to model some existing analog gear based on circuit diagram and getting surprisngly good results.

I've cut out all plugins to their own Git project from the Clarity DAW project in order to trim it to something accomplishable.

From that stash I've further split 808 plugin project, and will redesign WDF modelled internals :-)

Always nice to learn a craft and I could imagine that this can be generalized to circuit simulation overall, which is professionally useful craft.
0
0
0
@timojyrinki, this could be useful to package to OpenSUSE. It has a proper cross-platform support:

https://codeberg.org/jarkko/libbasedir/src/branch/main/src/platform.

Good quality for what it does :-)
0
0
1
@nina_kali_nina I've actually done aoUT type of stuff also professionally back in 2012 when I implemented this in collaboration with Peter Anvin:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/x86/realmode

Basically just applied learnings from this :-)
1
0
2

Jarkko Sakkinen

This has spinned off from my recent side-projects and thought to release it because it is disturbing to reimplement this all the time:

https://codeberg.org/jarkko/libbasedir

There was not really great library to handle this simple task so here you go.
1
0
2
@nina_kali_nina I'll publish the links in this site once I release them: https://jarkkojs.github.io/

Thus, the 486 esque mode 13h fixed point graphics goodness with VGA's rectangular pixels :-)
1
0
3
@nina_kali_nina The inspiration came from when I noticed that people I know who are doing demoscene productions for MS-DOS still use old compilers and really antique tools to generate MS-DOS binaries.

An associated project is to create mxmplay20 of https://www.cubic.org/source/mxmplay-1.6.zip, which is portable implementation of the original and buildable also for Linux (with Pipewire instead of GUS playback routine).

There is a new GUS fork of ao486 that has gained my interested so I guess that it is the main target platform: https://github.com/xolod79/ao486_MiSTer/tree/GUS

Has been nice to hear the awesome sound of Gravis Ultrasound first time in 20 years :-)
2
3
12
@nina_kali_nina Cool. I'm releasing in near future aoUT dos extender with toolchain support for modern gcc and clang. The name comes from the fact that the PM payload is relocatable a.out :-)

As for Dosbox, this is AFAIK the best incarnation of it ATM: https://www.dosbox-staging.org/
2
1
4

Jarkko Sakkinen

Edited yesterday
Extension mechanism available are file type handlers.

It neither has user defined actions nor plugins because I prefer kernel alike model where single codebase is further improved. And this guarantees ubiquitos UX for anyone using ccd (same shortcuts work everywhere). And these choices help to optimize performance given more predicatable CPU load.

If you want plugin type of robustness, there are plenty of options available. If you think that user defined action would make sense, implement it instead as an nternal feature, and forward me a PR.
1
0
0

Jarkko Sakkinen

Edited yesterday
Caffeine Commander (ccd) is a terminal file manager written in C, based on non-blocking file I/O.

All I/O operations are asynchronous, and UI and CPU tasks share a single thread, making the most of the available resources :-) And this obviously minimizes context switch latency while at it.
1
0
4

Jarkko Sakkinen

With ccd I focus on to single thread implementation including I/O :-) Two threads is way too much...

And it enforces to amortize workoads and other good practices that are too easily bypassed by a thread pool.
0
0
0

Jarkko Sakkinen

There will be soon need for a book "LLMless cookbook" for kids so that they don't fuck their careers with misguided beliefs and fantasies.

One recipe could be "build your own stash with local repositories". It's not really about any "secret sauce" but more like less friction to do random experiments from which to learn from. It's losless compression of *your own memory* whereas neural network is lossful compression of LLM model + generated additional interference based on material fed (fuck that was complicated to phrase lol, sick layered)

For a person like me, LLM generated implementation is +1 variation of thing that I could have, and literally always also have written manually. This is for expanding search space of alternative ways to branch code for instance. We're looking for quality over quantity after all, aren't we?

There is one recent example where I did use an LLM agents successfully and in very planned, instructed and sandboxed manner. I did a huge file recovery operation that reconstructed a couple of lost Git repostories from ddrescue dumps of three different computers.

Third example is actually a bit obscure but for rootns patch set that I'm working on I use a bug I've found in claude code to make the agent go insane by removing cwd beneath it while being overstressed with "impossible" workload.

What these examples show is that since I have the craft under control, even the use of agents is very "tool-oriented". The non-tool oriented use would be OFC compensating my own shortcomings.

AI companies are throwing a generation of potentially great engineers under the bus. That's sad to watch happening.
0
0
2

Jarkko Sakkinen

Edited 2 days ago
I have now also syntax highlighted source code viewer in ccd. I stole that out from tree-sitter code of a small text editor project that never really got going.

My stash of local repos over the year really is like a super powerful LLM for me at least or could not be replaced with any of those :-)

Preloader will mean +1 thread, which again only uses non-blocking I/O.

That's really as much one should use at most. Context switches are expensive and IO is mostly just waiting from CPU's standpoint.

I think user space programs advertising the size of their thread pool are made by developers who really don't understand what they are doing TBH 🤷
0
0
0

LinkedIn Is Illegally Searching Your Computer. Microsoft is running one of the largest corporate espionage operations in modern history https://browsergate.eu/

Is there anything Microsoft is not doing these days?

6
11
0
To +1 the vaporware feel, I have to post occasionally about it :-) But it keeps me motivated when I write notes down.
0
0
1

Jarkko Sakkinen

Edited 3 days ago
The DAW project I found a path to reduce the current 100 KSLOC and it has about halved.

1. Reduce radically custom rendering by levering GSK of GTK4 and base on GTK4 for window creation etc.
2. Drop plugins from the main project and migrated deleted UI that they need to that project.

After week or two of repivoting now I have a lively 50 KSLOC base :-) It has strong non-portable Linux focus like Logic has macOS focus so this is not an issue. It will be totally designed-for-pipewire DAW.

I really don't start projects anymore that I don't eventually finish. This might take year or two but I just occasionally decide +1 step and move it forward.

Given AI copying trend you really don't want to push in-dev repos out there. I only publish stuff that I consider to be a usable version of something.
1
1
3

Jarkko Sakkinen

Edited 2 days ago
For caffeine command the only included themes are Catpuccin variations, as it fits to the brand :-)

It uses https://codeberg.org/jarkko/nippu to bundle the default themes. I hate dangling files at ../share.

Started to post about ccd because it suddenly starts to look like an app. Has been totally unintentional and off-topic project :-)

Powered by C.
0
0
2
Show older