Tutorial talk:Combinator tutorial: Difference between revisions
SafwatHalaby (talk | contribs) No edit summary |
(→Memory cells: much appreciated addition!) |
||
(18 intermediate revisions by 8 users not shown) | |||
Line 10: | Line 10: | ||
:Thank you for this, designs are appreciated here. It's good that you remain objective about their advantages and disadvantages. -- [[User:Bilka|Bilka]] ([[User talk:Bilka|talk]]) - <span style="color:#FF0000">Admin</span> 11:57, 13 May 2018 (UTC) | :Thank you for this, designs are appreciated here. It's good that you remain objective about their advantages and disadvantages. -- [[User:Bilka|Bilka]] ([[User talk:Bilka|talk]]) - <span style="color:#FF0000">Admin</span> 11:57, 13 May 2018 (UTC) | ||
:: Thank you for your incredible work on the Wiki. I am always 100% objective. | :: Thank you for your incredible work on the Wiki. I am always 100% objective. In this particular scenario, the initial design is objectively flawed. Try connecting a simple clock (self-connected arithmetic combinator with + 1) into it and then disconnecting it suddenly, its memory will flicker between the last two values. More generally, if the current input is only given for 1 tick, then it flickers between the current and the previous input. I do not want to remove it without the approval of the original poster. Here is a demo of the flicker. This device on the left sends a 1-tick pulse of 1. The lamp turns on if the output signal is 1. -- [[User:SafwatHalaby|SafwatHalaby]] ([[User talk:SafwatHalaby|talk]]) 13:46, 13 May 2018 (UTC) | ||
https://streamable.com/ | :: (edit: fixed link): https://streamable.com/5r7w8 | ||
::: Because your memory cell has the same size, the other memory cell has no advantages over it. So, I am okay with a removal of the "positive cell". -- [[User:Bilka|Bilka]] ([[User talk:Bilka|talk]]) - <span style="color:#FF0000">Admin</span> 14:53, 13 May 2018 (UTC) | |||
:::: Ok. Let's wait for a while in case the original poster has comments that we've missed. | |||
:::: There's one advantage for the previous design: It's useful for someone that absolutely requires a reset-on-negative and not reset on a dedicated line, and does not care about the flicker issue. But that seems like a very rare edge case, and someone who needs it is most likely very experienced and doesn't need this guide. -- [[User:SafwatHalaby|SafwatHalaby]] ([[User talk:SafwatHalaby|talk]]) 15:54, 13 May 2018 (UTC) | |||
There is a mistake in the new image for the "Positives and Negatives cell" by "Zippy." In the original image there is a green wire connecting the input of [2] to the input of [3] which must be present for the memory cell to function properly; without it the [M] output simply increments on each tick. In case that description is confusing, here is an image where I use the blueprint selection box to highlight the wire I'm talking about: https://i.imgur.com/XRLAEkh.png [[User:Maoman|Maoman]] ([[User talk:Maoman|talk]]) 11:07, 12 February 2021 (UTC) | |||
The image for the decider combinator shows 1 greater than 30. It should be less than in order to work, and to match the text. -- [[User:Kathrynn|Kathrynn]] ([[User talk:Kathrynn|talk]]) 18:06, 13 February 2021 (UTC) | |||
:Thank you to both of you for letting me know. I have fixed the two images. -- [[User:Bilka|Bilka]] ([[User talk:Bilka|talk]]) - <span style="color:#FF0000">Admin</span> 12:30, 16 February 2021 (UTC) | |||
I've updated this section. I found combinators very hard to understand. The examples always only include the combinators, but not how they're used. And I haven't found a source that clearly explains what's happening, on a tick-by-tick basis. So I've added some blueprints, some images, and a lot more explanatory text. However, I'm not sure if that is in the spirit of this tutorial. Maybe there should be two pages: This tutorial, which only explains *how* to use combinators, and another page that explains *why* it works, what's going on. --[[User:Ndh|Ndh]] ([[User talk:Ndh|talk]]) 13:15, 29 June 2024 (UTC) | |||
: Thank you very much, this kind of "how it works" explanation is just right for this page. -- [[User:Bilka|Bilka]] ([[User talk:Bilka|talk]]) - <span style="color:#FF0000">Admin</span> 15:25, 30 August 2024 (UTC) | |||
== Binary gates redundant? == | == Binary gates redundant? == | ||
Line 25: | Line 39: | ||
:: -- [[User:SafwatHalaby|SafwatHalaby]] ([[User talk:SafwatHalaby|talk]]) 13:25, 13 May 2018 (UTC) | :: -- [[User:SafwatHalaby|SafwatHalaby]] ([[User talk:SafwatHalaby|talk]]) 13:25, 13 May 2018 (UTC) | ||
::: Like I said, combinators aren't my strong suit :) So yes, they are redundant, but I'd personally wait and see what My3DS wants to do with the gates before removing them. Perhaps give them a week, and if nothing is changed until then, remove them. -- [[User:Bilka|Bilka]] ([[User talk:Bilka|talk]]) - <span style="color:#FF0000">Admin</span> 14:53, 13 May 2018 (UTC) | |||
:::: Ok :), does the wiki have some sort of "pinging" system to let them see the conversation?. -- [[User:SafwatHalaby|SafwatHalaby]] ([[User talk:SafwatHalaby|talk]]) 15:54, 13 May 2018 (UTC) | |||
::::: You can't ping people directly, but if you leave a message on someones talk page, they will see a notification until they check it. -- [[User:Bilka|Bilka]] ([[User talk:Bilka|talk]]) - <span style="color:#FF0000">Admin</span> 18:12, 13 May 2018 (UTC) | |||
:::::: Thank you :) -- [[User:SafwatHalaby|SafwatHalaby]] ([[User talk:SafwatHalaby|talk]]) 14:06, 14 May 2018 (UTC) | |||
::: I can see the merit in these designs for 3 or more inputs. But I think it should be clear to the reader that the 2-input designs are alternatives to the built-in ones, and that the bitwise vs binary sentence should be clarified. -- [[User:SafwatHalaby|SafwatHalaby]] ([[User talk:SafwatHalaby|talk]]) 14:06, 14 May 2018 (UTC) | |||
I have updated the page to have some clarification of what is meant by bitwise and some additional notes on the gates, as some can function with boolean or non-boolean values (or binary vs non-binary values), and some can have more inputs. Let me know if something doesn't make sense or should be improved. I'm also not sure if the built in ones should be under the others or before it. [[User:BlackJack69|BlackJack69]] ([[User talk:BlackJack69|talk]]) 00:19, 12 February 2019 (UTC) | |||
== This is not a beginner tutorial at the moment == | |||
This page seems inappropriate for circuit beginners and I've added a sentence at the beginning to keep beginners from getting frustrated; the circuit network page and cookbook page should be more helpful for beginners. A beginner section on this (or on a different page) that explains how to connect wires, how signals work and so on would be useful. | |||
There's also a decent overlap with the cookbook page (the madzuri setup, memory cells, sr latches, logic gates). And virtual signals are explained here and on the circuit network page. That is not a problem as such but it means there is more work to keep it updated. In sections where the intended depth of explanation is comparable between the pages, it may be better to keep the content on one page and have a link on the other one. [[User:Unique 2|Unique 2]] ([[User talk:Unique 2|talk]]) 23:25, 10 March 2019 (UTC) | |||
== Working on improving the Virtual Signal section == | |||
So far I've rewritten the section explaining wildcards, as it was very terse compared to overview at the [[Circuit network#Logic signals]] section. Given that this is a tutorial page, they should be explained in depth, which I attempted to do. | |||
I plan to add a similar explanation for the other virtual signals, but for now I've stayed up way past my bed time :) --[[User:ZeroKnight|ZeroKnight]] ([[User talk:ZeroKnight|talk]]) 10:41, 4 October 2019 (UTC) |
Latest revision as of 15:26, 30 August 2024
Memory cells
I am aiming to update the "memory cells" section.
- The "advanced cell" does not handle 1-tick bursts properly. (I updated the article and wrote about that)
- There should be more versions of the memory cell, including versions that can handle negative input.
I may post some of my designs here once I finish polishing them. -- SafwatHalaby (talk) 09:46, 13 May 2018 (UTC)
- Thank you for this, designs are appreciated here. It's good that you remain objective about their advantages and disadvantages. -- Bilka (talk) - Admin 11:57, 13 May 2018 (UTC)
- Thank you for your incredible work on the Wiki. I am always 100% objective. In this particular scenario, the initial design is objectively flawed. Try connecting a simple clock (self-connected arithmetic combinator with + 1) into it and then disconnecting it suddenly, its memory will flicker between the last two values. More generally, if the current input is only given for 1 tick, then it flickers between the current and the previous input. I do not want to remove it without the approval of the original poster. Here is a demo of the flicker. This device on the left sends a 1-tick pulse of 1. The lamp turns on if the output signal is 1. -- SafwatHalaby (talk) 13:46, 13 May 2018 (UTC)
- (edit: fixed link): https://streamable.com/5r7w8
- Ok. Let's wait for a while in case the original poster has comments that we've missed.
- There's one advantage for the previous design: It's useful for someone that absolutely requires a reset-on-negative and not reset on a dedicated line, and does not care about the flicker issue. But that seems like a very rare edge case, and someone who needs it is most likely very experienced and doesn't need this guide. -- SafwatHalaby (talk) 15:54, 13 May 2018 (UTC)
There is a mistake in the new image for the "Positives and Negatives cell" by "Zippy." In the original image there is a green wire connecting the input of [2] to the input of [3] which must be present for the memory cell to function properly; without it the [M] output simply increments on each tick. In case that description is confusing, here is an image where I use the blueprint selection box to highlight the wire I'm talking about: https://i.imgur.com/XRLAEkh.png Maoman (talk) 11:07, 12 February 2021 (UTC)
The image for the decider combinator shows 1 greater than 30. It should be less than in order to work, and to match the text. -- Kathrynn (talk) 18:06, 13 February 2021 (UTC)
- Thank you to both of you for letting me know. I have fixed the two images. -- Bilka (talk) - Admin 12:30, 16 February 2021 (UTC)
I've updated this section. I found combinators very hard to understand. The examples always only include the combinators, but not how they're used. And I haven't found a source that clearly explains what's happening, on a tick-by-tick basis. So I've added some blueprints, some images, and a lot more explanatory text. However, I'm not sure if that is in the spirit of this tutorial. Maybe there should be two pages: This tutorial, which only explains *how* to use combinators, and another page that explains *why* it works, what's going on. --Ndh (talk) 13:15, 29 June 2024 (UTC)
- Thank you very much, this kind of "how it works" explanation is just right for this page. -- Bilka (talk) - Admin 15:25, 30 August 2024 (UTC)
Binary gates redundant?
The binary gates do not seem to have much function, because As of 0.16, arithmetic combinators have built-in binary logic support. -- SafwatHalaby (talk) 09:56, 13 May 2018 (UTC)
- I am not very experienced in combinators, but aren't the combinators OR, XOR and AND option bitwise instead of binary? User:My3DS changed the page to specify that just yesterday, so it seems important to me. -- Bilka (talk) - Admin 11:57, 13 May 2018 (UTC)
- I am not sure I understand the difference between "bitwise" and "binary" in the context of 1-bit inputs.
- The built-in OR, XOR, and AND produce exactly the same truth tables as the ones currently in the article for inputs of 1's and zeros, and are additionally capable of performing more than that for inputs greater than 1.
- -- SafwatHalaby (talk) 13:25, 13 May 2018 (UTC)
- Ok :), does the wiki have some sort of "pinging" system to let them see the conversation?. -- SafwatHalaby (talk) 15:54, 13 May 2018 (UTC)
- Thank you :) -- SafwatHalaby (talk) 14:06, 14 May 2018 (UTC)
- I can see the merit in these designs for 3 or more inputs. But I think it should be clear to the reader that the 2-input designs are alternatives to the built-in ones, and that the bitwise vs binary sentence should be clarified. -- SafwatHalaby (talk) 14:06, 14 May 2018 (UTC)
I have updated the page to have some clarification of what is meant by bitwise and some additional notes on the gates, as some can function with boolean or non-boolean values (or binary vs non-binary values), and some can have more inputs. Let me know if something doesn't make sense or should be improved. I'm also not sure if the built in ones should be under the others or before it. BlackJack69 (talk) 00:19, 12 February 2019 (UTC)
This is not a beginner tutorial at the moment
This page seems inappropriate for circuit beginners and I've added a sentence at the beginning to keep beginners from getting frustrated; the circuit network page and cookbook page should be more helpful for beginners. A beginner section on this (or on a different page) that explains how to connect wires, how signals work and so on would be useful.
There's also a decent overlap with the cookbook page (the madzuri setup, memory cells, sr latches, logic gates). And virtual signals are explained here and on the circuit network page. That is not a problem as such but it means there is more work to keep it updated. In sections where the intended depth of explanation is comparable between the pages, it may be better to keep the content on one page and have a link on the other one. Unique 2 (talk) 23:25, 10 March 2019 (UTC)
Working on improving the Virtual Signal section
So far I've rewritten the section explaining wildcards, as it was very terse compared to overview at the Circuit network#Logic signals section. Given that this is a tutorial page, they should be explained in depth, which I attempted to do.
I plan to add a similar explanation for the other virtual signals, but for now I've stayed up way past my bed time :) --ZeroKnight (talk) 10:41, 4 October 2019 (UTC)