#wxSand: Owen Piette's Falling Sand Game #Version 4.4, File subversion 2 group Logic Trans1 Trans1a Trans3 if not Switch or and group Microchip Note Case 8way #Empty. element Empty 0 0 0 0.000 1.000 0.000 0.000 1 #Physical Elements #Connects transistors and other such items. element SC 128 128 128 0.000 1.000 0.000 0.000 1 #Wire Guard. Turns adjacent SCa to SC in direct SC -> SCa transfers. element WG 126 126 126 0.000 1.000 0.000 0.000 1 neighbor 1.0 WG SCa 1.0 WG SC neighbor 1.0 WG Buffr2a 1.0 WG Buffer2 neighbor 1.0 WG Buffr3a 1.0 WG Buffer3 #Buffer create. Creates buffer when turned 'on'. element BC 194 194 194 0.000 1.000 0.000 0.000 1 element BCa 194 195 194 0.000 1.000 0.000 0.000 0 neighbor 1.0 BC Bit11 1.0 BCa Buffer5 neighbor 1.0 BCa SC 1.0 BC Buffer1 neighbor 0.5 BC Buffer2 1.0 BC Buffer4 #Data Block. Stops buffer, freezing the bits into storage. element DB 192 192 192 0.000 1.000 0.000 0.000 1 element 10f 1 1 0 0.000 1.000 0.000 0.000 0 element 11f 254 254 255 0.000 1.000 0.000 0.000 0 element 20f 0 1 1 0.000 1.000 0.000 0.000 0 element 21f 255 255 254 0.000 1.000 0.000 0.000 0 neighbor 1.0 Buffer1 DB 1.0 Buffer2 DB neighbor 1.0 Bit10 DB 1.0 10f DB neighbor 1.0 Bit11 DB 1.0 11f DB neighbor 1.0 Bit20 10f 1.0 20f 10f neighbor 1.0 Bit21 10f 1.0 21f 10f neighbor 1.0 Bit20 11f 1.0 20f 11f neighbor 1.0 Bit21 11f 1.0 21f 11f neighbor 1.0 Bit10 20f 1.0 10f 20f neighbor 1.0 Bit11 20f 1.0 11f 20f neighbor 1.0 Bit10 21f 1.0 10f 21f neighbor 1.0 Bit11 21f 1.0 11f 21f neighbor 1.0 Buffer4 20f 1.0 SC 20f neighbor 1.0 Buffer4 21f 1.0 SC 21f neighbor 1.0 Buffer1 10f 1.0 Buffer2 Buffer1 neighbor 1.0 Buffer1 11f 1.0 Buffer2 Buffer1 neighbor 1.0 Buffer1 20f 1.0 Buffer2 Buffer1 neighbor 1.0 Buffer1 21f 1.0 Buffer2 Buffer1 #Data Transfer. Takes frozen bits and copies them to an adjacent wire. element DT 192 193 192 0.000 1.000 0.000 0.000 0 element DTo 192 193 193 0.000 1.000 0.000 0.000 0 element DT0 1 1 1 0.000 1.000 0.000 0.000 0 element DT1 254 254 254 0.000 1.000 0.000 0.000 0 #Wire Manipulators. element SCa 128 129 128 0.000 1.000 0.000 0.000 1 element Ent 129 129 128 0.000 1.000 0.000 0.000 1 element Ext 128 129 129 0.000 1.000 0.000 0.000 1 neighbor 1.0 Buffer1 Ent 1.0 Buffr1c Ent neighbor 1.0 Buffr1c SCa 1.0 Buffr1a Buffer2 neighbor 1.0 Buffr1a SCa 1.0 Buffr1a Buffr2a neighbor 0.5 Buffr1a Ext 1.0 Buffr1b Ext neighbor 0.5 Bit10a Ext 1.0 Bit10b Ext neighbor 0.5 Bit11a Ext 1.0 Bit11b Ext neighbor 0.5 Bit10b Ext 1.0 Bit10a Ext neighbor 0.5 Bit11b Ext 1.0 Bit11a Ext neighbor 1.0 Buffr1b SC 1.0 Buffr2a Buffer1 neighbor 1.0 Buffer2 Ext 1.0 Buffr2a Ext neighbor 1.0 Buffer3 Ext 1.0 Buffr3a Ext neighbor 1.0 SC Ext 1.0 SCa Ext #Wire Copier. Takes info from a stream and copies it to a new stream. element WC 129 129 129 0.000 1.000 0.000 0.000 1 element WCB 129 129 129 0.000 1.000 0.000 0.000 0 element W10 130 129 129 0.000 1.000 0.000 0.000 0 element W20 129 130 129 0.000 1.000 0.000 0.000 0 element W11 129 129 130 0.000 1.000 0.000 0.000 0 element W21 129 130 130 0.000 1.000 0.000 0.000 0 neighbor 1.0 WC Buffer1 1.0 WCB Buffer1 neighbor 1.0 WCB SCa 1.0 WCB Buffr1a neighbor 1.0 WCB Bit10 1.0 W10 Bit10 neighbor 1.0 WCB Bit20 1.0 W20 Bit20 neighbor 1.0 WCB Bit11 1.0 W11 Bit11 neighbor 1.0 WCB Bit21 1.0 W21 Bit21 neighbor 1.0 W20 Bit10 1.0 W10 Bit10 neighbor 1.0 W10 Bit20 1.0 W20 Bit20 neighbor 1.0 W20 Bit11 1.0 W11 Bit11 neighbor 1.0 W10 Bit21 1.0 W21 Bit21 neighbor 1.0 W21 Bit10 1.0 W10 Bit10 neighbor 1.0 W11 Bit20 1.0 W20 Bit20 neighbor 1.0 W21 Bit11 1.0 W11 Bit11 neighbor 1.0 W11 Bit21 1.0 W21 Bit21 neighbor 1.0 W10 Buffer4 1.0 WC Buffer4 neighbor 1.0 W11 Buffer4 1.0 WC Buffer4 neighbor 1.0 W20 Buffer4 1.0 WC Buffer4 neighbor 1.0 W21 Buffer4 1.0 WC Buffer4 neighbor 1.0 WC Buffr2a 1.0 WC Buffr4a neighbor 1.0 WC Buffr3a 1.0 WC Buffr4a neighbor 1.0 W10 Buffr2a 1.0 W10 Bit10 neighbor 1.0 W20 Buffr3a 1.0 W20 Bit20 neighbor 1.0 W11 Buffr2a 1.0 W11 Bit11 neighbor 1.0 W21 Buffr3a 1.0 W21 Bit21 neighbor 1.0 WC Bit10 1.0 W10 Bit10 neighbor 1.0 WC Bit11 1.0 W10 Bit11 neighbor 1.0 W10 SCa 1.0 W10 Bit10a neighbor 1.0 W11 SCa 1.0 W11 Bit11a #Bit Splitter. Splits a byte into 8 bits. The bits need to be re-routed, as they are all on the same line. element BS 162 161 161 0.000 1.000 0.000 0.000 0 #Bit Detector. If buffer is detected travelling down the line, it sends an 'on' upwards. element BD 162 162 162 0.000 1.000 0.000 0.000 0 element BDa 162 163 162 0.000 1.000 0.000 0.000 0 #Bit Rerouter. Makes one go up, one go right. element BR 164 165 164 0.000 1.000 0.000 0.000 0 element BRa 165 165 164 0.000 1.000 0.000 0.000 0 element BRb 164 165 165 0.000 1.000 0.000 0.000 0 #Case. Does nothing but look nice. element Case 0 128 64 0.000 1.000 0.000 0.000 1 element Case2 192 192 128 0.000 1.000 0.000 0.000 0 neighbor 1.0 Case SC 1.0 Case2 SC neighbor 1.0 Case SCa 1.0 Case2 SCa #No items under the "Microchip" section work yet, as per pending Bit Splitter, Detector, Rerouter, and Data Transfer. element Note 0 0 0 0.000 1.000 0.000 0.000 1 #Begin Transistor Parts. Based off of Purple100's concepts. #The transistor is always left to right processing. The a type deletes the bits instead of simply not letting them pass. #Transistors allow current to pass under certain conditions. Used in conjunction with logic. element Trans1 177 176 176 0.000 1.000 0.000 0.000 1 element Trans2 176 177 176 0.000 1.000 0.000 0.000 0 element Trans1a 175 174 174 0.000 1.000 0.000 0.000 1 element Trans2a 174 175 174 0.000 1.000 0.000 0.000 0 neighbor 1.0 Trans1 Buffer1 1.0 Trans1 Buffr1a neighbor 1.0 Trans1a Buffer1 1.0 Trans1a Buffr1a neighbor 1.0 Trans2a Buffer1 1.0 Trans2a Buffer5 neighbor 1.0 Trans2a Bit10 1.0 Trans2a Buffer5 neighbor 1.0 Trans2a Bit11 1.0 Trans2a Buffer5 neighbor 1.0 Trans2a Bit20 1.0 Trans2a Buffer5 neighbor 1.0 Trans2a Bit21 1.0 Trans2a Buffer5 #Put this adjacent to Trans1, or adjacent to SCa to send bits for true/false. element Trans3 178 177 176 0.000 1.000 0.000 0.000 1 element Trans3a 178 177 177 0.000 1.000 0.000 0.000 0 element Trans4 178 177 176 0.000 1.000 0.000 0.000 0 element Trans4a 178 178 176 0.000 1.000 0.000 0.000 0 neighbor 1.0 Trans4 Trans2 1.0 Trans4 Trans1 neighbor 1.0 Trans3 Trans1 1.0 Trans3 Trans2 neighbor 1.0 Trans4 Trans2a 1.0 Trans4 Trans1a neighbor 1.0 Trans3 Trans1a 1.0 Trans3 Trans2a neighbor 1.0 Trans4a SCa 1.0 Trans4 Bit11 neighbor 1.0 Trans3a SCa 1.0 Trans3 Bit10 neighbor 1.0 Trans4 Buffer2 1.0 Trans4 Buffer4 #The 'If' Gate gives 'on' when the input is 'on'. element If 255 0 0 0.000 1.000 0.000 0.000 0 element if 255 1 1 0.000 1.000 0.000 0.000 1 neighbor 1.0 If Bit10 1.0 if Buffer5 neighbor 1.0 if Bit10 1.0 if Buffer5 neighbor 1.0 If Bit11 1.0 If Buffer5 neighbor 1.0 if Bit11 1.0 If Buffer5 neighbor 1.0 If Trans3 1.0 If Trans4a neighbor 1.0 if Trans4 1.0 if Trans3a #The 'Not' Gate gives 'on' when the input is 'off'. element Not 0 255 0 0.000 1.000 0.000 0.000 0 element not 1 255 1 0.000 1.000 0.000 0.000 1 neighbor 1.0 Not Bit10 1.0 not Buffer5 neighbor 1.0 not Bit10 1.0 not Buffer5 neighbor 1.0 Not Bit11 1.0 Not Buffer5 neighbor 1.0 not Bit11 1.0 Not Buffer5 neighbor 1.0 Not Trans4 1.0 Not Trans3a neighbor 1.0 not Trans3 1.0 not Trans4a #The 'Switch' Gate switches every time a bit touches it, regardless of value. element Switch 0 0 255 0.000 1.000 0.000 0.000 1 element switch 1 1 255 0.000 1.000 0.000 0.000 0 neighbor 1.0 Switch Trans3 1.0 Switch Trans4a neighbor 1.0 switch Trans4 1.0 switch Trans3a neighbor 1.0 Bit10 Switch 1.0 Buffer5 switch neighbor 1.0 Bit11 Switch 1.0 Buffer5 switch neighbor 1.0 Bit10 switch 1.0 Buffer5 Switch neighbor 1.0 Bit11 switch 1.0 Buffer5 Switch #The 'Else' logic sends an 'on' when an adjacent logic is 'off'. Placeholder. #The 'Or' logic gives an 'on' when either input is 'on'. element Or 255 255 0 0.000 1.000 0.000 0.000 0 element or 255 255 1 0.000 1.000 0.000 0.000 1 element ora 255 255 2 0.000 1.000 0.000 0.000 0 neighbor 1.0 Or Trans3 1.0 Or Trans4a neighbor 1.0 ora Trans4 1.0 or Trans3a neighbor 1.0 Or Bit11 1.0 Or Buffer5 neighbor 1.0 or Bit11 1.0 Or Buffer5 neighbor 1.0 Or Bit10 1.0 or Buffer5 neighbor 1.0 or Bit10 1.0 ora Buffer5 #The 'And' logic gives an 'on' when both inputs are 'on'. element And 0 255 255 0.000 1.000 0.000 0.000 0 element AND 1 255 255 0.000 1.000 0.000 0.000 0 element and 2 255 255 0.000 1.000 0.000 0.000 1 neighbor 1.0 AND Trans3 1.0 And Trans4 neighbor 1.0 And Trans4 1.0 And Trans4a neighbor 1.0 and Trans4 1.0 and Trans3a neighbor 1.0 And Bit11 1.0 AND Buffer5 neighbor 1.0 and Bit11 1.0 AND Buffer5 neighbor 1.0 And Bit10 1.0 and Buffer5 neighbor 1.0 and Bit10 1.0 and Buffer5 #Non-physical Elements #Bit-code, Buffer element Buffer1 191 191 127 0.000 1.000 0.000 0.000 1 element Buffer2 127 127 63 0.000 1.000 0.000 0.000 0 element Buffer3 127 127 63 0.000 1.000 0.000 0.000 0 element Buffer4 191 191 127 0.000 1.000 0.000 0.000 0 neighbor 0.7 Buffer1 SC 1.0 Buffer2 Buffer1 neighbor 0.7 Buffer4 Buffer2 1.0 SC Buffer4 neighbor 0.7 Buffer4 Buffer3 1.0 SC Buffer4 neighbor 0.7 Buffer4 Buffer4 1.0 SC SC neighbor 0.7 Buffer2 SC 1.0 Buffer2 Buffer4 neighbor 0.7 Buffer3 SC 1.0 Buffer3 Buffer4 neighbor 1.0 Buffer4 Buffr2a 1.0 SC Buffr4a neighbor 1.0 Buffer4 Buffr3a 1.0 SC Buffr4a neighbor 1.0 Buffr4a Buffr2a 1.0 SCa Buffr4a neighbor 1.0 Buffr4a Buffr3a 1.0 SCa Buffr4a neighbor 1.0 Buffr4a Buffer2 1.0 SCa Buffer4 neighbor 1.0 Buffr4a Buffer3 1.0 SCa Buffer4 #Buffer Clear element Buffer5 127 127 191 0.000 1.000 0.000 0.000 0 neighbor 0.7 Buffer5 Bit10 1.0 Buffer5 Buffer2 neighbor 0.7 Buffer5 Bit11 1.0 Buffer5 Buffer2 neighbor 0.7 Buffer5 Bit20 1.0 Buffer5 Buffer3 neighbor 0.7 Buffer5 Bit21 1.0 Buffer5 Buffer3 neighbor 0.7 Buffer5 Buffer4 1.0 Buffer4 SC #Extra Buffers element Buffr1a 191 191 127 0.000 1.000 0.000 0.000 0 element Buffr1b 191 191 127 0.000 1.000 0.000 0.000 0 element Buffr1c 191 191 127 0.000 1.000 0.000 0.000 0 element Buffr2a 127 127 63 0.000 1.000 0.000 0.000 0 element Buffr3a 127 127 63 0.000 1.000 0.000 0.000 0 element Buffr4a 191 191 127 0.000 1.000 0.000 0.000 0 neighbor 1.0 Buffr1a SCa 1.0 Buffr2a Buffr1a neighbor 1.0 Buffr1b SC 1.0 Buffr2a Buffer1 neighbor 1.0 Buffr1b SCa 1.0 Buffr2a Buffr1b #Bit-code, Bit Odd element Bit10 1 0 0 0.000 1.000 0.000 0.000 0 element Bit11 254 255 255 0.000 1.000 0.000 0.000 0 element Bit10a 2 0 0 0.000 1.000 0.000 0.000 0 element Bit11a 253 255 255 0.000 1.000 0.000 0.000 0 element Bit10b 3 0 0 0.000 1.000 0.000 0.000 0 element Bit11b 252 255 255 0.000 1.000 0.000 0.000 0 neighbor 0.7 Bit10 Buffer2 1.0 Buffer3 Bit10 neighbor 0.7 Bit11 Buffer2 1.0 Buffer3 Bit11 neighbor 1.0 Bit10 Buffr2a 1.0 Buffr3a Bit10 neighbor 1.0 Bit11 Buffr2a 1.0 Buffr3a Bit11 neighbor 0.7 Bit10 SC 1.0 Buffer3 Bit10 neighbor 0.7 Bit11 SC 1.0 Buffer3 Bit11 neighbor 0.7 Bit10b SC 1.0 Buffr3a Bit10 neighbor 0.7 Bit11b SC 1.0 Buffr3a Bit11 neighbor 0.7 Bit10a SCa 1.0 Buffr3a Bit10a neighbor 0.7 Bit11a SCa 1.0 Buffr3a Bit11a #Bit-code, Bit Even element Bit20 0 0 1 0.000 1.000 0.000 0.000 0 element Bit21 255 255 254 0.000 1.000 0.000 0.000 0 neighbor 0.7 Bit20 Buffer3 1.0 Buffer2 Bit20 neighbor 0.7 Bit21 Buffer3 1.0 Buffer2 Bit21 neighbor 1.0 Bit20 Buffr3a 1.0 Buffr2a Bit20 neighbor 1.0 Bit21 Buffr3a 1.0 Buffr2a Bit21 neighbor 0.7 Bit20 SC 1.0 Buffer3 Bit10 neighbor 0.7 Bit21 SC 1.0 Buffer3 Bit11 #Test bit false item TestBit0 1 Buffer4 4 Bit10 Q "4Q" #Test bit true item TestBit1 1 Buffer4 4 Bit11 W "4W" #Test byte 51 item TestByte 1 Buffer1 1 Buffer4 4 Bit10 Q Bit11 W Bit20 E Bit21 R "4RQEWRQEW1" #Items Section #All Microchip items created with Purple100's "Itemizer 1.2" program. #None of the microchip items work yet (at least not yet), they just simply serve as examples. #The 8-way splitter reroutes split bits from a byte into order from top to bottom. item 8way 1 Case # SC % BRa & BR * BRb + SCa , Ext - Ent . "####################################", "####################,,,,,,,,,,,,,,##", "##############&,,,,,##.####%%%##-#%%", "##########,,,%*######%,,,,%##-%%%###", "#########&#-##+,,,,,%####%,,,,###%%%", "####,,,,%*#########%,,,,%#####%%####", "####,#-##+#-##&,,,%####%,,,,,###%%%%", "####,#####,,,%*#-####,,######,%#####", "###&##########+,,,%%,#-###,,%%,%%%%%", "%%%*###############,%%%##,-####,####", "###+##########&,,,,####%,#######,%%%", "####,#####,,,%*########,%######-####", "####,#-##&#-##+,,,,,%%,##%##,,,,,%%%", "####,,,,%*#########%,#.###%,########", "#########+#-##&,,,%##,####,%%%%%%%%%", "##########,,,%*#-#####,,,,##########", "##############+,,,%%%%%%%%%%%%%%%%%%", "####################################" #End