Slide 1

Slide 1 text

Binary

Slide 2

Slide 2 text

$ php -a Interactive shell

Slide 3

Slide 3 text

php > if (true) php > print "success"; success

Slide 4

Slide 4 text

php > if (true and false) php > print "success";

Slide 5

Slide 5 text

The sound of a thousand crickets...

Slide 6

Slide 6 text

php > if (true and false) php > print "success"; and wants both to be true

Slide 7

Slide 7 text

php > if (true or false) php > print "success"; success

Slide 8

Slide 8 text

php > if (false or true) php > print "success"; success

Slide 9

Slide 9 text

With added variables!

Slide 10

Slide 10 text

php > $one = true; php > $two = false; php > $three = true;

Slide 11

Slide 11 text

php > if (($one and $two) and $three) php > print "success";

Slide 12

Slide 12 text

...chirp

Slide 13

Slide 13 text

php > if (($one and $two) and $three) php > print "success"; this is false...

Slide 14

Slide 14 text

php > if (($one and !$two) and $three) php > print "success"; success So we invert it!

Slide 15

Slide 15 text

Success!

Slide 16

Slide 16 text

Zombies

Slide 17

Slide 17 text

* * with a custom theme

Slide 18

Slide 18 text

Includes mining...

Slide 19

Slide 19 text

...and crafting!

Slide 20

Slide 20 text

With added skellingtons!

Slide 21

Slide 21 text

...zombies

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

...and creepers

Slide 26

Slide 26 text

The bits that are important to us

Slide 27

Slide 27 text

switch

Slide 28

Slide 28 text

redstone (unpowered)

Slide 29

Slide 29 text

redstone (powered)

Slide 30

Slide 30 text

redstone lamp (unpowered)

Slide 31

Slide 31 text

redstone lamp (powered)

Slide 32

Slide 32 text

repeater

Slide 33

Slide 33 text

signal attenuation

Slide 34

Slide 34 text

problem?

Slide 35

Slide 35 text

redstone torch (powered)

Slide 36

Slide 36 text

redstone torch (unpowered)

Slide 37

Slide 37 text

and gate

Slide 38

Slide 38 text

input #1 input #2

Slide 39

Slide 39 text

If both inputs are on the output is on

Slide 40

Slide 40 text

or gate

Slide 41

Slide 41 text

input #1 input #2

Slide 42

Slide 42 text

If either input is on the output is on

Slide 43

Slide 43 text

Repeaters are diodes!

Slide 44

Slide 44 text

inverter (!)

Slide 45

Slide 45 text

Input off Output on

Slide 46

Slide 46 text

Input on Output off

Slide 47

Slide 47 text

No content

Slide 48

Slide 48 text

all switches are off...

Slide 49

Slide 49 text

$one = false; $two = false; $three = false;

Slide 50

Slide 50 text

$one = !$one; $two = !$two; $three = !$three;

Slide 51

Slide 51 text

$con1 = $one and $two;

Slide 52

Slide 52 text

$con2 = $three and $con1;

Slide 53

Slide 53 text

if ($con2) light();

Slide 54

Slide 54 text

W AT!

Slide 55

Slide 55 text

Minecraft does: allow us to model logic (by comparison) help us to think visually about control flow

Slide 56

Slide 56 text

Minecraft does not: implement voltage, current, resistance etc. make variable storage easy

Slide 57

Slide 57 text

4051 (multiplexer)

Slide 58

Slide 58 text

No content

Slide 59

Slide 59 text

accepts 1 input accepts 3 selection pins (high/low) passes the 1 input through to one of 8 outputs, depending on on the selection pins

Slide 60

Slide 60 text

Sound familiar?

Slide 61

Slide 61 text

No content

Slide 62

Slide 62 text

Minecraft simulation of the internals of the multiplexer!

Slide 63

Slide 63 text

Commandore 32

Slide 64

Slide 64 text

No content

Slide 65

Slide 65 text

No content

Slide 66

Slide 66 text

No content

Slide 67

Slide 67 text

Commandore 32 32x32 pixel screen 16 colour (wool) 6kb vram 32 bit bit.ly/commandore32

Slide 68

Slide 68 text

Thanks! twitter.com/assertchris joind.in/12313 bit.ly/arduino-minecraft