# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 7
# self = https://watcher.sour.is/conv/uhvlayq
Well, it’s not pretty yet, but I’ve got a very basic GUI version of dusage going:

https://movq.de/v/9b1c7016f6/MVI_7449.MOV.mp4

To me, it’s just super cool that I’m able to write programs for OS/2. 😎 That operating system will always hold a special place in my heart, I guess. It ran on my Model 80 back then (and maybe even the Model 30, but I'm not 100% sure anymore) and thus a lot of my earliest memories about using computers are OS/2 related. (And DOS related, of course. I had a dual boot setup on the Model 80, believe it or not …)

Anyway, writing that little program got much easier after I’ve found this page which contains a lot of valuable information:

https://komh.github.io/os2books/

This is a collection of OS/2 books by a person who’s apparently quite active in the realms of ArcaOS (one of OS/2’s “descendants”).
Well, it’s not pretty yet, but I’ve got a very basic GUI version of dusage going:

https://movq.de/v/9b1c7016f6/MVI_7449.MOV.mp4

To me, it’s just super cool that I’m able to write programs for OS/2. 😎 That operating system will always hold a special place in my heart, I guess. It ran on my Model 80 back then (and maybe even the Model 30, but I'm not 100% sure anymore) and thus a lot of my earliest memories about using computers are OS/2 related. (And DOS related, of course. I had a dual boot setup on the Model 80, believe it or not …)

Anyway, writing that little program got much easier after I’ve found this page which contains a lot of valuable information:

https://komh.github.io/os2books/

This is a collection of OS/2 books by a person who’s apparently quite active in the realms of ArcaOS (one of OS/2’s “descendants”).
Well, it’s not pretty yet, but I’ve got a very basic GUI version of dusage going:

https://movq.de/v/9b1c7016f6/MVI_7449.MOV.mp4

To me, it’s just super cool that I’m able to write programs for OS/2. 😎 That operating system will always hold a special place in my heart, I guess. It ran on my Model 80 back then (and maybe even the Model 30, but I'm not 100% sure anymore) and thus a lot of my earliest memories about using computers are OS/2 related. (And DOS related, of course. I had a dual boot setup on the Model 80, believe it or not …)

Anyway, writing that little program got much easier after I’ve found this page which contains a lot of valuable information:

https://komh.github.io/os2books/

This is a collection of OS/2 books by a person who’s apparently quite active in the realms of ArcaOS (one of OS/2’s “descendants”).
@movq That's cool! So that dusage scroll buffer is part of the GUI, not "just" a terminal?
@lyse Yep, the scrolling is part of the GUI (responding to scrollbar events, translating coordinates, nasty stuff like that). It’s pretty brute force right now because it does a full redraw for each scroll event – a faster version would be to use WinScrollWindow() which scrolls/moves existing window content and then you only draw the new parts. Maybe I’ll do that in a later version. 😅
@lyse Yep, the scrolling is part of the GUI (responding to scrollbar events, translating coordinates, nasty stuff like that). It’s pretty brute force right now because it does a full redraw for each scroll event – a faster version would be to use WinScrollWindow() which scrolls/moves existing window content and then you only draw the new parts. Maybe I’ll do that in a later version. 😅
@lyse Yep, the scrolling is part of the GUI (responding to scrollbar events, translating coordinates, nasty stuff like that). It’s pretty brute force right now because it does a full redraw for each scroll event – a faster version would be to use WinScrollWindow() which scrolls/moves existing window content and then you only draw the new parts. Maybe I’ll do that in a later version. 😅