annotate win95kg.c @ 133:0d8eabdd12ab default tip

create: write H:MM:SS timestamps, add option to fill with gaussian-blur instead of black many albums are longer than one hour so writing H:MM:SS is a necessity. if anything there will just be verbose info that isn't important for my use-case. however the gaussian-blur is simply broken. It works, and it plays locally just fine, but YouTube in particular elongates the video to fit the full width. I'm not entirely sure why it does this, but it makes it useless and ugly.
author Paper <paper@tflc.us>
date Sat, 03 Jan 2026 20:25:38 -0500
parents 96b9e046f45d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
64
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
1 /**
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
2 * Windows 95 Keygen - 4/23/2022
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
3 * By Paper
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
4 * a "rewrite" of my C++ app to vanilla C
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
5 * truth be told, most of it was C already
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
6 *
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
7 * skaven is awesome!!
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
8 **/
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
9 #include <stdio.h>
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
10 #include <stdlib.h>
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
11 #include <math.h>
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
12 #include <time.h>
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
13 #include <string.h>
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
14 #define CONCAT_INTS(x, y) \
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
15 x * pow(10, log10(y)+1) + y;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
16
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
17 int get_sum(int n) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
18 int sum;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
19 for (sum = 0; n > 0; sum += n % 10, n /= 10); // copied this from google. sorry not sorry
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
20 return sum;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
21 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
22
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
23 int win95_nt4_prefix() {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
24 int num = rand() % 1000;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
25 while ((num == 333) || (num == 444) || (num == 555) || (num == 666) || (num == 777) || (num == 888) || (num == 999) || ((num % 3) != 0)) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
26 num = num + 1;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
27 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
28 return num;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
29 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
30
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
31 int win95_suffix() {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
32 int first_digits, last_digit, second_segment = 5;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
33 while (second_segment % 7 != 0) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
34 first_digits = rand() % 1000000;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
35 last_digit = rand() % 10;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
36 while ((last_digit == 0) || (last_digit >= 8)) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
37 last_digit = rand() % 10;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
38 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
39 second_segment = CONCAT_INTS(first_digits, last_digit);
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
40 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
41 return second_segment;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
42 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
43
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
44 int office_prefix() {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
45 int new_site = rand() % 1000;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
46 int ez_pwned = new_site % 10 + 1;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
47 while (ez_pwned >= 10) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
48 ez_pwned = ez_pwned - 10;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
49 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
50 return CONCAT_INTS(new_site, ez_pwned);
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
51 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
52
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
53 int oem_prefix() {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
54 int years[] = {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
55 95,
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
56 96,
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
57 97,
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
58 98,
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
59 99,
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
60 00,
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
61 01,
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
62 02,
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
63 03
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
64 };
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
65 return CONCAT_INTS(((rand() % 366) + 1), years[rand() % 9]);
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
66 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
67
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
68 int oem_middle() {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
69 int first_digits, last_digit, second_segment, sum = 1;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
70 while (sum % 7 != 0) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
71 sum = 0;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
72 first_digits = rand() % 10000;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
73 last_digit = rand() % 10;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
74 while ((last_digit == 0) || (last_digit >= 8)) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
75 last_digit = rand() % 10;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
76 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
77 second_segment = CONCAT_INTS(first_digits, last_digit);
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
78 get_sum(second_segment);
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
79 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
80 return second_segment;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
81 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
82
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
83 int main(int argc, char* argv[]) {
92
96b9e046f45d sranddev() for macs
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents: 64
diff changeset
84 #ifndef __APPLE__
64
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
85 srand((unsigned) time(NULL)); // magic rand() stuff :p
92
96b9e046f45d sranddev() for macs
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents: 64
diff changeset
86 #else
96b9e046f45d sranddev() for macs
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents: 64
diff changeset
87 sranddev();
96b9e046f45d sranddev() for macs
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents: 64
diff changeset
88 #endif
64
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
89 if (argc >= 2) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
90 if (strcmp(argv[1], "--office") == 0) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
91 printf("%04d-%07d", office_prefix(), win95_suffix());
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
92 return 0;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
93 } else if (strcmp(argv[1], "--oem") == 0) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
94 printf("%05d-OEM-%07d-%05d", oem_prefix(), oem_middle(), (rand() % 100000));
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
95 return 0;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
96 } else if (strcmp(argv[1], "--normal") == 0) {
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
97 printf("%03d-%07d", win95_nt4_prefix(), win95_suffix());
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
98 return 0;
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
99 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
100 }
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
101 printf("usage: %s [--normal] [--oem] [--office]", argv[0]);
1508aee998df Add Windows 95 Keygen GUI
Paper <mrpapersonic@gmail.com>
parents:
diff changeset
102 return 0;
92
96b9e046f45d sranddev() for macs
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents: 64
diff changeset
103 }