# Generated by stepmaker version 20081110 (instance: 173924304363)
# Generated on Wed Nov 12 14:46:53 2008
# Modified on Thu Nov 13 2008
# uname -a: Linux pink-intel 2.6.21-1.3194.fc7 #1 SMP Wed May 23 22:47:07 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux
# QEMU command line: ../qemu-kvm -hda ./win2000.qcow2 -cdrom /isos/windows/Windows2000_sp4.iso -m 256 -nographic -monitor unix:/tmp/monitor_173924304363,server,nowait &
step 35.38
screendump 20080101_000001_a13f39d98c144088a64946998b836a2d.ppm
# Windows 2000 Setup
barrier_2 287 31 4 7 b7ee25fd93cb9dee3f978c4665fab244 177
key ret
# --------------------------------
step 37.08
screendump 20080101_000002_26158a04d513e8cd68a1c35ccf28aa3b.ppm
# License
barrier_2 297 34 2 4 eab59057276e4d6bc28db13db4ae86bc 9
key f8
# --------------------------------
step 38.77
screendump 20080101_000003_81d9221b36b5e1eeab7fda769cd13f6d.ppm
# HDD Partitioning
barrier_2 489 35 21 42 550a43a3523215fe656880d37c408a6b 8
key ret
# --------------------------------
step 42.46
screendump 20080101_000004_4b38063a0558d5ed471d34bc01748d5b.ppm
# HDD Partitioning
barrier_2 518 45 38 198 718ccde8a2cafd8617fda80a38c0f3f1 18
key ret
# --------------------------------
step 675.85
screendump 20080101_000005_223279119860c5fd8bdc84f3cc43bb0f.ppm
# Regional Settings
barrier_2 112 20 88 75 ffdc315d1a9f9378a2f4a9711c6a998c 3167
key ret
# --------------------------------
step 677.35
screendump 20080101_000006_aa0284cf71135117428ea0942e858e58.ppm
# User and Organization
barrier_2 84 59 153 192 6957a9c20d3e7e7580d4d5071683267f 8
var user
key ret
# --------------------------------
step 680.88
screendump 20080101_000007_b9c230b12388053d4ff4e1dd8e5ea4e7.ppm
# CD-Key
barrier_2 82 19 109 272 f20310915f8326468d21a2b9e4923454 18
var cdkey
# --------------------------------
step 687.72
screendump 20080101_000008_f02975f4c32d4ac89004facdf952a341.ppm
barrier_2 77 18 107 274 08c7465ecbd2013ba7ad42f10d9913a3 34
key ret
# --------------------------------
step 690.72
screendump 20080101_000009_834d0a8d075853a1d0c99da50f03298e.ppm
# Computer Name
barrier_2 272 18 86 77 9f0919fced86a4d9764f26b5d7986cbd 15
key ret
# --------------------------------
step 693.30
screendump 20080101_000010_a2649ebc78425f623690dce371662dfd.ppm
# Date & Time
barrier_2 146 17 85 77 542e04e1aa9f59a3ec9736b51d880248 13
key ret
# --------------------------------
step 799.88
screendump 20080101_000011_bd7af2be0dc8d4c339b44001909cfd35.ppm
# Typical Settings
barrier_2 120 20 155 186 0fec8cfdd2f35f78539021e151b11e07 533
key ret
# --------------------------------
step 803.66
screendump 20080101_000012_3250dcd46165a41a40386453d0576373.ppm
# Workgroup
barrier_2 202 18 85 77 bba6e9ec2c10635d7f391b85ae07c304 19
key ret
# --------------------------------
step 1372.12
screendump 20080101_000013_a36f8ad80338c278d1c4b9745e651da7.ppm
# Completing...
barrier_2 280 48 242 77 19614ab90587c86d677d808ae74ea47d 2842
key ret
# --------------------------------
step 1416.52
screendump 20080101_000014_06c29db5a64669f08b80549930bd3ae9.ppm
# Network ID
barrier_2 239 48 238 78 fbdc278aa9b95f2b92c2544b5af22f1b 222
key ret
# --------------------------------
step 1418.70
screendump 20080101_000015_ff403bc3a1cb1b9193127b3e08289fdb.ppm
# user name & password
barrier_2 155 49 103 208 13a7ba9af1f5b9c5ca824f446aff1ed0 11
key ret
# --------------------------------
step 1420.78
screendump 20080101_000016_6a9f342e7c924e160cd74f7a16755004.ppm
barrier_2 220 45 241 78 188087ff65a1a21b48c8c0bb098d2758 10
key ret
# --------------------------------
step 1440.81
screendump 20080101_000017_003bde606ea103f092cf0dec95ec25cf.ppm
# Windows 2000 Desktop
barrier_2 57 25 0 455 a244e060dc4e04cd69a7a0d908301eca 200
key ctrl-esc
# --------------------------------
step 1443.08
screendump 20080101_000018_ee1f4970f945e1d340187009fbf971a6.ppm
# Windows 2000 Shutdown
barrier_2 141 27 28 424 faac78be4bdea48f691d8ee713a84677 11
key u
# --------------------------------
step 1446.72
screendump 20080101_000019_4f6e7ddc49f75a0b72c6bd0117853e96.ppm
# Windows 2000 Shutdown
barrier_2 284 51 169 178 8797901d6da0b71e7414bd607d5173ef 18
key ret
sleep 20
# --------------------------------
