- The pressure of the driver's valve is named as what its gauge shows
(the equalizing reservoir, the FV4a's time reservoir), alike in both
languages.
- The traction's values are clipped to their columns, and the torque
converter's label is shorter: it ran into the oil pressure's.
- The doors in two columns, the radio's label shorter: the names were cut.
- The compressor and the motor fans go on and off by themselves: no
events for them.
- The summary of HeadCodes.Right back above it.
- The rest of the cab record is read when written: what drives the
vehicle, the doors' permits and departure signal, the brakes of the
whole train, a diesel's oil and temperatures, the cruise control and
the rest.
- Cab panel: the traction as fits what drives the vehicle (voltage and
current of an electric one; revolutions, oil pressure and temperatures
of a diesel; clutch or torque converter of a mechanical or hydraulic
one; nothing for a draisine), the equalizing reservoir, the main
reservoir pipe and the most braked cylinder of the train, the brakes'
setting and mode, a group of the doors, the pumps of a diesel where an
electric vehicle has its pantographs, the hand brake, the releaser, the
horn's tone, the radio's channel, the integrated handle of a unit.
- Events: every switch on and off, doors opened and closed, the departure
signal, the hand brake, the brakes' setting, the radio channel, the
cruise control's speed; moving with the doors open and an overheating
engine as faults.
- A vehicle with no lamps at an end (a draisine) is not judged on its
lights, and one which never had a voltage shows none.
- The hover label and the clock bubble keep to the left edge on a
narrow timeline instead of throwing in Render.
- A mark is told under the pointer only when it is drawn: within the
plot and the time shown.
- The device groups are clipped at their own width, not 4 px short.
- On a short window the cab card scrolls, so the list above it keeps
room for a few rows.
- Map legend: a title for each part, the texts in the text colour, the
speed bands said in full ("up to 5 km/h faster than the AI").
- Timeline: the key names every mark (station, W6, signal passed,
coupling, autopilot, command), the row of marks has its name, and the
mark under the pointer is told in a label. The key no longer sits on
the station plates.
- Cab panel: titled parts (controls, brakes, traction, lights, devices);
the AI's speed and the next limit no longer run into the controllers;
the lights of each end with the signal they show, and the one they are
to show when it differs; the devices in three groups (power, driving,
safety) instead of one long list.
- A light pattern asked for in a recording made before the lamps were
written is checked as the signal it shows, as before.
- Whether the couplings were written is told by the format (the
movement in the cab samples), not by there being any: a recording
where every train is a single vehicle has none, and the user going
over to another vehicle left the timetable shown.
- The 2 m a train may stand off the platform is at each end, not for
both together.
- The stations, the signals passed, the horn points, the couplings, the
consists and the timetable progress of the user's train are kept until
a read adds something; the views asked for them every frame, which on
a long session with many trains took the window down. A read that adds
nothing no longer counts as a change.
- The lights are checked against the lamps the vehicles at the ends have
(written by the simulator from now on), as its driver checks them: Pc 1
without the upper headlight, with the auxiliary lamps, Pc 5 with the
rear-end signals. Only while the user drives: the autopilot's lights
are its own.
- A train off the platform counts at both ends: its head past the stop
point as well as its tail before the platform's end.
- A recording without the couplings keeps the timetable for any vehicle
of the user.
- A signal passed at danger is ringed on the map only once it was.
- In the tapes window a black box opens on a click or Enter, not when
the arrow keys go over it.
- The viewer's screenshot of a window not laid out saves nothing and
still closes.
The simulator writes a black box of each run to physicslog/*.blackbox
(blackbox_doc.md in the maszyna repository). Three new projects read and
show it:
- Eu07.BlackBox: the reader of the records, the recording as a whole
(the user's vehicle and consist at a time, the timetable shown, the
progress along it with arrival and departure delays, whether the
train stood at the platform), the light patterns Pc 1, Pc 2, Pc 5 and
Tb 1 with the ones the run asks for, and a summary of the driving.
- Eu07.BlackBox.Views: the player window, with the scenery map (tracks,
signals, W4 stop points with their heading and W32, the train, the
cameras), the cab, the timeline of speed against the AI's reference,
the events, the timetable and the summary.
- Eu07.BlackBox.Viewer: the window on its own, with options for the
time, following the train and screenshots.
The tapes window of the starter lists the black boxes of each session
beside the Hasler tapes and opens them in the player.
The watch of scenery files asked three times per file, whether it is there,
its time and its size, every two seconds for every source of every scenery.
One look gives all three.
They were kept by the trainset's text for the whole session, behind one lock,
and every reload added more. They are now kept as long as a trainset holds
that text.
Writing the settings put them right for the simulator, DLSS to TAA on OpenGL
and the like, in the object given. A preview of the changes or a look at the
levels goes through the same write and changed the held settings. A copy is
put right now.
A start notes down which vehicles the player drove in the run before, as the
log begins anew. With the tape window never opened nothing of a long run's log
had been read yet, and Start waited on the whole of it. It is now read off the
UI thread when the simulator exits and when the starter opens.
The tape window reads starter-launch.txt every two seconds. Written in place,
the file could be read half written, and a crash during the write lost the
launches noted before.
A uart or uarttune the settings no longer write was found missing twice, as a
key of set length and as one the file had, and showed twice among the changes.
A profile went through the save of eu07.ini with another path: what the store
holds of the file took the changes the file never got, and the list of changes
was empty after it. A profile is now written as an export, from a copy. Like a
save, an export is not written from defaults when the settings could not be
read.
The tapes looked for any process named as the chosen exe, every two seconds
off the UI thread. Under Wine the process is eu07.exe and never matched, so a
run never showed as running and the tape window did not follow the driven
vehicle, while a simulator started some other way was taken for the last
launch. The starter's own watch of the process it started now says it.
The copy carries the scenario includes put in place of their include lines,
read as UTF-8 where they are, and it was written all in code page 1250. A name
with a Polish letter in a UTF-8 include then no longer matched the same name in
the files the simulator reads apart, and what 1250 lacks became '?'. Each part
now goes out in the encoding of the file it came from, the scenery's own file
too, as a save of a trainset already did.
/arch:AVX2 lets the compiler use FMA as well, so a processor that reports AVX2
without it would still stop the simulator. The comment on OSXSAVE no longer
says more than the bit does.
The tests asked Encoding for it before anything had registered the code pages.
That held only when another test had made an InMemoryFileSystem first, so the
class failed when it ran first, as it did on Linux in CI.
Avx2.IsSupported says whether the starter's own code may use AVX2, and the AOT
compiler fixes that at build time to its baseline, which has none. A published
starter told every player that their processor lacked AVX2. The check now reads
CPUID: AVX2 in leaf 7, AVX and OSXSAVE in leaf 1.
The rows of keys the public simulator does not read sat among the others in
Graphics and Effects, where a player with that exe could not tell them apart. They
are now one section at the end of Advanced, with a note that an older exe skips
them. Graphics and Effects hold what that exe reads.
Buffer scale and anti-aliasing stay in Graphics, as an older exe reads them through
other keys. The level list of the atmosphere rows goes with them; the whole levels
still set that group. With its rows gone, the nature section is called Smoke.
Its name and memory, with the other cards in the tooltip. Windows has them in the
registry. On Linux the name comes from the driver or pci.ids and the memory from
amdgpu or nvidia-smi; without either there is only the name. A card in a processor
says shared memory, as what it reports is a share set in the firmware.
No rating of the card against the settings: what a ride takes depends on the
textures of its scenery and vehicles, which are not known before it starts.
What the merge left out, now on this branch's own six levels:
- GraphicsRules, which say what a renderer or an anti-aliasing mode rules out,
and the notes that show it
- the settings split into Graphics and Effects tabs
- the DLSS library check beside the exe
- eu07.ini import and export
- one list of renderers: the backend follows from the renderer chosen
The post-processing part of the levels is gone, as three switches cannot tell six
levels apart. Bloom goes with the whole level.
Still a transitional variant. The old renderers, their keys and their rows stay
on the page, as the exe a player runs may be an old one or may have no Vulkan.
That branch's five-level list and its removal of the old renderers stay out.
A transitional variant, since the exe a player runs may not have the new
renderers. The old renderers stay in the list and the old keys are still written
next to the new ones. A new exe without Vulkan starts OpenGL by itself, an old one
reads the word as its legacy renderer, and both pass over the keys they do not know.
Taken from Hirek193's branch:
- the new keys as rows of a section of their own, with their texts
- their values on the graphics levels, in steps over the six levels here, with
High as what the simulator does with nothing set
- Vulkan 1.4 in the list of renderers, and its own keys marked as idle without it
- gfx.buffer.percent next to the old buffer keys, read before them
- gfx.antialiasing saved below multisampling, for the later line to count
Keys checked against feat/gl46-migration of the simulator.
Left out, as this branch has its own or does not need them: the rewritten settings
page and its five levels, GraphicsRules, the DLSS library check, eu07.ini import and
export, and the removal of the old renderers.
12.1.3 stops drawing a stretched PathGeometry, which took the Discord icon, so
this goes one patch past the version Dependabot offered.
Three things follow from the new version. A combo box placeholder keeps its full
opacity. The consist strip's padding, ignored until now, is gone, as it would
take 4 px from the panels above. A scenery picked from code is brought into view.
With no scenery selected the button starts a new one in the editor. Each launch
notes the scenery, the timetable number and the vehicles for the tapes. Tools
work on the selected scenery, and an emptied consist stays listed.
Reads physicslog/*.dat and draws each trip as a Hasler tape or, for vehicles
with an electronic recorder, as an evaluation screen. Tapes are grouped by
launch, and a launch still running can be followed live. Includes whole-tape
PNG export and a summary of times and averages. With the log off, the page
offers to turn it on.
A consist added to the warehouse gets a name there. The crew type stays through
loading a consist. The vehicle base window replaces the texture base. The depot
follows consists changed on the scenarios page, also with the warehouse tab
left open.
A sticky quality bar, a level and a reset per section, key bindings in their
own tab. UART moves into the page. A log and tools window replaces
AdvancedSettingsWindow, and the developer tab is gone.
Six levels of detail climbing in even steps, High being where a player with no
settings of their own starts. Five parts of the picture can also take a level
of their own. Resolutions start from the monitors in the computer.
uartfeature with nothing selected writes "no no no no"; uart and uarttune are
written whole or not at all. On Linux the file's contents tell a Windows build,
a native one and a script from a note that merely has the execute bit.
Saves keep comments and every byte they do not change. Faults in a scenery's
text are found and described. Files that change while the starter runs are
picked up without a manual reload.
Translations also come from folders of the player's, the old starter's
lang-XX.txt and the simulator's XX.po. Strings for the commits that follow in five
languages, shorter where they had grown.
A failed write leaves the old file in place. Settings that could not be read
are not saved over. UI exceptions reach the log. Started from a shortcut set
up elsewhere, the starter moves to its own folder when only that one holds a
game.