Thursday, 31 August 2023

Z88 serial before and after OZ upgrade

Detailing my further adventures with the Z88, both before and after getting the Rakewell Flash Card/OZ 4.7.1 upgrade.

Just a little note first. I changed the batteries first time. To my joy, the capacitor held the charge long enough and no memory was erased.

But it did behave weirdly at first. The screen refused to light, and when I got it running the system began to complain about BAT LOW fairly soon. But this was a false alarm, the computer began behaving normally and the battery alarm was removed.

Serial port

As with pretty much everything about Z88, this is already rather well documented in a number of places and I'll just relate my own experience.

Here I'm first discussing the Z88 without the OS upgrades, then with the OS upgrade that improves the serial performance and has Xmodem and Ymodem protocols.

This is how I soldered the cables, and it seemed to work.

Nominally the standard Z88 can handle 9600 and faster, but for receiving data the Z88 cannot handle the speed and presumable the buffer becomes overrun very quickly. I had to add delay of at least 5 milliseconds after each character to get the transfer to work.

Furthermore, without any protocols, binary bytes have to be sent as [ESC]B [High][Low] so [ESC]B1F means sending 0x1F over. This means sending 4 times the data you mean to send! 

The ultimate test was sending the binary of the Jet Set Willy conversion over, called jsw.c. This is 19388 bytes long. Using the binary method, the overall data sent is 77552 bytes! Using the reliable 5 millisecond delay gives 387.76 seconds of "loading" time, nearly 7 minutes.

The speed can be improved slightly by sending ASCII 32-127 as direct characters, and 0-31 and 128-255 in this binary mode. However you'd expect less than 50% of data in a binary file to fall within the 32-127 range. For example the jsw.c file has 12941 bytes to send in binary mode and only 6447 direct characters. So the data-to-send is reduced from 77552 to 58211 which is still quite ridiculous for a 20K file.

JSW has to scroll or squish on the Z88

Later, with my upgraded Z88 I was accidentally using only 1 millisecond delay for transferring files in 9600 baud rate to the Z88, and it worked well enough.

All this became rather academic as the OZ 4.7 has built-in X/Y modem protocols, which are both faster and more reliable.

With Xmodem you have to type in the filename to be received, and the file lengths may be mis-adjusted to multiples of block length. With Ymodem both these problems go away, and also I don't have to bother about the "4 bytes to send 1 byte" dilemma as all is transferred in binary.

Receiving the 19388 bytes of jsw.c took a little under 30 seconds in 9600 baud. I got closer to 15+ seconds using 19200. I did experience some hiccups in getting the Z88 to catch the file in the first place, though.


Getty

I used getty to give login access to the Linux computer through the USB-COM adapter.

Initially this looked fine as the login and password prompts appeared and I was in.

Again, using 9600 on the basic Z88, any commands that produced more text, for example, listing the folder using ls, or using "more" to display a plain text file, would overrun the buffer.

Upgrading a Linux remotely

So, switching to 2400.

sudo /sbin/agetty 2400 ttyUSB0 vt52

...yielded better results. Keys like TAB don't seem to work and, what would you use for Control? Apparently nothing, although these should be alterable from the receiving end.

Trying getty with the Upgraded OZ 4.7 did not behave better, 9600 was still unusable and I had to revert to 2400. This was a little surprising, not sure why this should be.


The upgrade itself

The Rakewell Flash/512K RAM card fits into the Z88 card slot. The Flash portion can be semi-permanently written and the content won't be destroyed even if the batteries run out. There's a bunch of RAM so it's unlikely I need to keep the other cards in.

Importantly, this card also holds the operating system version 4.7, without having to do any changes to the insides of the Z88.

The physical cartridge is a 3D print which is fine, although not as smooth as the original Cambridge cards. When it is mounted I'm not going to see it anyway.

There are now multiple keyboard settings, which makes sense as there's no point in compiling the ROM for different Z88 keyboard. So I can choose Finnish keyboard. The funny thing is the keyboard layout choice also affects language in date displays etc., it's a nice bonus but really ought to be separate.

New functions relate to the flash card, as it's now possible to haul files from the flash card over to the RAM, but also "burn" files to the flash, just as the EPROM cards supposedly worked. Again, deleting the files will not actually remove them but mark them away from the flash card list. So, eventually the space will run out and it may need reformatting. Luckily this can be done from the system itself, but I'll discuss it more if that day arrives.

I can also appreciate that files can be peeked with a hex/ASCII viewer.

BBC BASIC has been given that graphics patch built-in. Use MODE 1 to activate, the screen is split into text portion and a 256 x 64 "graphic window". 

It's not very fast

There's a bundle of applications and files already on the Flash card, including unzip/zip applications, ROM/EPROM digging and utilities for memory monitoring and disassembly. Some of the material is zipped, and it gives a kind of early 1990s feeling, delving into the text and materials an waiting for zips to unfold.

But if a plain Atari ST was slow at unzipping, then obviously a slightly compromised Z80 chip is going to be even slower! Luckily the files are not very large.

Sidenote: Chezz

One thing I wanted to try is the Chess program, converted from ZX Spectrum Cyrus chess. Previously there was no way to run it, because it was not possible to "install" software from RAM. 

It's chess alright

This was a huge process, as on the Linux side I compiled mpm-master, z88card-master, mthtoken-master, and then z88chess-master to get the chezz.app, chezz.ap0  and chezz.ap1 files. Then I transferred them via the serial to the Z88, selected the .app in Filer and used the <>INS command to install the application. After this it will be listed in the Index.

When listed alongside other applications it can be run. The screen is small and I'm forced to use the arrow keys to enter my moves. Fortunately the sound can be turned off! Playing a couple of fast games, I both won and lost to level 2.

Crashing?

After using the card, I experienced PipeDream crashing, even without doing much else with the computer after the hard reset. It happens rather often, and this is a little sad as I encountered nothing like that before, and I mostly used PipeDream before the upgrade.

The Z88 just becomes unresponsive, no keys work and I have to do a soft reset. The cursor keeps flashing, and if the beep is on the key presses cease to beep. The flashing cursor might not be indicative of anything really, it might be even a part of the LCD features.

I have no way to make really sure if the card is faulty or the computer has a problem which only becomes apparent with the card.

I resorted to using Diary app for random typing, which did eventually crash too, but far less often than with PD.

In Summary

I had good fun exploring the new capabilities of the system and the card contents. Much of it is interest only to developers and tinkerers, but the basic premise of Z88 is already greatly improved with the better comms section. I'm also hearing the OZ 5.0 might be arriving, overhauling many a thing in the process.

Sunday, 30 July 2023

Lancess Priya C64

I made a 3D-ish shoot'em up game for the Commodore 64. At the moment, the file can be downloaded from CSDb. Grab a joystick and play.

The following is mostly about the background inspiration for the game.


Star Wars Arcade 1983

The Star Wars arcade game by Atari is maybe the greatest arcade experience I ever had.

I'd like to reminisce how I poured coins endlessly into the machine, but in truth I likely played the real coin-op only a handful of times.

And maybe for the better, as the home version on C64 and Amiga showed the game in itself doesn't have that much longevity. It's perfect for arcade, an audio-visual-physical experience leaving you hungry for more.

I can pinpoint my likely first encounter with the game to July/August in 1984, when a cabinet was present at the Space 2000 (Avaruus 2000) exhibition in Dipoli building, Espoo, Finland.

At that time I didn't quite get the 3D perspective and probably the colorful Zaxxon next to it made a bigger impression on me. I'm even unsure if I personally played Star Wars at that occasion. Later I experienced it both as upright and cockpit versions in amusement parks.

Commodore 64 versions

Domark/Vektor Graphics: Star Wars, Space battle and navigating the surface

There's a brave conversion made for the Commodore 64 by Vektor Graphics and published by Domark in 1988. 

Although this version is nearly complete, it is also slow on the C64. Using a smoothly moving sprite for the crosshair does mitigate it somewhat. Some 8-bit computers lacked this advantage, but the BBC Micro version looks rather fast, although it has other problems.

Domark/Vektor Graphics: Star Wars trench run

The space battle is faster, but I also notice the enemy ships rarely come very close, and the action is often obfuscated by the ever-growing mass of fireballs.

The tower scene is very impressive, the ship rolls and there are many towers and bunkers approaching. There's also slowdown at times. The tunnel works very well, it has a lot going on and yet it isn't that slow.

The earlier Parker Brothers' version of the arcade game made around 1984 is also well known among Commodore 64 users.

Parker Brothers' Star Wars: Tower scene and Trench Run

The Parker game is not very impressive, but it is fast and the tunnel section is nice, it has lot of catwalks and a three dimensional projection of sorts. That portion isn't especially fast, though.

The tower scene does not have ship roll and the towers chug along in steps, not well synced to the dot effects on the ground. The on-screen player ship elements don't move at all, further adding to the stiff feel of the game.

The space battle is especially lazy, there is no attempt at all to have the TIE fighters in different depths. It is still nice to play. The Atari 2600 version is in some ways a bigger achievement, considering the limitations of that platform.

Parker Brothers' Star Wars: Space Battle


Lancess Priya

I began asking myself if there was a third path, something that was faster than proper vectors yet would not look so silly as the sprite-based enemies.

The result, Lancess Priya, is more of an "inspired" mini-game and not any kind of attempt at full conversion. All my games tend to be quite short, partly because of necessity and secondly because I usually prefer short games when I go vintage (Blue Max, Rambo, Saboteur, Bruce Lee...)

The game lacks many elements you'd find in the Star Wars game, and adds some that weren't really there. For example, here you have a direct control the ship even in the space battle, and you can dodge the fireballs more easily as they are not "stuck" to the screen position.

Lancess Priya: Space battle and the Trench Scene

I could say I'm using the the Parker Brothers' version as a springboard, building up from the compromises present in that game. Here the lasers aren't full beams, but small bolts, and pre-calculated character graphics instead of full vectors are used to draw the enemy fighters.

The number of objects and lines has been reduced to the minimum where I could still get it work at 1/2 frame rate, also using the full frame rate reticle trick from the Domark game.

It's tricky to get a screenshot that would make the game look very interesting, but it does look a little better in motion, I think!

Lancess Priya: The tower scene


Some technical notes

One day I might make a more thorough technical breakdown of the development process, here I only give a brief explanation to why the game looks like it does.

I toyed with the idea of making a PETSCII character-based game, but after a couple of doodles of TIE fighter frames I felt it would not be the route. The idea of using pre-stored animation frames did stay, though.

The PETSCII experiments gravitated towards using the 2x2 blocks for more motion accuracy, which made me ask whether it would make more sense to use self-defined characters.

So, this new game would use a pseudo-bitmap display built from characters, but not the ones included in the PETSCII set. Splitting one character into 8 cells gives me an 80x100 resolution.

This is quarter the amount of pixels compared to 160x200 resolution, and the benefit with a character mode is that it uses less memory and can be faster. Animation frames can use less memory than sprites for a comparable screen area. Line graphics aren't enormously faster than I guess bitmap drawing would be, probably because I can't write fast routines.

One byte defines a physical screen area that would need 8 bytes in a bitmap mode, this also means I can use 1000 bytes to define the full screen instead of 8000 bytes of bitmap. Or 2K versus 16K in double-buffering.

There are 256 characters ranging from empty to full, based on the above bit pattern.

More technically, there are some occasions where left/right can be adjusted by ROL/ROR instructions, and vertical shifting isn't that expensive either.

I decided the routine should work on 25fps if possible, or it would not be worth it. I worked with 1/3 framerate in Digiloi (2018) , but that was full color 2D character graphics.

So, the end result works on a double buffered character display with 80x100 effective resolution.

Thursday, 20 July 2023

Cambridge Computer Z88

Cambridge Z88

The mid-1980s: After the QL computer and the C5 electric vehicle debacle, the world waited with bated breath. What would Sir Clive Sinclair do next? Would a portable Super-Spectrum emerge? As it turned out, Sinclair and the brand was sold to Amstrad and any interesting developments got the axe. Or did they...

Cambridge Z88 from 1987 was Sir Clive's last hurrah in the computer markets. Well, obviously Clive had little to do with the functionalities of the computer, here credited to Protechnic Ltd., Colton Software Ltd., and Operating Systems Ltd. BBC Basic is courtesy of R.T. Russell (Originally by Sophie Wilson). 

Still, the computer continues Clive's focus towards smaller and portable computers and is supposed to have its roots in the Sinclair Pandora laptop concept.

For a short while, Z88 might have been a success in its own niche, but far from the kind of hit Clive would have needed at that point. What might have been game changing in 1984, was less so in 1988. At least Amstrad came up with their Z80-based NC100 as late as 1992!

Perhaps not the strongest slogan...

I saw pictures of the Z88 in the computer magazines around 1987–1988 and would have been excited to have a go at it.

Cambridge Computer's friendly approach to the Speccy press invited a curious kind of brand loyalty. This might have backfired a little, as the magazines were showing healthy scepticism towards the usual Sinclair hype and promises. Still, the most loyal Z88 fans were likely to be Spectrum aficionados.

By the way, magazines had apparently received a note from Amstrad dictating that this new machine from Clive should not be referred as a "Sinclair", a matter cheekily addressed in Sinclair User #61.

The Finnish press was positive. At least MikroBITTI 11/1988 described it as a "dream micro" and felt a Z80 chip was sufficient for typing on the go. It's interesting that the importer was PCI-Data (Commodore), not Hedengren (Sinclair).

Now, the definitely Sinclair-style appearance and the self-contained nature of Z88 makes it attractive to me. BASIC, spreadsheets and word processing, what else do you need in 2023?

Swedish version.

First impressions

Physically the computer fits into an A4 footprint. It is reminiscent of some of the sketches from Alan Kay's Dynabook concept, except the screen is not nearly as tall. I know a plastic protective cover exists, it would have been nice to have.

Overall, there's a little nod to the QL styling, it's a Rick Dickinson design again and as a physical object it is very attractive. All the flaps, buttons and openings are precise, meticulously placed. Because of the lightness it does give a somewhat flimsy impression, I wouldn't bend the plastic case too much.

The transparent, numbered door over the card slots is an especially juicy little design detail, hidden at a corner where it's barely visible.

The keyboard was at first a cause for alarm, as it harks back to Sinclair's rubbery explorations. Worry not, typing is much better than on the Spectrum, perhaps even better than the QL. The keys are extremely silent and responsive enough, a tad too sensitive though.

The RS-232 port, fortunately not telephone-style

The space key feels a little weird, as it does not depress entirely but just squishes down at the spot you touch. Instead of Control and Alt keys, there are the original Diamond and Square keys.

The power is turned on and off by pressing both the SHIFT keys. And it's not a hard power on/off, the computer goes into standby and you can continue working from the same spot after turning it on.

A few times I was able to accidentally press both SHIFTs when trying to get my fingers around typing those silly :RAM.1/ device identifiers. Remember to set the default device from Control Panel.

The four AA batteries supposedly give 20 hours active use, or about a year in standby. This was one of the most doubted specs in the contemporary press, and Rakewell's site lists more accurate numbers. The real standby battery life is more like few months, depending on the battery type and RAM configuration. 

It's sensible to use the PSU and when the batteries need changing it better be connected. There's a small window of time in which the batteries can be changed without a PSU, but who knows the state of the capacitor after 35 years.

PSU connector, tiny reset switch and the contrast adjuster

The display is a surprisingly okay LCD-type screen, but without a backlight it's rather sensitive to lighting conditions. The resolution is 640*64, which is good enough for editing 8 lines of text.

But thinking about it, the display has less pixels than a ZX Spectrum! (256*192=49152 versus 640*64=40960) The pixels come in three intensities, though.

The CPU is a low-power Z80 variant, which at 3.2768 MHz should be a tiny bit slower than the Speccy.

There are three slots for RAM/ROM/EPROM cards. My Z88 fortunately came with three 128K RAM expansions. This gives a decent 384K extra memory on top of the measly 32K built-in, although one extra 128K might have been enough for me. Apparently the computer is really crippled if there's no extra memory present.

Two ROM/RAM slots and the EPROM/ROM/RAM slot, behind a transparent door.

Obviously the Z80 chip can't handle more than 64K directly, so there's a memory manager that seamlessly banks in memory.

The RAM has to be powered, which is a potential problem. If you remove one of the cards, the Z88 will become unresponsive and needs to be soft reset. Doing this will obviously empty the current memory and any suspended applications.

However, when removing card 3 the files "saved" in card 1 were still preserved. Using the reset key with the card door open will hard reset the computer and all the RAM card contents.

One of the ports takes in an EPROM cartridge, which can be used for storing data more permanently. Technically, only ROM cards can be used to add new applications, but later developments have made it possible to run apps from RAM. From around 2000–2010 there have been Flash memory cartridges for permanent storage instead of the EPROM solution.

A 128K RAM Cartridge

The cards are cute and remind me of Microdrive cassettes, although bigger and with no tape at sight. From the other end you can see an edge connector.

There's a fold-out stand in the bottom of the Z88, something I didn't discover until few hours of use.

OZ, PipeDream, BBC BASIC, apps

There's a plethora of tiny functions and apps built inside the 128K ROM. The computer has BASIC and PipeDream, a hybrid word processing/spreadsheet/database package. There's a calculator, diary, VT-52 terminal and a serial importer/exporter app. The Filer can be used for managing stored files and provides an interesting way of executing text files as key-command scripts.

Using INDEX key you can enter the app menu at any time and choose an app. If there are already instances of apps launched, they will be listed at the right side of the menu as "suspended activities". So I can continue a BASIC project or text editing exactly from where I left it the last time.

Some of the built-in apps

The system is not as graphical as the menus would make it appear at first. Some of the option and control panel screens are messy, but fortunately don't have many items in them anyway. When selecting files within apps, you may be prompted to type in the filename, with no assists provided. 

There's a HELP key, but apart from PipeDream it doesn't provide much information. Removing programs from the suspended activities list is fun: You have to type KILL after pressing the diamond key.

The Z80 chip chugs along slowly, so the menus aren't especially fast and neither is PipeDream the main software package. In QL style, the font is 6x8 rather than 8x8 to make more text fit.

I was tempted to write this blog post using PipeDream, but after sketching some paragraphs I gave up. I found I could type in fast enough, but making any changes to the existing text is a little too cumbersome. Maybe another time.

The peculiarities and compromises of the editor often arise from the needs of the integrated spreadsheet functionality, line splitting and moving between lines doesn't work exactly like in a modern text editor. Still, for a 1987 tiny portable computer it is quite an impressive package.

The software suite and the OS become better the more keyboard shortcuts you learn. Just as I've saved a text file, I can jump over to the RS-232, transmit it, and then press ESC to get back. Most of the important shortcuts for text editing are listed below the screen and this really is helpful. 

The lack of rows on screen is slightly alleviated by the overview map at the right side of the screen with one character represented by one pixel. This is the earliest editor where I've seen this, it's quite common in modern code editors like Sublime Text.

PipeDream's handy map

Moving around using TAB and shift-TAB, you can insert "expressions" into the positions and have the software calculate sums etc. Elsewhere you can just continue typing text without being limited to the cells.

The calculator is the most visual function in the device. It's clumsy and simple, but does have the virtue of being available even if you are in another program, by using [SQUARE]R. The clock and calendar can be invoked in a similar manner. Together with the suspended task switching, it gives a tiny sliver of sophistication without multi-tasking.

Instead of Sinclair BASIC, there's the BBC Basic, which seems a little funny considering how Sinclair and Acorn used to be in competition. The BBC dialect is pretty famous for its structuring and it even has an inline assembler. 

The manual also provides an interesting hack to use the Filer "CLI execute" function to tokenize ASCII files by first opening the BASIC and then virtually typing rest of the plain text file contents in as keypresses. Put AUTO as part of the macro and it doesn't even need line numbers. Ingenious or kludgy? At least this means PipeDream can be used for writing program listings, as BBC Basic can use named procedures.

The "CLI execute" can also be invoked through Basic, so a command can launch another app and type in commands there. The freedom given to the user is really mind-boggling, and even if you don't want BASIC or assembler, PipeDream is quite versatile in itself.

A BOOT.CLI can be used but on the non-upgraded Z88, this sadly only works from an EPROM. This could, for example, make the computer boot into BASIC after reset. However, seeing as the computer is either on or in standby, the most sensible use for the boot file is to manage preferences after reset.

I experienced a considerable slowdown at one time, especially after playing with these CLI execute functions. Typing with PipeDream was no longer comfortable, even if I had cleared all internal RAM of files and KILLed all unnecessary apps. I reset the computer and all was fine again. Perhaps there was some garbage management problem.

The BASIC has no graphics commands, I guess because it would be wasteful to hold a pixel buffer. I see the author of BBC Basic has created a patch that adds the graphics commands, though.

There are more recent versions of the operating system, done by enthusiasts after Cambridge Computer shut down. Some of the tiny problems I encountered might be fixed by upgrading the Z88.

Colton Software still makes PipeDream, not for the Z88 mind you!


A few thoughts at this point

Much like with the Sinclair QL, the Z88 felt a little iffy at first but I became more and more intrigued with the platform. The computer invites learning to use it better, finding shortcuts and tricks as you go along.

The Sinclair QL already provided a word processing and spreadsheet suite, but the execution was marred by hardware decisions. In a way Z88 continues this fixation but doesn't have similar problems.

This focus on business productivity means that many cool things are left out, such as graphics or sound. There's no mouse, but a computer like this does not really need one.

There's an estimate of some 60000+ units made.

One can't really blame Cambridge Computer for not succeeding, as far as I know no-one really scored it big with these small form factor computers in the 1980s. Typing on the go was a niche thing and buyers more likely put their money into more powerful computers, rather than tinier computers. Although 6 million TRS-80 Model 100 units sold, if true, is impressive. 

I could compare my tiny 8-bit computers Canon X-07, Atari Portfolio and the Z88. It's possible that because of the huge keyboard and the comprehensive feature list, the Z88 beats the others in terms of usefulness and features for the 2020s. Obviously Atari is the smallest of the trio, but without any programming language built-in, the fun factor is lower. I guess without extra memory Z88 would be limping too, so the comparison is not so straightforward.

Traveling silently

I might eventually look inside, if only to peep at the capacitors and any signs of dust or grime. I postponed this as it looks like a couple of screws are under the rubber feet and one is under the serial number label. The LCD and its ribbon are also notoriously fickle.


Serial transfer

I quickly built an RS-232 adapter cable for my USB-COM device, and it worked well enough. One brainfart had to happen though, using the wrong gender at the Z88 end of the cable. Well, gender-changer to the rescue. 

I can already say that sending data from Z88 at 9600 rate is ok, but it is hopeless at receiving at this speed.

Beam me up

Minicom was sufficient to test the connection.

If the device is called ttyUSB0 on Linux, then:

minicom -D /dev/ttyUSB0

I then set minicom to 9600, 8N1 (Parity none).

At the Z88 end, I launch the Control Panel (Square+S), set Parity None and Xon/Xoff to No.

Then I can use the VT-52 terminal in Z88 to send and receive characters and the Import/Export app to transmit and receive files.

With some more work I was able to store some of my first PipeDream jottings for historical purposes. I already feel more safe about resetting the Z88.


Some links:

Crash! magazine and Simon Goodwin on Z88: https://www.crashonline.org.uk/39/z88.htm

Rakewell has kept the name alive over the years: http://www.rakewell.com/z88/z88.shtml

More resources: https://cambridgez88.jira.com/wiki/spaces/welcome/overview?mode=global

Pictures of the insides at Old Crap: https://oldcrap.org/2019/10/28/cambridge-z88/

Saturday, 15 July 2023

Shortening the kickbike

One of the reasons for buying this particular model was it looked like it could be modified easily.

Previously, I have already removed the wooden deck addition and shortened the handlebars. Now I had something bolder in mind.

I have been thinking of two ideas. One was to remove the "wings" at the side of the deck, possibly reducing some weight.

The other idea was to make the deck shorter, both to reduce a little weight and improve the maneuverability (hopefully). This seemed more interesting, and I was a little worried removing the wings might compromise the strength of the box and make it a little too narrow.

I had suspected the outer case could hold inside a relatively large "inner case", but it turned out the part that goes in is much smaller than I thought.

Sketch, not to scale

There are 4 bolts on top, 4 at the bottom, and then 2 at the sides.

Obviously one of the side bolts had to be gloriously stuck, so I had to waste time in removing it. After ruining the hex, I realized I could file the bolt into a more rectangular shape and use a spanner to turn it.

After some nudging, the block connecting the stem to the chassis falls out. The portion that goes inside is only 27 millimeters deep, and the shape is irregular. It is quite hefty.

The connecting part

I could have taken better photographs, but maybe the opportunity will yet arise.

Then began the process of measuring and deciding how much to cut away. Peeking inside, I could see there's virtually nothing at the front 14cm part of the compartment.

I eventually chose 6cm as a suitable amount. There is a hatch at the bottom of the chassis, and if I cut for example 10cm, the hatch edge would be rather close to the front. The other thing to worry is the 28mm radius cable hole in the side.

The 6cm should be significant, but this also leaves some empty space inside the box.

Not all the space is used up.

I was a little lazy and traced the lines around the box using a vernier caliper adjusted to 6cm.

After that, I started sawing with the hacksaw. This is a boring job and I split it into two sessions for two different days. Together it took more than an hour with some pauses.

I'm not very skilled with the hacksaw, but I managed to do it accurate enough. Patience is key, otherwise it's easy to start doing things too hastily, resulting in a mess.

Removing 6cm from the front...

The case is some sort of aluminum alloy, which is quite soft to cut and drill. 

Only afterwards it occurred to me the process could be generating some fine grain aluminum dust, apart from the stuff I could obviously see.

One thing to look when cutting a profile like this is to have an eye at where the other part of the saw is moving. While focusing on the actual cut, the saw might be stealthily ruining another part of the cut.

The part, cut loose

Compared to sawing, the drilling was quite easy and fast. I took the measures from the original piece, and just transferred these over to the desired positions. 

I used 2mm drill for making pilot holes, then an 8mm for the actual sizes. I used ridiculously low speeds here, probably only a few revolutions per second.

Drilling new holes

The original holes were not perfectly round, especially the side holes are more like very short routing lines. I just hope there isn't a really precise logic behind that, possibly just a result of using an automatic router.


The results

I believe shortening the deck improved the drive-ability of the kickbike. It shouldn't be a huge difference, but I think turning tighter corners is a little less precarious.

The distance between the wheels is now shorter than the Voi, which is something of an accident as I had previously measured the distances incorrectly. It might have been nice if the wheels have the same distance. Well, the subjective experience should be more important than the measures.

But did I get rid of any weight?

Carrying the bulk might be slightly handier because of the smaller dimensions, but it's such a small difference it cannot be really felt as weight difference.

I'm going quantitative

The cut part really was one of the lightest things I could remove, so the effect on that front wasn't that great. The cut aluminum part weighed only ~245 grams. Taken together with the plastics it's a little closer to 370 grams.


To put things into perspective, what things weigh:

The 6cm aluminum alloy part: 244g
The 6cm aluminum alloy part and the plastic parts together: 372g
The plastic parts: 134g
Wallet: 160g
Smartphone: 300g (!)
All the keys in my pockets: 145g
Bike helmet: 323g

The kitchen scale measures fluctuate a few grams so the values are not very accurate.

At least the removed material compensates for wearing the helmet!

It's obvious I could lose more by leaving my phone, wallet and keys home.

Measuring the cut out block against the 244g weight pointed to a material density of 2500kg/m3.

Apparently aluminum alloy density isn't likely to be lower than 2660kg/m3, I might be persuaded to believe my measurements are off. The piece has holes, the scale isn't accurate, and so on.

As a ballpark estimate, the central chassis metal part does not weigh more than 3kg. (The battery and other stuff inside are probably heavier.)

I've yet to measure the weight of the entire kickbike (Probably around 28kg originally) so I'm not sure what kind of percentages the removals represent. Also, taken together with the driver's body weight it means very little in the entire system. 

The next step is to cover the openings. I could even cut some more material and try to fit the indicator lights back the way they were.


Wednesday, 21 June 2023

Sony WH-1000XM5

From outside

Took the plunge and bought noise-canceling (NC) headphones. I've had them for a while now so thought about commenting on the experience.

One of the city sub-artery roads is just outside the window from where I sit, and it can get a little wearisome at times. With these headphones on, this traffic noise is cancelled almost entirely. 

I could even sit with the headphones on without any music and not hear much of the outside world. But it's obviously better when using at least some music or sounds, as otherwise I start to pay attention to even tiniest hissing or the occasional minor pop/click coming from the headphones itself.

Yes, if you are entirely allergic to the idea the headphones might produce some additional sound, and find yourself actively looking for such sounds, then it might be a deal-breaker. But I've never really noticed it when playing music or watching movies.

From inside

Almost needless to say, with the NC I can't hear minor things like computer fan noise, air conditioning or the washing machine from few rooms apart. Singing practice in the apartment is not cancelled though, but it becomes subdued and louder music from the headphones will cover it.

If the headphones are in a passive (non-powered) mode, there's audio but it's not very good to be honest. The active mode will deplete the battery but I've found the need to recharge about once a week even with daily use. The charging is quite fast.

The ambient mode allows outside noises through, but I haven't tested it much. Likewise, testing the invisible microphone hasn't been a high priority as I am more comfortable with the headset style in video conferences, a real mic gives me more confidence. 

The power and ambience buttons.

I press a tiny button for a while to activate the headphones and the noise canceling feature, it does become second nature eventually.

There's a "touch/gestural" interface which could accidentally activate Bluetooth-only features, however I don't use the BT. By cupping the headphone I can also let sound come through temporarily, which I also had to learn not to do by accident.

As the headphones try to be context sensitive, the ambient mode may turn on automatically, such as when I sneeze loudly (or swear aloud). I guess the app would allow me to turn this automation entirely.

Yes, some of the features of can only be changed through an Android/Iphone app, which was initially annoying but it doesn't really need to be touched afterwards. There's an equalizer I've not really touched.

I made the Bluetooth pairing through the app initially, which was a mistake and I had to reset the headphones as this connection no longer worked. Then I made the BT pair properly through the phone settings, and only afterwards went to the app. After this there have been no problems connecting the phone to the app.

The convenient carry case has separate compartments for the headphones and cables.

I also had an opportunity to try this on an airplane while watching a film. Can't pretend I'm not hearing the airplane noise, but it's still quite effective.

I thought about comparing it to being in a car, but this would be misleading. The headphones not only cancels some of the noise but somehow "flattens" it. The difference is quite strong when I remove the headphones in a noisy environment such as the airplane. It's like returning to a three-dimensional world of sound.

The sound is good enough for my music tastes (electronic and some rock/pop). I'm not sure if Sony's reputation for headphones is the best ever. It could still be one of the better or even the best headphone I've had for general purpose listening, working just about as well with music, movies and games.

Thursday, 25 May 2023

Hirttämättömät/Unhanged (2023)

It's nearly futile to write this in English, but in the tradition of this blog, here goes anyway.

*

After putting so much effort in watching, reading and even writing about Western films, and more recently, about Finnish western films, I could not avoid watching the first new theatrical Finnish western film since 50+ years: Hirttämättömät (The Unhanged)

Given that it's not strictly a film set in the West, one could argue The Last Border from 1993 was a western too. But unlike with the Last Border, here we see all the Western paraphernalia, such as wide-rimmed hats, revolvers, western outfits, horses etc. Together with the western-style music I'm going to say this is the more fully-formed Western of the two.

The new cast

The film in question is a remake of the 1971 "cult classic" Hirttämättömät ("Unhanged"). This was a sequel to the earlier fennowestern Speedy Gonzales - noin 7 veljeksen poika. (Speedy Gonzales: Son of About Seven Brothers). As most western clichés had been explored in the first film, the creators concentrated on a more narrow topic: three guys crossing a desert.

I actually have something of a soft spot for this small film, so perhaps count me in as one of the cult members. Speedy Gonzales fools Lonely Rider and Tonto to imprison him and to take him over to Threepencestad, "alive", so as not to have to take the trip himself. 

They circle around what is obviously a sand pit, and suitably for a pitifully small road movie, small episodes also take place. Mostly about who gets to drink water and who has to pull the cart. And who wins the heart of the women they inexplicably meet during their journey. It is funnier at the start, whereas it gets repetitive and boring at the end.

The 1971 original, with Vesku, Spede and Simo.

The original film was nearly entirely carried by the antics of Pertti "Spede" Pasanen, Vesa-Matti "Vesku" Loiri and Simo "Simo" Salminen. Mostly by Vesku, who had the broadest acting range of the three and the capability to fully embody the farcical character. Spede is his usual taciturn "Spede" character, derived from a more typical Eastwood-like western hero. Simo supplies much of the physical gags, who, as a non-native American, still plays one. (Gasp!)

For the Finnish kids who watched Spede-Show on TV in the 1980s, these three figures have became cemented as an epoch-defining comedic "trio", both by being genuinely amusing (in kid-metrics), but by also featuring in a spate of so-bad-they-are-good "Spede films" adults still enjoy for their campiness. Reviled by critics, loved by the masses, in this film we already see the trio dynamics in action: there are really very few additional characters.

This new version follows the structure of the original with some additions. Aku Hirviniemi tries very hard to out-bullshit Vesa-Matti Loiri's 1971 character but overstays what little welcome he had in the first place. Despite having a few amusing gags he ends up just demonstrating some kind of split personality and his needy and whiny mental collapses cease to be funny after the first time round.

The famous cart

The "Speedy" in this film is a young woman (Ona Huczkowski), who the other protagonists think is a boy. Ha ha. Spede Pasanen had such a screen presence many felt his face was amusing in itself, there's no such advantage to be had for this relatively unknown actor.

Andrei Alén, who also directs the film, plays the "Tonto" character. He might be relatively interesting as the non-Indian "Indian", but as Hirviniemi overflows every scene with his babbling, he and Speedy have very little room to operate.

Some new jokes are pursued from gender relations and environmentalist themes of our times, but perhaps fortunately the gender angle is not explored too far. No Indians are in sight in this film either.

I think the pacing of the film is at least okay, I felt some genuine curiosity about where this all might be headed towards. Not too much time is wasted on a single theme (a problem with the original) but unfortunately the comedy is just not that funny.

As for the additional inventions on display, at places it was hard to understand if a thing shown on screen was supposed to be a plot point in development, or just a (failed) joke in itself. I mean, some of the ideas are never developed further.

The black and white nature of the 1971 version helped it make look like a more authentic western. The new film has colors which brings some challenges for simulating a wild west appearance. All in all the film looks nice in a small way and for example the costumes are rather well made. 

Some digital background additions help the setting look more western-like, but at times they were jarring and I felt the point of the gravel pit aesthetics of the original has become lost.

What we see most of the time

The film has more nods to the Spede-films and Spede's type of humor than any real understanding of the history of Western films, which I would feel is a pre-requisite for a good Western comedy/parody.

The usual suspects are again referred to, Sergio Leone and Clint Eastwood films, with some Morricone nods in the music. From more recent films, we perhaps have some Tarantinoesque elements in how the film is occasionally framed as a nostalgic TV show with VHS quality ads.

Now that the native American aspect has been removed, there are very few "western jokes" left, and most of the comedy operates outside the western premise altogether.

Part of the comedy involves literal imitations of the 1971 trio—imitating Spede is practically a national pastime. Together with the cameo of Hannele Lauri (the "fourth" member of the trio), the film is in danger of becoming a meta-film about the emotional hole the trio left in the TV and film landscape for a generation of Finns. Some might say good riddance, but the existence of this film seems to indicate at least some people need to process that loss still yet.

Thursday, 18 May 2023

Planet of the Apes

It's roughly 25 years since I've seen the earlier Planet of the Apes film series in full. It was handily available at Disney+ so I took the plunge again.

The creators could pull off five films in as many years, and despite piling on new science fiction ideas for each film, it's a surprisingly coherent trek.

The series famously relies on reveals, no further spoiler alert.

Planet of the Apes, 1968

A spaceship travels in the void, with four deep-sleep passengers. Already prior to the titles, Taylor (Charlton Heston) makes a huge point about how they might end up in the far future.

The ship lands on water, the clock says it's about year 4000, the passengers wake up and evacuate the craft before it sinks. Before this they confirm one of the astronauts is dead, a pretty blonde has turned into a hideous mummified corpse. My new pet theory is the woman died because Taylor smoked in the control room.

After landing, the film does some obfuscation so it wouldn't be blatantly obvious we are on Earth. Weird lightning strikes during daytime, ground is poisonous, there's very little or no vegetation, and they can't find a moon.

This sequence took more time than I remembered, and having the astronauts prancing around in the bleak landscape is visually interesting. Taylor speaks his mind a lot, and his attitude seems the worst of the trio. I wonder who was the psychiatrist who qualified him for the mission.

The astronauts find more livable areas with some primitive and mute humans, but alas, they are all hunted down by armed, clothed, horseback apes. Dodge dies, Taylor loses Landon and Taylor himself catches a throat-wound that renders him unable to speak.

Then it's off to Zira and Cornelius, the benevolent apes and Doctor Zaius of the science council. All speak... English. Taylor eventually reveals he is able to talk, at the most dramatic moment possible, but this doesn't much improve his position. Landon is found lobotomized, whereas Dodge's stuffed body is exhibited at the museum. 

This is both an inversion of human-animal relations in real world, but also a way to discuss civil rights and racial issues. All culminates in the farce of an ape tribunal. Taylor and Nova are exiled, they reach an expedition site together with Cornelius and Zira, with rumored artifacts about the planet's past. 

The film ends famously at the Statue of Liberty scene. But the cave already contains some clues the race preceding apes was human. A human doll says "ma-ma".

What apparently holds the ape society together is the firm belief in the superiority of the apes, something that could be undermined if the human past was revealed. And yes, in real world the discovery of evolution was (still is) a shock for many people.

The science-religious apes have a role in controlling what technologies are available. Zaius is well aware that flying machines would be possible, but presumably such devices would grant too much awareness. Apes have to be kept away from the Forbidden Zone, where the secrets lie.

The apes have fairly modern rifles and photography. ("Smile" is the first word heard from the apes) Otherwise the technology is not that advanced. Considering the pre-requisites for these two items alone, it makes me wonder why they have little else. 


Beneath the Planet of the Apes, 1970

I used to like all 1960s weirdness and camp a lot, so this was my favorite. Together with the nihilist plot, it felt hilarious all around. Now I see it's hardly comparable with the first film.

Another set of astronauts has landed in the future, the ship is wrecked and only one of them properly survives the crash. I'm thinking there's a permanent time-door in space that connects the two times together, rather than relativity and time dilation as such.

It seems the plot was written for Heston's character Taylor, but he was not available so we see only a few moments of him. Conveniently, Brent meets Nova from the first film and via visiting the ape colony and Cornelius and Zira and Doctor Zaius, and a needless escape detour, we go underground. 

Funnily, Zira thinks Brent is Taylor for a moment, because "humans look all the same". This is kind of revealing. After a visit to a New York subway station reveals to Brent it was Earth all along, damn you all to hell they finally did it, and for plot purposes he is now as good as Taylor and the story can continue.

The military-minded apes, led by Ursus the Gorilla, are intent on an expedition of conquest to the Forbidden Zone. For Zaius, this does not bode well but he accompanies the trek.

A small colony of mutated humans lives underground. They are able to discuss and instill pain through telepathy, and cast powerful illusions from afar. They pray for their god, a doomsday-tier atomic bomb from earlier days.

The campy elements are like some of the worse Star Trek episodes. The humans are costumed in a silly way. The sermon for the bomb takes too long. I admit the removal of the masks was and still is a little chilling.

The apes violently attack the human colony, and their mind power is no match for the "primitives". Taylor (Heston) is found from the prison and he gets some screen time. Nova dies, Brent dies, Taylor dies, Ursus dies, Zaius dies, everyone dies. The film ends up with a nuclear explosion that destroys the entire Earth, Taylor pushing the final trigger. Not sure why, he seemed rather anti-nuke in the first film.


This ending, trying to rival the first film, might look it could put a stopper to any potential sequels. But it didn't prevent three more films from appearing.

Beneath the Planet of the Apes was directed by Ted Post, whose better work includes Hang 'em High. It made me appreciate how these films might be a result of having an already existing infrastructure and know-how to make westerns: horse riding action scenes, guns, stunts, fist-fights, established film locations for arid desert scenes. The next film isn't a pseudo-western, though.


Escape from the Planet of the Apes, 1971

Some accounts have placed this film as the best of the series. Best of the sequels, might be more agreeable. It is still a film that only has existence under the armpit of the original.

Zira and Cornelius arrive to 1970s, together with Milo, a previously unseen genius ape, in a spaceship similar to what we've seen in the first two films. The whole scene with the expressions of the military personnel as the apes are revealed, is funny. It's not that incrediblethe implication is they might be test pilots.

Milo dies in captivity, Zira spills the beans to the zoo vets: they are talking apes from the future.

It's not super-credible the three apes managed to get Taylor's timeship working. They also pretty much had to launch it just about Earth was about to go Boom, and "somehow" they arrived at the point of origin. 

Traveling forward in time in the first film was actually rather well within science. Going backwards is a bit suspect. With the magic time-door theory it could be conceivable.

The timing of the arrival is curious. Although the first film had some elements that suggested the astronauts did not originate that far from contemporary times (of 1968) it is still little weird the US had these super-ships in early 1970s.

Using contemporary times frees the film to explore comedy and human acting. Cornelius and Zira become public superstars, what ensues is a critique of celebrity-obsessed culture and some amusing scenes. 

Zira inadvertently reveals the Earth's inevitable destruction and that humans will be experimented on by apes. Acting the Herod, the politicians choose that whereas the pair could live sterilized, the offspring must die.

A switcheroo in a circus guarantees that the child-chimp Caesar lives, whereas Cornelius and Zira die in 1970s USA.

It might look like a clever idea: Apes didn't so much evolve during 2000 years, but the evolved apes came from the future and helped alter the genetic stock. In a way this makes things worse: Why would chimp DNA affect gorillas and orangutans? As the later films will show, the time travel did not create any new breed of apes.

Now it is explicitly discussed how the apes of the future came to learn English, an item that was usefully ignored in the first film.


Conquest of the Planet of the Apes, 1972

We begin with Armando (Ricardo Montalban) from the end of the last film, who has kept Caesar the talking ape hidden in his circus for 20 years. 

Yes, it is 1991, and as prophesied, all pets have died and humans took chimps as pets. It just that now they have been turned into slaves. Apes are imported from various countries and trained to work as servants, doing such important duties as cleaning windows, waiting tables, sweeping streets and shining shoes. 

I really enjoy the police state vibes in this small film, showing how the US political system has degraded. The society is apparently become dependent on the apes, yet as they have started to misbehave there is a bunch of black-clad cops and guards controlling them. Loudspeakers continuously announce ape incidents. It might be a little annoying trying enjoy your morning coffee at the streets.

The case of the talking apes must be very well remembered. Touring the city with Armando, Caesar manages to blurt out some words and the cops are fully committed to outing him. (Instead of disregarding it as an impossibility.) I'm wondering why the human society doesn't otherwise see they are fully headed for the Planet of the Apes scenario, which might be preventable by harsh actions.

Caesar has to flee, and in a roundabout way, he mixes with a bunch of newly imported apes and being so damn clever he ends up being the Governor's servantthe one looking for him!

Soon he forms a resistance, where activities and resources are redirected for the benefit of an ape revolution. As Armando is killed in a mind-probe related incident, Caesar becomes genuinely vengeful.

The film neatly interpolates the human world and what eventually becomes the Planet of the Apes. There are also little visual clues and technologies that suggest a path towards the mind control society in Beneath the Planet of the Apes. I'd even go so far as to say I like this better than the last installment, but maybe I am a sucker for theatrics and bleak architecture. It does go slightly downhill, though.

Apart from the friendly MacDonald, the government appears to be fascist: "Torture? But we don't do that to humans?" Having basically "good guys" do these kind of decisions made Escape more nuanced. As Caesar grows more capable, he becomes more ruthless. It looks in the end there are very few heroes to root for.

The fighting in the end takes too long. Yes, it shows the first "netting" of humans by the apes. We get the point already. 

Much as with the previous film, part of me is concerned with the timeline. The Planet of the Apes was 2000 years in the future. It now looks like key events leading to it actually happen in the few decades after Taylor's ship left. In fact, if Taylor had missed his ride he might have seen the rise of the apes first hand, no need to visit the year 4000.

This does make the events more relatable, though. The mistake in Beneath... was to show a human society too far removed from what we know.

We're now shown that apes were made clever through breeding and training, without the Cornelius+Zira genetic contribution. Importantly, we're shown Caesar's example inspires one of the most clever apes to say a single word.


Battle for the Planet of the Apes, 1973

The film begins around about 2600, with a wise old ape recollecting things from the ancient past. Then it's off to early 2000s.

Again, some decades have passed, it's unclear how many. Caesar and his wife are around, and so is Aldo the gorilla. The brother of MacDonald from the last film is around (In absence of MacDonald's actor I suppose) and the events of Conquest of the Planet of the Apes are still in living memory.

But, a lot has happened. The nuclear holocaust, for instance. Much of Earth is now a radioactive wasteland, and although the remaining apes and humans have found a livable oasis, many humans also live under the nuke-melted city of New York.

Strikingly, the society is already quite close to what we saw in the first film, apes have their caste system and although humans still speak it looks they are second-class citizens here. Aldo the gorilla is the most militant of the lot, jealous of the more clever apes and the most clever leader Caesar.

Caesar becomes intrigued by the prospect of finding tapes of his parents in that city and answers to questions. So he, McDonald's-brother, and the wise orangutan Virgil do an excursion. They find the tapes and the fact Earth is destined to be destroyed in around 4000. Virgil muses that the future might not be fixed and that they could choose one "highway" from another. 

The mutant city is a dangerous place, as the society there is developing towards the bomb worshiping mind-controllers of year 4000. Unable to catch the intruders, the mutants nevertheless learn of the existence of an ape colony, and in a weird act of retribution their leader wants to destroy the apetown. 

The most interesting part of this 1973 film is how it precedes the Mad Max series, or perhaps its lesser imitators in the 1980s. The humans wear silly grey-black uniforms, drive crusty motorcycles, cars, jeeps and a school bus through the desert. The drab society in the dark underground city reminds me of the later Escape from New York. These are minor themes here, though.

The gorillas see their moment, Aldo takes control of the colony, breaks into the weapons storage, corrals all the friendly humans and sets out to destroy the opposing force.

The battle is not that impressive. Caesar plots to win the fight as non-violently as possible, but the gorilla force kills the fleeing mutants. The gorilla plot and culpability of Aldo in ape-murder ("Ape shall not kill ape") is revealed, Aldo dies and the humans are set free. But how free, ask the humans. Does the spiral of violence never end?

The bookend closes and the wise ape from 2600s is shown to be teaching a class of both human and ape children. I guess it might indicate the future took another route, and they all learned to live together. But as it's still far from year 4000 and so much could happen in a few decades, it's ambiguous.

As a film, this last installment is quite weak. As an addition to the Planet of the Apes lore, the story is reasonable and fills in an interesting period in the human-ape relations. The time scale becomes even more silly, as the future ape society is now nearly fully formed after 40-50 years from since Taylor left. His ship is probably about 2.5% of completing the distance to the Planet of the Apes. Bon Voyage, Taylor.