Skip to content
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

Merged
merged 16 commits into from Oct 1, 2023

Conversation

Tomcariello
Copy link
Contributor

@Tomcariello Tomcariello commented Sep 29, 2023

Various typos & other grammar fixes.

@Tomcariello Tomcariello marked this pull request as ready for review September 29, 2023 21:33
@Tomcariello
Copy link
Contributor Author

There is another issues in the docs. There are 2 headers titled D88 Floppy Disk image (OS-9 format) - (d88_os9). I'm pretty sure that the 2nd instance of the header should be D88 Floppy Disk image (d88_prodos_35) but want to be 100% sure before submitting the fix.

Copy link
Member

@cuavas cuavas left a 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.

Comment on lines 197 to 200
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.
Copy link
Member

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…”

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%.
Copy link
Member

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.

Comment on lines 117 to 118
* **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
Copy link
Member

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.”

Comment on lines 399 to 400
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
Copy link
Member

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.”

@cuavas cuavas merged commit 4ab590e into mamedev:master Oct 1, 2023
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants