2023-12-03

Downgrading the G4

I could no longer take the pure performance of my G4 PowerMac, so when I saw this old ATI card in the Junk section of the local Hard-Off for 100円, I had to pick it up.

Before the down-grade, I was running a hacked Nvidia GeForce, which replaced the original ATI (that I still have). 

Firstly I was surprised that the card actually works. I guess I (or it) was lucky that it was only in the Junk bin without protection for long.

Test-setup:

  • MacOS 10.4.11 (Tiger)
  • Cinebench 2003
  • GeekBench3

Results

Geekbench results where identical, since it doesn't test GPU in that version.
Cinebench, impact was high:

 But hey, I don't keep that thing around for performance computing.

As a bonus, my MacOS 9.2 partition is now usable again. I could not for the love of god get it to work with the Geforce.

So finally I can enjoy errors like this again :-)

"I'll finish you like Macintosh does floppy disks."
 

2023-01-04

 2020 Gaming PC

.. or maybe not

Limelight 2020 personal workstation

I came across this random computer. It didn't (and still doesn't) work, but I thought I take it apart to figure out what it might be.

 



I suspected it might be some sort of XT clone, and indeed, inside is a M80C86 from OKI. Isn't "M"for "military"? Looking at things, this looks like a clone of a Tandy laptop (which itself was a clone of the IBM).

I took this baby apart, because the floppy drives where kind of stuck - they would not take disks. And also I wanted to check for any bios batteries to remove.


Yeah - greetings from 昭和62年, that thing has been removed.

It came with 2 expansion cards



Here some pictures of the mother and daughter boards



I was able to get the floppies going, but looking at the age of this thing, it probably wants DD disks, which I currently do not have. Speaking of the floppies, they are not standard - some weird thing going on with the eject button being in the middle.



Also - check out this keyboard. I like that there are even extra Y/N keys - amazing.
The keyboards lower keys where all stuck, but pulling them out and giving them a few days rest seems to have fixed them. The machine is also incredibly clean, seems like it was never really used. Not sure what to do with it though. Unfortunately it does not have a monitor out and even though the display (barely) works, it's not really great for doing anything with.

2022-04-18

Too long in Japan syndrome

So yesterday I take the kids to some park in 世田谷 and for Tokyo standards is a nice big park. While I stroll around, I notice some fellow bloody foreigners of the pale kind stalking through the undergrowth, apparently looking for something. I notice that even their kids are very involved in helping to find whatever they have lost, so it must be something really important - maybe their phone or car keys.

I was 0.5s away from asking them what they lost and if I can help looking for it. - Then it dawned on me. Today is Easter Sunday - they are looking for Easter Eggs. 🤦

2021-10-11

My path to the S8 replacement.

So my trusty Samsung S8 died the other day without any apparent reason. It was just charging and all of a sudden in the middle of the night it starts screaming (well beeping really loud) and the screen flashes. Half drunken I just pushed the power button to shut it off. That is the last thing I ever heard of it. It was dead from the next day. I have insurance, however because the phone is "too old", there is no way to have it repaired. The only option is a A42 as a replacement phone. This sounds good, as it is a new phone and thus gets a somewhat recent Android version, however being an "A" phone from Samsung - it lacks a lot of features that my S8 had. I was never a big fan of the "Samsung Experience" (quite an awful experience imho), but I found multiple work-arounds via 3rd party apps to make it bearable (Nova, other keyboard, Bixby-button work-around app, force uninstall some apps via USB).

That made think: What are the average peasants options?

I came up with these for me:

The somewhat affordable droidProsWeightConsWeight
Google Pixel 5a
No bloatware - no "custom" experience - no extra assistants5Relatively expensive for the average peasant4
Big modern screen4You submit to the digital overlords1
Good stereo sound - headphone jack3Big and chunky2
ScoreFingerprint sensor that "just works"5No Wireless charging2
16
Very good cameras2The side buttons are not very ergonomic1
Long software support expected2
USB-C1
5G support1
Multilingual (Keyboard, Interface, Assistant)3
Total26Total10
The DoCoMo "replacement" for the S8ProsWeightConsWeight
Samsung A42
Big modern screen4Bloatware OVERLOAD 5
Headphone jack1Awful speaker - MONO3
Pretty good cameras2under screen fingerprint scanner (works about 50% of times)2
ScoreCheap4There will be 0 feature updates / OS updates and security updates will be months late (I know from S8 experience)2
-9.5
USB-C1Only Japanese and English of the relevant (for me) languages are supported. (No German, No Español, No Pусский)3
Pitty for non big IT company0.5No wireless charging2
The side buttons are not very ergonomic and "inverted"1
Extra malus for the system stability, random crashes and quirky work arounds to get basic apps like youtube and casting to work3
No 5G1
Total12.5Total22
5 year old device from appleProsWeightConsWeight
Refurbished IPhone 8
Cheap4Small, but good screen2
Good stereo sound2No Headphone jack1
Still surprisingly good camera2Thunderbolt1
ScoreFingerprint sensor that works best5used (battery not 100%, might not have as much life left as a new one)4
12
Multilingual support (really good with Apple)3outdated specs (C/GPU slower than modern)2
Wireless charging2No 5G (of course)1
Long software support2
Ergonomic side buttons - quiet mode switch1
Great integration with Mac2
Total23Total11

2021-08-15

M1 Mac vs the beast

 It's time to upgrade the computer - aka the beast. Short story - the whole M1 concept convinced me and I got myself one of those M1 Macs. I've been using it for a couple of weeks now and really can't complain. So now, the old beast has got to go. But before I pass on it's parts for recycling - I wanted to compare how this old, big and heavy Xeon electric heater compared to the M1 performance wise.

Compare the Geekbench5 results

  Single Core Multi Core OpenCL
The Beast 528 2816 21098
M1 Mac 1559 6080 17628

As the above table shows - the M1 is significantly faster than the beast. However, for gaming the beast has a small advantage  - mainly due to the somewhat modern GPU that I inherited from my nephew.
Obviously the M1 is better in so many other ways - energy efficiency - size - connectivity (yes - only 2 thunderbolt ports, but that's vs 0 on the beast) - noise (no fans vs 8 ). So yeah - another hurray for the Apple M1. The only thing I miss is my virtual machines - but I will come up with a solution for that (probably a new beast - headless - AMD based).

The beast - definition

Motherboard Information

Gigabyte Technology Co., Ltd. X58A-UD7

CPU Information

Intel Xeon X5650
1 Processor, 6 Cores, 12 Threads
GenuineIntel Family 6 Model 44 Stepping 2
Base Frequency 2.68 GHz
Maximum Frequency 3 GHz
Socket 1366 LGA
Codename Westmere-EP
L1 Instruction Cache 32.0 KB x 6
L1 Data Cache 32.0 KB x 6
L2 Cache 256 KB x 6
L3 Cache 12.0 MB x 1

Memory Information

16.00 GB 669 MHz TypeDDR3 SDRAM 2 Channels

OpenCL Information

AMD Radeon HD 7800 Series
Compute Units 16
Maximum Frequency 920 MHz
Device Memory 2.00 GB
 

2020-12-12

Sumaho from China

Becauズ my life doesn't suck enough, I buy Sumaho from 中国...

Following again a note to myself:

I had low expectations - and even lower demand. The only reason for this device to come into my existence is to run some unverified applications that I am forced to install.

Anyway - I get this thing - I start it up and notice that Google services are in a constant crash cycle. Completely unusable. I read that this happens if google services are too old or something. Not sure - Android 6.0 too old? Who knows - I like the clear error. Next step, download newer apk from somewhere on the internet and push it via adb.

So I hook it up to USB and start adb. Good thing - it already comes rooted - fantastic. So poking around, I see nothing at first glance. But then, when I try to get some settings, I see this:

"/system/bin/settings[5]: app_process: not found"

root@4G:/system/bin # ls -l app_process
lrwxr-xr-x root     shell             2019-06-18 17:54 app_process -> /root/ext4/system/bin/app_process64  

Yeah, this doesn't look right - since it's rooted (and I don't give a s... about this thing) I just bend the link to where I think it should be. DONE!

root@4G:/system/bin # mount -o remount,rw /system
root@4G:/system/bin # ln -fs app_process64 app_process 
root@4G:/system/bin # mount -o remount,ro /system
root@4G:/system/bin # ls -l app_process
lrwxrwxrwx root     root              2018-01-01 01:34 app_process -> app_process64

Finally:

 ./adb install ~/Downloads/com.google.android.instantapps.supervisor_6.09-release-345429215-65418_minAPI23_maxAPI25\(armeabi-v7a\)\(nodpi\)_apkmirror.com.apk
Performing Push Install
/Users/bon/Downloads/com.google.android.instantapps.supervisor_6.09-release-345429215-65418_minAPI23_maxAPI25(armeabi-v7a)(nodpi)_apkmirror.com.apk: 1 file pushed, 0 skipped. 5.4 MB/s (6667656 bytes in 1.183s)
        pkg: /data/local/tmp/com.google.android.instantapps.supervisor_6.09-release-345429215-65418_minAPI23_maxAPI25(armeabi-v7a)(nodpi)_apkmirror.com.apk

Success

Yeah - success - well, not really. Still as soon as I connect this China-brick to any network, the error loop continues. Time to look at some logs - ah - f... about 1 core-dump per second. You know what? I actually don't care about google services on this thing. So let's do a bit of the good old rm -rf game. But maybe - better take a backup of sorts, since I have no idea what ROM this POS runs.
> ./adb exec-out 'cd /; tar -czf - system/' > Chinese_system.tgz

Uninstalling every app that has google in it's name:

package:/system/app/YouTube/YouTube.apk=com.google.android.youtube
package:/system/priv-app/Velvet/Velvet.apk=com.google.android.googlequicksearchbox
package:/system/priv-app/GoogleOneTimeInitializer/GoogleOneTimeInitializer.apk=com.google.android.onetimeinitializer
package:/system/priv-app/ConfigUpdater/ConfigUpdater.apk=com.google.android.configupdater
package:/system/app/PrebuiltGmail/PrebuiltGmail.apk=com.google.android.gm
package:/system/app/Music2/Music2.apk=com.google.android.music
package:/system/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk=com.google.android.gms
package:/data/app/com.google.android.gsf-1/base.apk=com.google.android.gsf
package:/system/priv-app/TagGoogle/TagGoogle.apk=com.google.android.tag
package:/system/app/GoogleTTS/GoogleTTS.apk=com.google.android.tts
package:/system/priv-app/GooglePartnerSetup/GooglePartnerSetup.apk=com.google.android.partnersetup
package:/system/priv-app/GoogleFeedback/GoogleFeedback.apk=com.google.android.feedback
package:/system/priv-app/GoogleLoginService/GoogleLoginService.apk=com.google.android.gsf.login
package:/system/priv-app/GoogleBackupTransport/GoogleBackupTransport.apk=com.google.android.backuptransport

Some fail to uninstall:

root@4G:/ # pm uninstall com.google.android.gm
Failure [DELETE_FAILED_INTERNAL_ERROR]

So let's disable them.

root@4G:/ # pm disable com.google.android.gms
Package com.google.android.gms new state: disabled

root@4G:/ # pm disable com.google.android.gm

Package com.google.android.gm new state: disabled

root@4G:/ # pm disable com.google.android.tag

Package com.google.android.tag new state: disabled

root@4G:/ # pm disable com.google.android.tts

Package com.google.android.tts new state: disabled

Somehow after rebooting the door-stopper, uninstall succeeds. I love Robots.

> ./adb shell pm uninstall --user 0 com.google.android.gms
Success

And yes - so the Error-loop is gone.

Next - install that app - doesn't work of course, but NOW I can complain and wine to somebody about it - GREAT!


Dudesettes yours app don't work on mi Android 6.0 China-sponsored spyphone. What you say? I should get a new phone? Great - I take one of them I-phones 12, send it to my home address, thank you very much. Oh - I see, you DON'T want to buy me a phone. You want ME to buy myself - from me own hard cash - a new private phone, so that I can run your app for you? Good idea - sadly, I don't have any money (for this).


2020-09-15

Windows SSH Forwarding Socks Proxy

 Windows is not what it used to be (completely useless). Nowadays it is possible to forward yourself your local connection via a socks proxy to some place remote. On Linux and other OS, this is nothing new, but it was news to me, that this is possible with Windows too. It's basically the same as with linux / others, just with the exception of one bug, that requires hard-coding the PATH to the SSH client exe.

What you need:

  • OpenSSH Client (optional Windows feature) - or download.
  • OpenSSH ssh-agent (optional feature / service) - only for convenience, who likes to enter all those passwords (not me!)
  • OpenSSH server. Most likely you won't have that enabled on your Non-Admin host - but what's stopping you from downloading it or building your own? - Right - nothing.

Example:

A complected setup with 2 jump hosts

  • Opsn-SSH running on localhost (A container would work too - or a some VM,WSL...)
  • First jump host "jump"
    • There is some bug in the current open-ssh client for windows that breaks "ProxyJump" and requires this ProxyComand with full path.
  • Second jump host "ap008" (only reachable from jump host)
    • Basically the same setup. Add as many jump hosts as you need on your path to success.

sshd-config:

You can go with the defaults here pretty much. Just change the paths accordingly to where you put the installation and where you create the host key etc. Two important parts:

  1. You need to set: "UsePrivilegeSeparation no" because you are not admin
  2. You need to authenticate with key

See the link to the actual sshd-config config file.

ssh-config:

Hostname localhost
    # Local IP of Container / VM running sshd
    Hostname 127.0.0.1
    Port 22222
    User bon
    DynamicForward 8888

# jump host
Host jump
    Hostname 10.XXX
    User jumphostuser


# second jump host
Host ap008
    User appuser
    HostName 10.XXX
    ProxyCommand c:/Windows/System32/OpenSSH/ssh.exe jump -W %h:%p

Host erde
    User bon
    Hostname 100.xxx
    Port 2225
    ProxyCommand c:/Windows/System32/OpenSSH/ssh.exe ap008 -W %h:%p
    RemoteForward 8888 127.0.0.1:8888

Run it:

Start your private SSH server

PS> sshd -f sshd_config_localhost
PS> ssh localhost
Background this, or open a new tab/window
 
PS> ssh erde
Now you can use localhost:8888 as a socks5 proxy to connect to whatever needs connecting.