New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Documentation fixes part 2 #11578
Documentation fixes part 2 #11578
Conversation
There is another issues in the docs. There are 2 headers titled |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this. I’ll patch up the few things I noticed and merge this.
There currently is no way for the debugger GUI to add per-core | ||
configuration. It is needed for in particular the s2650 and the | ||
saturn cores. It should go through the cpu core class itself, since | ||
it's pulled from the config struct. | ||
configuration. It is particularly needed for the s2650 and Saturn | ||
cores. It should go through the cpu core class itself, since it's | ||
pulled from the config struct. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a result of French grammar leaking into English ;)
It would be better phrased as “In particular, it is needed for the s2650…”
docs/source/techspecs/floppy.rst
Outdated
Writing encoded data is easy, you only need a clock at the appropriate frequency and send or not a pulse on the clock edges. Reading back the data is where the fun is. Cells are a logical construct and not a physical measurable entity. Rotational speeds very around the defined one (+/- 2% is not rare) and local perturbations (air turbulence, surface distance...) make the instant speed very variable in general. So to extract the cell values stream the controller must dynamically synchronize with the pulse train that the floppy head picks up. The principle is simple: a cell-sized duration window is build within which the presence of at least one pulse indicates the cell is a '1', and the absence of any a '0'. After reaching the end of the window the starting time is moved appropriately to try to keep the observed pulse at the exact middle of the window. This allows to correct the phase on every '1' cell, making the synchronization work if the rotational speed is not too off. Subsequent generations of controllers used a Phase-Locked Loop (PLL) which vary both phase and window duration to adapt better to wrong rotational speeds, with usually a tolerance of +/- 15%. | ||
Writing encoded data is easy, you only need a clock at the appropriate frequency and send or not a pulse on the clock edges. Reading back the data is where the fun is. Cells are a logical construct and not a physical measurable entity. Rotational speeds very around the defined one (+/- 2% is not rare) and local perturbations (air turbulence, surface distance...) make the instant speed very variable in general. So to extract the cell values stream the controller must dynamically synchronize with the pulse train that the floppy head picks up. The principle is simple: a cell-sized duration window is built within which the presence of at least one pulse indicates the cell is a '1', and the absence of any a '0'. After reaching the end of the window the starting time is moved appropriately to try to keep the observed pulse at the exact middle of the window. This allows to correct the phase on every '1' cell, making the synchronization work if the rotational speed is not too off. Subsequent generations of controllers used a Phase-Locked Loop (PLL) which vary both phase and window duration to adapt better to wrong rotational speeds, with usually a tolerance of +/- 15%. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This could do with some more commas.
* **Relative analog fields** have a range with with defined | ||
minimum, maximum and starting positions. On each update, the value | ||
* **Relative analog fields** have a range with a defined minimum, | ||
maximum and starting positions. On each update, the value |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The “a” is misplaced, it should just be “…with defined minimum, maximum and starting positions.”
screens, to make up a view. Elements may be built up one or more *components*, | ||
but an element is treated as as single surface when building the scene graph | ||
screens, to make up a view. Elements may be built up by one or more *components*, | ||
but an element is treated as a single surface when building the scene graph |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be “built up of one or more components.”
Various typos & other grammar fixes.