Previous Up Next

Diary, February 2024

Sun Mon Tue Wed Thu Fri Sat
                  1   2   3
  4   5   6   7   8   9  10
 11  12  13  14  15  16  17
 18  19  20  21  22  23  24
 25  26  27  28  29

Friday, February 2, 2024


Today, I went to Rotterdam. I first visited the De Slegte bookshop. After this I travelled by metro to Schiedam, where I visited the Stedelijk Museum Schiedam. There I first saw the exhibition: Yayoi Kusama. The Dutch Years 1965-1970 I found following works noteworthy: Furthermore, I found the following works in the museum noteworthy:

Next I went to the exhibition Raidiant Voids at Katoenhuis and organized by TECART. This exhibition was the primary reason for me to go to Rotterdam. I liked all the works on the exhibition.

I met some people from Enschede. The Undetermind showed the text 'IKEDA MODIFIED' (refering to Ikeda map) and the equations:

I walked past Rotterdam Photo '24 and went inside to have a look. I found the photographs by the following photographers noteworthy: Guido Castagnoli, Kai Weise, Evgennii Petrushanskii, Emilie Kothuis, Olena Denysyuk, Frédéric Rennes, Dan Hallman, Daura Campos, Amit Lennon, Agostinho José, Paula Rae Gibson, Michelle Blancke, Damian Noszkowicz, and Won Kim.

Finally, I went to Art Rotterdam. There I found the following artists at some gallery noteworthy:

From the Prospects of Mondriaan Fonds:

Monday, February 5, 2024

Collatz sequence

I got some question related to the Collatz sequence. It explained the rule and defined the endurance as the number of steps that are needed to arrive at 1. And then said: Consider all positive integers smaller than 10,000,000,000. Sort the 30 numbers with longest endurance. Because I felt that it was going to a very long time to perform the calculation, I implemented an algorithm in JavaScript such that the person asking the question could run it himself. I read that for 9,780,657,630 and 9,780,657,631 the endurance is 1132. Just click the button 'run' to start the algorithm. The program starts with 9,999,999,999. The output is updated ever time when 1,000,000 values have been calculated. The first line shows the lowest value for which the endurance has been calculated. The rest of the lines shows the number with the highest endurance with the endurance between round brackets. If all the numbers above 670,617,279 have been calculated and the lowest value is larger or equal to 949, the answer will be shown.

Tuesday, February 6, 2024

Debugging the i386 Emulator

In the past month, I continued working on debugging the i386 Emulator. (The attempt to use revng did not help me further.) I have been developing the program M1_Emulator.cpp in an attempt to generate a C++ program from a M1 file. I also wrote the program sdiff.cpp to compare the program generated by Emulator.cpp and M1_Emulator.cpp (see commit 9fe05336). This helped me discover some bugs. I discovered that both program do not yet generate code for the 'call eax' instruction, which makes a function call to the function where the start address is found in the eax-register. This probably explains why the program generated by Emulator.cpp behaves differently than the execution of the emulator itself. Hopefully, I will be able to make some progress on debugging the emulator.

Saturday, February 10, 2024


It was lovely spring-like weather as I cycled to Herenboeren Usseler Es and I found myself completely relaxing, aware of the stress I experienced last week (mostly due to work). I saw that people were busy placing poles in the field. The lower part of the land was quite boggy and the path to the barn was quite muddy. (What you receive from the harvest or can take with you at the time of delivery depends on the number of mouths you pay for each week and your own choices.) I brought the following home (seen below in the photo, starting at the bottom left and going clockwise): There were snacks made with rye. I opted for the unread rye that is partly infected with ergot. When I cleaned some of the grain this evening, I did not find many grains affected with it.

Sunday, February 11, 2024


Last Friday, the World (60°S-60°N) Daily Sea Surface Temperature reached a record high of 21.2°C about six weeks ahead of the yearly maxiumum. Since March 13, 2023, now almost a full year the daily sea surface temperature has been breaking records every day with an average of about 0.2°C. It looks like this anomaly is going to be the new normal. The same is true for the North Atlantic (0-60°N, 0-80°W) Daily Sea Surface Temperature. The Daily Surface Air Temparture, World is also breaking records, except for a short periods in December 2023 and the first half of January 2024.


Dune, Chapter 35

This morning, I finished reading Chapter 35 of Dune. I am rereading the last half of Dune as a preparation to going to watch Dune: Part Two around the end of this month. Chapter 35 is about the fight of Feyd-Rautha on the occassion of his birthday. From trailers we know that this is going to be in the film and that also Margot Fenring is included, but I wonder if there is also room for the complex back-story with the machinations of Thufir Hawat. In the past, I had the tendency to quickly read this chapter as I felt that it was distracting from the main story of Paul becoming the hero, but now that I am getting older, I begin to appreciate this chapter more and more, but it is a rather clever chapter with many layers.

Some reaction videos I watched in the past months:

Monday, February 12, 2024

Found the bug!

This evening, I finally found the bug in the i386 Eumlator. I had switched the operands of some of the compare instructions. Most compare instructions are used to test on equality and in those cases switching the operands does not matter. But in one place in the code, a compare statement was used to take the maximum of two arguments, but instead it was calculating the minimum of a zero and some positive numbers, which always resulted in zero and causing all unions to have a size of zero. I figured this out with the help of Section 17.2.1 ModR/M and SIB Bytes of Intel 80386 Reference Programmer's Manual. I also discovered that the CMP_XXX_YYY macros defined in cc_X86.M1 of commit 18bd9d2e are not consitent. It looks like this has been fixed in the latest version of the file, which is now using the GNU Assmbler syntax. The fix is implemented in the commit b7a80666. Now the Emulator.cpp program stops at executing the M2-0 executable because it does contains a section header, unlike all previous ELF files that did not have any section headers. I did see that the objdump program can disassemble the ELF file. It looks like it does need the 'symbolic' information from the sections to disassemble an ELF file.

Wednesday, February 14, 2024


In the evening, I went to see the exhibition Wolkenwereld (Dutch for cloud world) at B93 with works by Rein Rodemeier and Philip de Vreugde. Philip de Vreugde had the following works on display: Rein Rodemeier had the following works on display: An interesting exhibition.

Saturday, February 17, 2024

In to the city

I first biked to TETEM art space where I saw Lingering Echoes by Sjoerd van Acker. It is a VR installation where you have to stand in the center of a viaualization of a hypercube. In the VR installation you have to track a line with your finger. The track is based on movements made by the previous person and the next person will have to track your movements. I found it rather boring. Next, I biked into the city and parked my bike in the underground bicycle parking De Graaff as I usually do. From there, I walked to Fotogalerie Objektief where I saw the exhibtion Vervormde dromen en herinneringen by Hubert van Mastrigt. Quite light hearted staged photographs, where he from an idea took photographs (a lot of himself) and made a composition of these using photoshop. From there I walked to the gallery Beeld & Aambeeld where I saw the exhibition Spring is coming with paintings by Maike Eilers. The paitings feel a bit like paint by numbers that are based on photographs where the contrast and saturation have been increased.

Sunday, February 18, 2024

Linux strace

The initial reason why I started to write a i386 emulator for live-bootstrap was to trace while files were read and written by the various steps. Last year, I developed a program for performing this analyses by processing the input files, which produces the page live-bootstrap that includes the source of the kaem_parser.cpp program. In the past days, I have made some progress on the Emulator and it now produces all executables, up to M2-Planet, which are the same as when executed through the kaem.x86 script. But the execution of M2-Mesoplanet and M2-Planet from the mescc-tools-extra.kaem result in errors. The opening of 'temporary' files with O_EXCL results errors. Maybe this is because the programs are not executed as individual processes. Even when I ignore the O_EXCL modifier, they still report errors. The current state of the Emulator can be found in the commit 544ab04c. I discovered that with the strace command it is possible to trace the system calls that are made by processes. I executed the following command in the state0-posix/src directory:
strace -f -o out.txt -e trace=open,openat,close,chmod,chdir,fork,execve ./kaem.x86
This gives detailed information about which files are read and written by the various execution steps of the kaem.x86 script. Maybe I should write a program to process the output and use it for the live-bootstrap page. I am afraid that finding out why the M2 executables are not working, is going to take some considerable effort. Now that I have found a much easier way, through the use of strace, to get the information I was initially looking for, putting energy in developing the Emulator further, seems a waste of time. Nevertheless, while developing the Emulator, I have learned a lot about the i386, the ELF, the Linux system calls, and how processes are created under Linux.

Tuesday, February 27, 2024

Rijksmuseum Twenthe

Conny and I visited the Rijksmuseum Twenthe to see two exhibitions. There was group of young children, probably from a school class, guided around that we tried to avoid causing us to go to the other exhibition while visiting the first. I found the following paintings from the exhibition The international landscape. Painting in the open air in the nineteenth century noteworthy:

I found the following works from the exibition Charcoal x 9 artists noteworthy:

Some other works we did see in the more permanent exhibtion:

At 12:12, we bought the book Houtskool written by Lisanne Sloots in Dutch and published by Stichting Uitgeverij Noord in 2019, ISBN:9789090324944, from the museum shop for € 27.00. We both liked the works by Lisanne Sloots the best. The book is more about charcoal than her drawings and, of course, because it has been published some years ago, does not contain her latest drawings that are on display.

Thursday, February 29, 2024

Leap day

I went to the second edition of the Schrikkelfestival in and around Roombeek. The first edition was four years ago. I visited all locations. I found the following artist and works noteworth:

This months interesting links

Home | January 2024 | March 2024