Profile banner
Profile picture

L Break Into Program

@breakintoprogram.co.uk

Blog: http://www.breakintoprogram.co.uk YouTube: https://www.youtube.com/BreakIntoProgram Ko-fi: https://ko-fi.com/breakintoprogram Software developer & electronics dabbler. Restoring & programming vintage computers from Acorn Atom to ZX81.

created August 22, 2023

3,574 followers 1,525 following 9,510 posts

view profile on Bluesky

Posts

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

World of Illusion is supposed to be really good. That and James Pond.

2/9/2025, 10:04:59 AM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Seem to have gone to the other extreme these days. Spend a good few minutes each day playing hunt the hidden scrollbar.

2/9/2025, 8:12:22 AM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Hahaha! Indeed.

2/9/2025, 7:59:35 AM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Yeah, the Sharp CPU in the original is more like an 8080 than a Z80 so doesn’t have the index registers IX and IY or the alternate register set. Less suited for C than the Z80. But they’ve done it, and also the 6502, which is even less suited IMHO.

2/9/2025, 7:57:20 AM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Yeah, I normally use the winding method. The Elite data is stored differently with face normals. It's more an exercise in bloody mindedness at the moment. And recalling all the relevant vector maths from years ago like dot products.

1/9/2025, 10:18:52 PM | 3 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Hahaha!

1/9/2025, 10:14:02 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Incredible! I know from experience how limited the CPU is on the DMG compared to a stock Z80.

1/9/2025, 9:53:19 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Thanks to @markmoxon.bsky.social I * think * I understand why my backface culling routine is not quite working. I'd oversimplified my routine due to misunderstanding how the face normals worked. Shouldn't take long to fix. Job for tomorrow.

1/9/2025, 9:50:03 PM | 29 2 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Yeah, I would assume so. That's what I'm trying to write at the moment, the optimised library, not so much a game yet. Out of curiosity, does it work on the original Gameboy?

1/9/2025, 9:46:36 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Are you writing it mostly in C at the moment? There are obvious things I'm optimising in asm, like the line draw and using trig lookups. This is quite maths heavy, so coding in a high level language first does make a lot of sense.

1/9/2025, 9:41:00 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Happy Birthday!!

1/9/2025, 9:06:16 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Hahaha!

1/9/2025, 8:44:48 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Plus I've just fixed Mrs B's laminator by giving it a hard stare.

1/9/2025, 8:40:36 PM | 7 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I do really like this approach. Figuring out how the code should work in a high level language then optimising the bits that need speeding up works well with my brain. Occasionally in assembler I get stuck in the minutiae. That's the ex-8-bit games programmer in me I suppose.

1/9/2025, 8:34:57 PM | 3 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

And the corresponding C code now to rotate a point around 3 axis is much tighter. This in turn will be optimised into a single asm function at some point when I can be bothered.

Code snippet Point8_3D rotate3D(Point8_3D * p, Angle_3D * theta) { Point8_3D r1 = rotateX(*p, theta->x); Point8_3D r2 = rotateY(r1, theta->y); Point8_3D r3 = rotateZ(r2, theta->z); return r3; }
1/9/2025, 8:32:01 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Busy day being dad's taxi, dropping youngest off at a camp down Wrexham way. Then food and gym. Though this morning I did optimise the 3D rotation stuff so that it is now mostly in assembler. It's so much smaller and neater than the C generated code...

Code Snippet: ; extern Point8_3D rotateX(Point8_3D p, uint8_t a) __z88dk_callee; ; This is an optimised version of this C routine ; ; Point8_3D r = { ; p.x, ; fastCos(p.y, a) - fastSin(p.z, a), ; fastSin(p.y, a) + fastCos(p.z, a), ; }; ; return r; ; PUBLIC _rotateX _rotateX: POP HL ; Pop the return address POP IY ; Return data address POP BC ; C: p.x, B: p.y POP DE ; E: p.z, D: a PUSH HL ; Stack the return address LD (IY+0),C ; Set p.x ; LD B,B ; B: p.y LD C,E ; C: p.z CALL fastCMS LD (IY+1),A ; Set p.y CALL fastSPC LD (IY+2),A ; Set p.z RET
1/9/2025, 8:29:50 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

It's not too bad you know - there's some interest from the agencies re my skill set, and I'm doing some other stuff to fill the gaps. Plus it's nice to be a kept man for a change!

1/9/2025, 8:26:35 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Ah yes, nothing to report.

1/9/2025, 8:21:23 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Getting used to stack frames in z88dk this morning. I wanted to pass and return a struct (Point8 - 3 bytes). It kind of makes sense in a weird 'let's get C running on a Z80' kind of way.

Code snippet: ; extern Point8_3D rotateX(Point8_3D p, uint8_t a) __z88dk_callee; ; PUBLIC _rotateX _rotateX: POP IY ; Return function address POP HL ; Return data address POP BC ; C: p.x, B: p.y POP DE ; E: p.z, D: a PUSH HL ; Stack the return data address ; ; do something here ; POP HL ; The return data address LD (HL),0x44 ; X INC HL LD (HL),0x55 ; Y INC HL LD (HL),0x66 ; Z PUSH IY ; Restore stack RET
1/9/2025, 11:40:40 AM | 26 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Thank you! There’s more to come.

1/9/2025, 9:28:40 AM | 1 0 | View on Bluesky | view

Profile picture Mark Moxon (@markmoxon.bsky.social) reposted

I've just released the Elite Compendium Addendum for the BBC Micro B+. It contains two bonus versions of Elite for lucky owners of the B+, including musical BBC Master Elite for the B+128. See elite.bbcelite.com/hacks/elite_... for details. #retrogaming #retrocomputing #bbcmicro #8bit #elite

31/8/2025, 6:16:32 PM | 33 10 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

It is my favourite BASIC in all incarnations, so when I was asked by Bernardo to implement BASIC on the Cerberus, I picked it. And the Agon naturally followed.

1/9/2025, 6:08:07 AM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Funnily enough I'm writing Gnome Man's Sky.

31/8/2025, 10:13:40 PM | 7 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Scrubbed all references to . Am using my own fastSin and fastCos asm routines that use table lookups. Still plenty of room for improvement on speed yet this has helped me iron out a couple of bugs in the maths. There's still a glitch with the back-face culling, but it's the same glitch.

31/8/2025, 10:03:07 PM | 49 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Oh haha, yes I get that occasionally, and no problems.

31/8/2025, 9:58:31 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Just read your post again - I've never had issues debugging a SNA or NEX file. I use DeZog in Visual Studio Code to handle that, and ZEsarUX/CSpect as my emulators of choice.

31/8/2025, 8:54:02 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I'm building a NEX file.

31/8/2025, 8:29:35 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

It's sjasmplus (a Z80 assembler)

31/8/2025, 7:14:12 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Links for downloads on this page. I'd also recommend the SDL version for a more feature rich version.

31/8/2025, 3:42:07 PM | 7 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

There are console mode editions of BBC BASIC on a number of platforms. I used to use it regularly on the Tatung Einstein to create lookup tables for Spectrum and Amstrad games. Modern versions are available for Linux, Windows and even MacOS. So why break the habit of a lifetime...

Writing a BBC BASIC sin table generator in Visual Studio Code's terminal tab.
31/8/2025, 3:41:03 PM | 23 4 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I'm normally up for an episode like this and there are a handful of episodes in the Star Trek universe that deal with the crew finding ancient Earth tech floating about. This episode is just the worst, mostly because of the stereotyping.

31/8/2025, 1:35:01 PM | 6 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Got the ST:NG episode "Up the Long Ladder" on in the background. Completely forgot that Colm Meaney was in this episode.

The Yes/No Lady meme, but flipped Yes:
31/8/2025, 1:25:23 PM | 14 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Not specifically, yet. The model was available online and is instantly recognisable.

31/8/2025, 1:08:14 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Wow!

31/8/2025, 11:26:22 AM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

That picture would be perfect if the adjacent kite was a bowl of petunias.

31/8/2025, 10:13:30 AM | 4 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Usual Sunday shenanigans, though the chores were done yesterday so just coffee and crossword this morning.

31/8/2025, 9:55:39 AM | 7 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

That's really quite impressive. Handy if you've got limited desk space or are a mobile worker.

31/8/2025, 9:53:41 AM | 3 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Be that guy!

30/8/2025, 8:31:53 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I know how to greet people, order beer, and apologise, in several European languages.

30/8/2025, 8:01:54 PM | 6 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

I’m that guy, and if I’m not that guy, I probably know a guy who is.

30/8/2025, 7:51:39 PM | 14 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Went for a nice five mile stroll with the local ramblers society around Tatton Park this morning. Wish I’d taken my big camera.

A stag in woodland.
30/8/2025, 7:36:32 PM | 23 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Japanese vehicles are in my experience pretty much bulletproof. We’ve had many a Toyota that have just sailed through MOTs year on year. And my Honda CB600 bike was pretty much zero maintenance.

30/8/2025, 6:01:59 PM | 2 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Awesome!!

30/8/2025, 5:59:30 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Thank you! Still a way to go with the pushing too!!

30/8/2025, 5:58:10 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

There’s a gunsmith in our village.

30/8/2025, 4:53:43 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Wish I’d have known that earlier. The Previa that this replaced did nearly 150,000 miles before a gasket blew and took the engine out.

30/8/2025, 4:17:54 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I think Vauxhall send a letter of sympathy.

30/8/2025, 4:16:09 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Hahaha!

30/8/2025, 4:14:20 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Doesn’t seem that long ago it was an uncouth youth.

My car odometer displaying the mileage 80085
30/8/2025, 3:49:42 PM | 10 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I am indeed, though tend to avoid Facebook these days.

30/8/2025, 3:48:03 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Better get my Spectrum Next out to see this running on real hardware…

30/8/2025, 3:46:41 PM | 11 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

It’s been a long road, getting from there to here…

My car odometer reading 99,999 miles My car odometer reading 100,000 miles.
30/8/2025, 3:31:24 PM | 23 1 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

A minor visual improvement this afternoon - ten minutes of coding and I've almost got hidden line removal working. Still some glitches to work through.

30/8/2025, 2:48:04 PM | 56 6 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Yeah, I sometimes make a note on my phone. And sometimes the note still makes sense in the morning.

30/8/2025, 2:24:12 PM | 2 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

I'm good at solving problems in my sleep. Remember the graphics glitch I was having last night with the rotating Cobra ship from Elite that I temporarily bodged by using floats? Turns out I can use an assembler function I wrote for the clipping to do it much quicker.

30/8/2025, 2:15:04 PM | 31 2 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Nice!

30/8/2025, 8:22:51 AM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Thank you!

30/8/2025, 8:22:30 AM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Forgot to mention last night that the model data was sourced from this website, courtesy of @markmoxon.bsky.social. Mark’s done a sterling job documenting the inner workings of Elite at the source level. Well worth a visit even if you don’t understand assembly language.

30/8/2025, 7:34:48 AM | 42 4 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Okay folks, there was a quick fix - use a long in the perspective calculation and leave the rotation as int.

29/8/2025, 10:47:38 PM | 6 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Ah nuts. I know that cafe well. This is the one, isn't it (not my photo).

Photo of the Island Garden Cafe
29/8/2025, 10:46:14 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I can switch the offending code to use floats, but as you can see, the rotation slows down somewhat. Regardless, the z88dk maths libraries are doing a sterling job there. That's done partly using floats, and sin and cos from maths.h. It'll be much faster once I've given it the asm treatment.

29/8/2025, 10:13:24 PM | 15 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Hehehe!

29/8/2025, 10:10:02 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Now its time to supercharge the 3D maths.

29/8/2025, 10:06:01 PM | 2 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I think the trick is to keep printing. I usually do all my labels in one long strip and cut with scissors later. Mine gives the option to not feed once its printed one thing. As soon as you do a feed, it leaves a large gap for the cutter.

29/8/2025, 10:05:27 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Got sick of seeing the cube. Figured it was time for an upgrade. The glitch is a maths error in the rotation, an overflow. That'll be fixed when I convert it to the optimised assembler lookup table version. Also need to do hidden face culling. The Elite data is stored differently. Easily done still.

29/8/2025, 10:02:41 PM | 52 3 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Ah, I've got a Brother that'll take them. Might get some in for Mrs B for her teaching job. Also I know what you mean about tape wastage on them.

29/8/2025, 9:58:58 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Oh wow! Those are fabulous!!

29/8/2025, 9:23:48 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Not Pen Island then?

29/8/2025, 6:54:51 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

That's already done (in an earlier thread). Just need to get the filled triangles clipped. Then, get a decent model in. Getting a bit fed up staring at that old cube.

29/8/2025, 5:20:17 PM | 3 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

It's coming along nicely :-)

29/8/2025, 5:18:13 PM | 4 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Thanks - I'll check it out later.

29/8/2025, 2:15:45 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Thank you :-)

29/8/2025, 1:28:25 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Cheers mate!

29/8/2025, 1:06:13 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Oh there's hope I'll get more back then from HMRC beforehand.

29/8/2025, 12:43:07 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

That was incredibly satisfying.

29/8/2025, 12:09:11 PM | 4 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Did you get tax back then whilst getting repayments? I got hammered a bit on my payment in leu of notice due to three months going out in one tax month. Be nice to get some of that back before I do a tax return.

29/8/2025, 12:04:32 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Yeah I’m going to sign on today.

29/8/2025, 11:49:11 AM | 2 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Final payment from work and my P45 arrived this morning. End of an era. The whole process I had to go through made me feel a bit grumpy. Still, onwards and upwards.

29/8/2025, 11:18:51 AM | 17 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

This is now more or less at the stage I got the 3D engine at originally on the 48K Spectrum. Practically game ready. I never finished it. Though it was part of my portfolio that got me my first job at Software Creations.

29/8/2025, 11:07:52 AM | 14 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I’ve got this! Bought it for my eldest as a gift from his baby sister when she was born. He was really into the Teletubbies when he was a toddler. He played it on my first gen PS2. Much loved, probably got the rest of the case somewhere…

Front of the damaged case (missing the front and sleeve) showing the game disk. Back of the game case, thankfully intact.
29/8/2025, 10:58:15 AM | 3 1 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

The bug, by the way, was a schoolboy error. A stackframe imbalance caused by me incorrectly declaring a parameter type as uint8_t (a byte) rather than int_t (a word). The single byte difference caused the stack frame to move by one byte every time the function was called. Mucho crasho.

29/8/2025, 10:44:48 AM | 8 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Couldn't sleep last night, head full of ideas, so did a late coding session converting the clipLine routine from C to asm. There was a bug I couldn't fix, so slept on it and identified it straight away this morning. I can now start on clipping filled triangles now clipLine is in the asm domain.

29/8/2025, 10:41:17 AM | 45 3 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I did give it a go a couple of years ago and was quite impressed with the natural language parsing of ChatGPT itself. However, as I said at the end of the video, it has no understanding of what it is doing and it looks like nothing has changed since. My reaction today would be more critical.

29/8/2025, 10:33:09 AM | 8 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

Ah grand, a new @curiousmarc.bsky.social video has dropped.

29/8/2025, 10:24:43 AM | 9 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I've forgotten more about programming than they've learned.

29/8/2025, 9:53:22 AM | 2 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

This older coder is most certainly not down with so called “vibe coding”.

29/8/2025, 9:28:21 AM | 31 0 | View on Bluesky | view

Profile picture Flippin' 'eck, Tucker! (@losttourist.social.chatty.monster.ap.brid.gy) reposted

BBC Breakfast this morning had a long segment about the 30th anniversary of Windows 95. So what vintage computer did they put in the studio as a handy prop? #windows95

Some Windows 95 and MSDOS software boxes around a Macintosh SE computer
29/8/2025, 7:17:07 AM | 1197 568 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Well, everything else sucked in my day today, but the goggles were an unmitigated success.

28/8/2025, 10:55:40 PM | 10 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Hahaha!

28/8/2025, 4:31:12 PM | 2 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Might end up going down that route.

28/8/2025, 4:29:30 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

In other news, got fed up of my eyes being red and sore after long swimming sessions, so got some goggles.

Me wearing goggles
28/8/2025, 4:28:47 PM | 11 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

It’s all a bit dispiriting that’s all.

28/8/2025, 4:24:11 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Early days yet. Have applied for a couple of interesting jobs that are less speculative.

28/8/2025, 4:01:56 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

First job rejection today. It was a bit speculative, a job in the DWP, so not surprised. Got some automated feedback from them which may come in useful. Applied for a couple of other jobs.

28/8/2025, 3:57:38 PM | 27 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Could not agree more with that, or him.

28/8/2025, 2:45:24 PM | 1 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk)

A good morning spent chatting with the youngest about art and this came up. Not come across chindōgu before, yet got it immediately.

28/8/2025, 2:39:54 PM | 7 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

It was by means of illustration, an extension of an earlier diagram. I'm not adding any horizontal edges in code, and mention earlier in the thread that clipping top and bottom is trivial.

28/8/2025, 1:58:40 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

It's quite a fun problem to solve. Took me ages to work out an efficient method from first principles many years ago, pre-internet.

28/8/2025, 1:24:57 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

I can't remember exactly how I wrote the code, though remember capping it at a handful of iterations if X didn't reach 0, and used the Y (in the example given) as a good estimate.

28/8/2025, 12:46:14 PM | 0 0 | View on Bluesky | view

Profile picture L Break Into Program (@breakintoprogram.co.uk) reply parent

Probably. I think I can fudge it due to the way I'm pre-rendering the triangles.

28/8/2025, 12:39:39 PM | 0 0 | View on Bluesky | view