mailto: blog -at- heyrick -dot- eu

The A-Team

Bah buh bah, du-du-duh...

I have been sort-of watching The A-Team on Legend (or is it Legend Xtra?). Children today are so soft - Legend(Xtra) put a "Some scenes may be unsuitable for younger children" disclaimer prior to the broadcast. In the '80s this was a staple of Saturday afternoon television, along with Knight Rider and AirWolf and that short-lived one that was like Knight Rider only a bike... Street Hawk?
Okay, I just looked it up and that's the title. Street Hawk. So how the hell can I remember the name of a rather preposterous television series from the mid eighties, but I can't tell you what I've eaten this week?

Anyway, the A-Team is far cheesier than I remember it being. Maybe certain things just went over the head of tweenie-Rick? But something I noticed this time that has happened enough to be a trope is that they would set up a trap for the bad guys, or prepare for falling into the trap laid by the bad guys and flipping it, and somebody would be like "quick! they'll be here any minute!"...
...and this will be followed by a whole build-something montage involving copious amounts of welding and cutting metal, because nothing says "AWESOME!" quite like metalwork. You know, things that would take normal people days to design and build, these guys can throw together in a few minutes with the power of teamwork or maybe just oxygen and acetylene in exactly the right combination?

This does, however, lead to things becoming a bit formulaic:

  • Somebody gets harassed by The Bad Guys.
  • That somebody is trying to contact The A-Team to help them.
  • They will end up speaking to a person, who is usually a member of the team in disguise to check that they're legit. For a team in hiding in a city of 3 million (city) or 7½ million (county), they're pretty easy to find. (note: population estimate from circa 1985)
  • They will then be invited to take a ride in the team's custom and very distinctive van - remember again, these people are in hiding.
  • The team will come up with some elaborate plan to flush out The Bad Guys with paper thin disguises, or in the case of Face, no disguise at all most of the time.
  • There will be tension between BA and Murdoch - often tricking BA into flying, and Murdoch flies aircraft like butterflies fly. Why go in a straight line from point A to point B when you can barrel-roll a helicopter?
  • The Bad Guys will vow revenge and to deal with the situation once and for all.
  • The team will perform copious amounts of welding and metalwork. This is especially egregious if The Bad Guys manage to capture the team, and trap them in a big warehouse filled with all of the things they need to make an armoured tank out of a milk float.
  • Big finale with ridiculous amounts of bullets fired and nobody seems to be especially hurt. Rather than exploding heads or exploding intestines, it's the cars that explode. People mostly seem to fall off of tall structures into conveniently placed bags of soft landing material just below them.
  • The Bad Guys go away defeated and/or get their arses hauled into the judicial system. They never seem to be able to say "known wanted fugitives set us up".
  • Rinse and repeat with different people and a slightly different story the following episode.

The A-Team's van as imagined by an AI.
Ask an AI to make a picture to avoid having to do a screengrab and...

So, I have watched a few episodes. Now I think I've seen the entire series. ☺

 

A bad night

Early Saturday morning I was woken just before four by a big rumble of thunder. So I got up and made a hot chocolate and sat in the dark in the living room with the window open absentmindedly reading TV Tropes, in case there was heavy rain (as was forecast) or the thunderstorm came close enough I'd have to consider turning some things or everything off.

Security camera screenshot of heavy rain
Oh, the rain.

When I looked up, it was light, just after six. So I walked to the end of my part of the access lane (just beyond the pond) and removed the rope across the road (in case the post person came), fed Anna, then went back to bed.

 

ADHD workbook

I sent off for an ADHD workbook because, well, it was cheap and with it being sent to a locker rather than my letterbox, the delivery was also cheap.

It arrived early Saturday morning. I decided to get up to go fetch it. I planned to leave at ten and be back about eleven. Ten came and went. So did eleven. Too much procrastination, too much "ugh, don't wanna".
So I got up at half eleven, threw a tea into me, and set off. I had a walk around Lidl and go myself two boxes of assorted biscuits where the first box was nearly seven euros and the second box was half price. Sadly, this is how it is these days - biscuits are horrifically expensive.

Two boxes of Delacre Tea Time biscuits
Tea Time biscuits - absolutely will accompany tea.

Actually, speaking of which, I popped into McDo to get a little chicken wrap (which is basically a nugget in a...torilla? The flat round dough-thing that gets folded up) to nibble on the way home. I noticed that a single cheeseburger now costs €4. What the actual....? For donkey's years that was the price of a Happy Meal® - and I didn't dare look at how much those cost these days. Or the cut-price McFirst menu, that used to be something like €5,50. I think the regular hamburger was €2,75 so... you're paying €1,25 for a flat bit of yellow gunk trying to pass itself off as cheese?

Anyway, here's the workbook.

An ADHD workbook
An ADHD workbook.

Interestingly there is absolutely no indication of author, publisher, ISBN, or anything that you'd expect from a book. I have also noticed various typography and spelling errors, so maybe this is a self-publish? Though, you'd have thought whoever did it would want to promote themselves?
That being said, this came from China. For all we know, this is a self-help PDF for printing at home that somebody lifted and turned into a book?

Inside...

Pages from an ADHD workbook
Distraction and Thoughts tracker.

I'm just going to guess that you're not actually supposed to fill this in, it's more a set of templates that one photocopies.
Why I say this is because a "Distraction tracker" with only fifteen entries? I could easily fill that in a day, indeed I had to restart counting how many entries there were because I got distracted.
As for the "Thoughts tracker"? I could fill half of that with the random crap that has flown through my mind in the duration of writing this sentence. That's the thing, you see, my brain is a bit like an early multitasking system like RISC OS or Windows 3 in that there are [are those cherries out back edible?] numerous concurrent thoughts happening {should I get up and turn the fan on?}, and (oh, give me tea) each one will [I ought to look online to see if I can match them to anything] come to the forefront for a short time (a British spree) to be thought {I'm a little bit too warm, but not enough to want to do anything about it} about (Yorkshire brew or fancy free). And as I am sitting [or would it be safe to just pop one in my mouth to see if it tastes okay?] here trying to write a coherent sentence (We'll sip and chat) there's a lot of other crap going (Let's make it three) on in {or am I just procrastinating because I can't be bothered to get up?} my head [I ought to look to see if there are any poisonous things that look like cherries] at the {sit on your arse all day, you'll hurt - get up once in a while - oh look your tea cup is empty} same time (Nothing's better than a spot of tea).

Did you follow all four things? I used different bracket types to help you.
Well, that's what it's like in my head most of the time.
Oddly enough, many thoughts do seem to end up as some variation of "go put the kettle on".

There is a Mental Health challenge.

Inside an ADHD workbook
My mental health is already challenged.

We start with three things I'm grateful for? Easy: I have a home, I have a job, and I had an amazing mom.

Day 3 asks for positive affirmations about myself? Umm... I'm alive? I think affirmations are dumb... Yes, Rick, you bloody rock! (nope) You're absolutely awesome! (<giggles>), You can do anything! (oh yeah? can I give birth?)

Day 4. I have twelve whole hours away from electronic devices. Seven hours whilst working, and five hours whilst sleeping. Does that count?

Day 7, write my thoughts at the end of the day - that's sort of what this blog is. The random rubbish that I think about shared with unknown people and, honestly, it mystifies me why people read it but, hey, maybe they enjoy offbeat British humour?

Day 14 says create a playlist... well given that my preferred genre is gothic symphonic rock/metal, I can't help but think that my idea of positive songs might be other people's idea of nightmare fuel. I'm sorry, I don't do love songs (unless one of them is (un)dead - hello Blutengel! ☺).

Day 21 - ten minutes visualising a positive future? Like, have you seen the news lately? We're screwed. And don't say "it was worse way back when with the Cold War and duck-and-cover" because now the environment wants us gone. It has far more weapons in its arsenal, much greater power, and it can't be reasoned with.
You know you have failed as a species when the planet that you call home is fed up with you.

Day 23 is sorted, I know I'm imperfect and I'm okay with it. If I was perfect I'd be the central edifice of your belief system, and I think I would really suck as a god, I'm just not enough of an arsehole to pull off the whole "god" thing.

Day 25, one doesn't "pick up" a hobby in a day. And when one has the attention span of a dead gnat, it makes it all the harder. Especially alone where the only motivation comes from within, and my primary motivation is basically "oh f'k it, go make some tea instead" which isn't especially motivating now, is it?

Day 27, my way of organising my digital space is when my storage is full, buy a replacement.

Day 28? BURN IT WITH FIRE!!! I would love to say social media can go to hell, but it's already there and is dragging the rest of us towards.

And the final photo, this:

Inside an ADHD workbook
Self assignment and Personal reflection charts.

Challenges of the day? Going to work.
Achievements of the day? Going to work.
What part of my job brings me fulfilment? Pay day.

The washing up team consists of three people on each team (morning/afternoon) and I'm a plus-one in between. Well, on Thursday one of them had a sore arm and another had a thumb that didn't want to move.
On Friday, neither of them turned up for work. So I had to abandon some of my work in order to do some of their work. I did make my boss' underling (who asked me to do so) put it in writing to use when people start whinging about how I'm not doing my job.
Yeah, you're right. I'm not doing my job. I'm doing other people's jobs.

You know what? A lot of bits of me hurt. A few weeks back my ribs hurt so much I couldn't sleep because lying on my side (as I normally do) was painful enough to wake me. I don't know what triggered it, but it took about a week for the left side to fix itself, and twice as long for the right (the side I usually lie on). My thumb hurts and is stiff. My foot hurts. My neck hurts. My back has hurt for several decades now. Do I run to the doctor each time? No, I get up, go to work, and if it bothers me enough I take 500mg of paracetamol. But I don't like doing that as I think the taste of water is absolutely disgusting, so I end up crunching the pill and - let's be honest - they taste pretty bad too (but not as bad as water). But I go to work anyway. Unless I'm unable to stay conscious, blood comes out of places it shouldn't, or a part of me has fallen off, I go to work. Because people are depending on me being there.

 

AI music fixed

Nothing new today, but I have fixed all of the songs by reencoding them in Audacity, trimming off the gibberish if it was necessary. They are all now MP3s.

The first, Ode to Linguine, was created by Donna, the rest by Suno. All using the free tier, which means the AI companies retain copyright (which may or may not be worth a damn given that some jurisdictions have ruled that things created entirely by a machine are ineligible for copyright protection...) and as such are not licenced for commercial use, but can be used personally. That means, download, listen, enjoy. If you think a friend will like, share.
But don't put it on your site/channel/whatever if it is monetised in any way as that counts as commercial.

Okay, here are the new versions:

Ode to Lignuine

Because it's my comfort food.

Ode_to_Linguine_fixed.mp3
Runtime 3:30; male vocals; 5.0MiB.

 

Echoes of the Duck

Why not rock out over a bath duck?
The 28 second bit at the end has been shifted to the beginning as it sounded more like an intro.

Echoes_of_the_Duck_fixed.mp3
Runtime 3:59; female vocals; 5.4MiB.

 

Cosmic Symphony

Rocks as hard as Carl Sagan did. Please don't ask "who?", you'll upset me.

Cosmic_Symphony_fixed.mp3
Runtime 2:42; male vocals; 3.6MiB.

 

Requiem for a Shadowed Purr

If you have ever lost a furry friend, this one's for you.

Requiem_for_a_Shadowed_Purr_fixed.mp3
Runtime 3:17; female vocals; 4.3MiB.

 

Claws of Fire

If you're used to Power Metal, then the idea of a little kitten fighting a massive dragon...and winning will not be a surprise. Dragons? Legends? Epic battles? Unlikely heroes? That's what this genre is made of...

Claws_of_Fire_fixed.mp3
Runtime 2:43; multiple male vocals; 3.7MiB.

 

Divided Shadows

This is a rather gothic song about how polarised everything is, how people would rather hurt each other than try to compromise. Piano, violin, and brush drum.

Divided_Shadows_fixed.mp3
Runtime 2:47; female vocals; 3.3MiB.

 

Morning Croissant

A lovely whimsical piano song about the joy of a croissant. This is my favourite AI song so far.

Morning_Croissant_fixed.mp3
Runtime 2:30; female vocals; 3.0MiB.

 

Raindrops and Reveries

A calm reflective song about the rain, with a live performance ambience.

Raindrops_and_Reveries_fixed.mp3
Runtime 2:48; female vocals; 3.4MiB.

 

A Spot of Tea

And, of course, it's me. So of course tea is going to feature at some point. This is a kind of cheesy perky pop song about, well, tea. Of course it is.
My second favourite.

A_Spot_of_Tea_fixed.mp3
Runtime 2:41; female vocals; 3.3MB.

 

And, since I can...

All of these as a zip file

Aren't you glad you read to the end first? ☺

Ricks_AI_songs_20250720.zip
9 tracks, 26 minutes; MP3s in zip, 34.9MiB.

 

The language that just won't give up

You know what's older then the internet (as we know it), has outlived floppy discs, four decades of "progress", an entire generation of programmers who think coding started with Python, and just won't wave the white flag and call it a day?

BBC BASIC.

Yes, that BBC BASIC. The one where DIM A(10) actually gives you eleven elements so it'll work if you count like a programmer (0 to 9) and it'll still work if you count like a human (1 to 10).

Acorn users are implicitly tied to BBC BASIC, a BASIC interpreter written by Sophie Wilson back in 1981 when Acorn revamped their forthcoming Proton (the successor to the Acorn Atom) to be what became the infamous BBC Microcomputer.

BBC as in the British broadcaster? What does that have to do with BASIC? Or Acorn?
Well, back in 1981 the BBC launched their Computer Literacy Project to try to get children interested in computing. It was the beginning of the home computer boom (Spectrum, Beeb, VIC-20, Oric-1, Dragon-32, etc). The BBC had an insane list of requirements that they wanted in a computer. They were expecting a Z80 based machine running CP/M but when presented with the awesomeness of the prototype Proton running a 6502 and custom OS, they had no choice but to go with that given that it exceeded their requirements in almost every way.
The Proton received the BBC stamp of approval, was branded with the BBC name, and it became the BBC Microcomputer model A and model B. Very few people had a model A.
Part of the requirement was compatibility with Microsoft BASIC, which BBC BASIC technically achieved, but Sophie being Sophie threw in some extra things like procedural programming and a complete in-line assembler.
Procedural programming was, sadly, mostly lost in a lot of materials written for home computers of the era, such as the famous Osborne programming books. These contained an absolute rat's nest of GOSUB and GOTO branches, because in order to be compatible with lesser machines (everything that wasn't a BBC Micro) they had to use a subset of BASIC.
And the inline assembler meant that one could write some things in assembler, typically this was done for speed, by embedding processor mnemonics into the program (like LDX #12, TXA, and so on). The method that pretty much every other machine offered was POKE or something like that where you placed certain values directly into memory. But converting instructions into what needed to be shoved into memory? That was on you.
Anyway, we're getting sidetracked here with an aside inside and aside...yes, it's that BBC, and yes there's a connection.

Now, those of you of a certain age, those British Gen-Xers that were free-range children and skilled BMXers might remember typing 10 PRINT "ARSEHOLE! " and 20 GOTO 10 into the demonstration computer sitting on a bench in their local Currys. Or maybe wandering into their school's computer room and entering the same, only adding in the name of a hated teacher, and then legging it before anybody knew who did it. And if they were lucky and had a halfway decent teacher, they too could write some code in BBC BASIC to bend the machine to their will...and draw a circle on the screen.

It's 2025. We have AI bots that could write a better article than this one. Just above, nine songs created entirely by machine. We have cars that sort-of almost drive themselves if you don't mind the odd dead child. And we have websites that somehow require two gigabytes and fifty different fetches just to plop a company logo into the middle of the screen.
And yet, somehow, inexplicably, BBC BASIC is not only still here, it is thriving in weird little nooks and crannies of our electronic reality.

Back to 1981. As mentioned, it was created to teach kids how to code and to give teachers more things to have anxiety over - especially given as it was extremely common to have a classroom full of BBC Micro's networked with each other, and some enterprising children might just be smart enough to not only notice that the teacher utterly detests Depeche Mode, but to get the classroom full of machines to play one of their songs, with each note being played by a different machine and no machine appearing to be in control of it all. (no, that wasn't me, but I'm in awe of the person that pulled that off)
This was an era when documentation came in binders and thick books (such as the BBC Micro's User Manual), when a crash meant that you killed the entire machine - but that's okay as the OS is in ROM and loads from reboot in about a second or two. It was tight, it was surprisingly fast, and it was actually pretty competent.

BBC BASIC didn't care for modern ideas of readability or maintainability. The shorter the variable name, the faster it worked. You had line numbers. You made your choices. And if you were fancy, you used RENUMBER 1,1 and hoped you never needed to insert anything ever again. Who needs syntax highlighting when you have MODE 7? If you were a real masochist you'd use MODE 0 with all of its colourful sparklies as you were pushing the limits of what an analogue PAL signal could cope with.

Unlike some other "educational" BASICs jumping on the bandwagon that could just about print your name in pretty colours, restricting variables to eight characters, and digitally peeing when you expected 3/2 to return 1.5 instead of 1, BBC BASIC instead handed you the goods.

P% = code%
[ OPT 3
  LDA #ASC(":")
  JSR &FFEE
  LDA #ASC("-")
  JSR &FFEE
  LDA #ASC(")")
  JSR &FFEE
  JSR &FFE7
]
Yes, you could drop raw 6502 code right into BASIC programs. No warnings, no safety net. You can read and write arbitrary memory and crash the machine faster than a Speccy with a wobbly ram pack. In fact, you were encouraged to do this, to eke out every cycle of performance from the machine.

Then there's the structured programming. The only time we ever used GOSUB was in code copied from books written for other machines. We had FN and PROC (functions returning a value, procedures not) and FOR...NEXT and REPEAT...UNTIL and IF...THEN...ELSE.... Later versions of BASIC added WHILE...ENDWHILE, CASE...ENDCASE and ENDIF to allow IF clauses to span multiple lines.
With PAGE here and HIMEM there, you might have had about 24K to play with running in MODE 7. That's not space for data, that's space for everything. And yet you managed to throw together a functional address book application over the course of a rainy weekend just to prove to your teacher that you weren't a total loser...somehow missing the fact that everybody else watched The Chart Show and then played games and such together while you...stared at glowing phosphor dots.
And if you were lucky, you would have it all saved to disc before running it, because when it died having sent utter gibberish to OSBYTE, you'd then have to restart, reload, and spend far too long peering intently at arcane hieroglyphics trying to work out where it went so wrong.

And, of course, BBC BASIC didn't offer PEEK and POKE. Oh no, those were far too pedestrian. Instead you had ? to mean a byte, ! to mean a word, and $ to mean a string. You simply suffixed these to an address, added an offset, and then either read or wrote. To/from anywhere that was a legal address. It was on you not to screw up.

It was like giving a screwdriver set to a ten year old and saying "go nuts".

Which, of course, they did.

And now they're in their fifties and still writing games and applications and serious stuff in BBC BASIC.

One could argue, thanks in large part to a combination of Richard Russell (many versions) and Dave Daniels (Brandy BASIC), that BBC BASIC may have been ported to more systems than Doom. RISC OS? Duh, obviously. Windows? Yup. Android? Sure. DOS? Of course. My PVR has a version of Brandy compiled for it. You can run it in a web browser. And there's probably a toaster somewhere in Yorkshire that is running BBC BASIC.

But it's missing so many modern conveniences, so why won't it just die and let something modern take over?
Well, it's because it works. It starts up near instantly, it is remarkably small, and it doesn't need a hundred dependencies and a Docker container and a half dozen NPM packages just to add two numbers together. You don't get stuck in dependency hell. You simply write code and it runs. Immediately. If there's a problem, it usually aborts with a concise message relating exactly to the problem that was encountered. You don't get screenfuls of gibberish warnings and a backtrace that looks like something that crawled out of the pages of a Lovecraft story.

While it doesn't have many of the things that we expect these days - structures with named entities, objects and inheritance etc (note: Richard's BASIC has added some of this) and its concept of "local" variables is weird and different to almost everything else on the planet... it can run a raycaster in a screenful of code, deal with music using realtime timers, simulate physics, and teach kids to do all of that without their brains turning into mushy oatmeal.
No, BBC BASIC isn't trendy. It doesn't have a mascot. It doesn't have a billion-dollar startup (about to be bought by Meta) offering a nifty "BASIC-as-a-Service" in the cloud. It's just not fashionable. But oddly enough, it's still better structured that most of the JavaScript frameworks that underpin the mess that passes as the modern web.

There's a surprisingly large number of people still using it too. Whether tinkering away on some retro forum or making a GUI program to scratch a personal itch, or maybe just refusing to move on. It's half nostalgia and familiarity, and half being old enough and cynical enough not to believe that something is automatically better because it is new. People talk about Rust as being some sort of holy grail of programming. Well, once upon a time they said the same sorts of things about Java.
These people, they aren't some dusty long-bearded "legacy dev" that never made it in the modern world, they are the digital druids that understand the difference between a byte and a word, they can read hex, and debug a memory leak using a hunch and a hard stare.

BBC BASIC is old. It's weird. It relies upon you writing ENDIF instead of expecting you to indent correctly. BASIC can be clearly laid out, or it can fill every character of its allowable line length using the colon character to compress multiple lines into one. But it is still here, quietly doing stuff, and able to be learned (the basics at least (see what I did there?)) in a weekend as the language only has about fifty-odd keywords (depends upon variant) that describe exactly what they do, it doesn't need reference material the size of a DVD box set. If there was a "Teach yourself BBC BASIC in 21 days" book, that would be more than enough to learn BASIC and write a simple window manager or platform game...in BASIC.

But most of all, BBC BASIC just doesn't die because it doesn't need to.
Because, sometimes, you don't need the cloud, blockchain, a microservices architecture, or a list of interacting dependencies that would terrify a beginner.
Sometimes, you just need:

10 MODE 7
20 PRINT "BBC BASIC LIVES! ";
30 GOTO 20
No semicolons. No imports. No linter. No mercy.

BBC BASIC will outlive JavaScript. It'll outlive you. And when the final Raspberry Pi capable of running RISC OS crumbles into tin-whisker ruin, there will be a Beeb in somebody's attic with a dodgy PSU that sounds like a haunted kettle ready to boot in a heartbeat with its distinctive burr-beep and offer the immortal > prompt.

Drawing a circle in BASIC the hard way
Drawing a circle, the brute force way.

 

 

Your comments:

Please note that while I check this page every so often, I am not able to control what users write; therefore I disclaim all liability for unpleasant and/or infringing and/or defamatory material. Undesired content will be removed as soon as it is noticed. By leaving a comment, you agree not to post material that is illegal or in bad taste, and you should be aware that the time and your IP address are both recorded, should it be necessary to find out who you are. Oh, and don't bother trying to inline HTML. I'm not that stupid! ☺
As of February 2025, commenting is no longer available to UK residents, following the implementation of the vague and overly broad Online Safety Act. You must tick the box below to verify that you are not a UK resident, and you expressly agree if you are in fact a UK resident that you will indemnify me (Richard Murray), as well as the person maintaining my site (Rob O'Donnell), the hosting providers, and so on. It's a shitty law, complain to your MP.
It's not that I don't want to hear from my British friends, it's because your country makes stupid laws.

 
You can now follow comment additions with the comment RSS feed. This is distinct from the b.log RSS feed, so you can subscribe to one or both as you wish.

jgh, 21st July 2025, 02:17
PDP11 BBC BASIC? Yup. :) I've just translated my PDP11 ANSI VDU driver into Z80 to give colours on "plain" CP/M BBC BASIC. :) 
Now I just need to get an Arduino to test it.
jgh, 21st July 2025, 02:21
I've just switched to my site to count them, and BBC BASIC has been ported to at least 40 platforms and at least 11 processors. 
C Ferris, 25th July 2025, 08:33
AI Draw a circle :-/
Rick, 25th July 2025, 17:07
Colin: The reply will be an endless "I'm busy" spinner because the AI no longer allows picture creation on the free tier, but it won't tell you that, it'll just fail to do it.

Add a comment (v0.12) [help?] . . . try the comment feed!
Your name
Your email (optional)
Validation Are you real? Please type 72329 backwards.
UK resident
Your comment
French flagSpanish flagJapanese flag
Calendar
«   July 2025   »
MonTueWedThuFriSatSun
 1245
78111213
16171819
212223242527
293031   

(Felicity? Marte? Find out!)

Last 5 entries

List all b.log entries

Return to the site index

Geekery
 
Alphabetical:

Search

Search Rick's b.log!

PS: Don't try to be clever.
It's a simple substring match.

Etc...

Last read at 13:57 on 2025/12/14.

QR code


Valid HTML 4.01 Transitional
Valid CSS
Valid RSS 2.0

 

© 2025 Rick Murray
This web page is licenced for your personal, private, non-commercial use only. No automated processing by advertising systems is permitted.
RIPA notice: No consent is given for interception of page transmission.

 

Have you noticed the watermarks on pictures?
Next entry - 2025/07/26
Return to top of page