14 пешек (61, 52)

| рубрика «Программы» | автор st
Метки: ,

Игра идет на доске 4х7, с каждой стороны участвует по 7 пешек. ПМК играет белыми, хотя это ограничение весьма условно ввиду симметрии и возможности передать право первого хода другой стороне.

Игра была реализована с целью максимально задействовать логические операции, появившиеся в МК-52/61. Для кодирования позиции потребовалось всего 2 регистра памяти, при этом скорость расчета нового хода находится в пределах 1-2 минут.

Несложные правила таковы.

Пешки ходят вперед только на 1 клетку. Взятие пешки противника производится по диагонали; взятие обязательно, как в шашках. Выигрыш при достижении одного из условий:

  • все пешки противника уничтожены
  • одна из пешек достигла последней горизонтали (8-я для белых, 1-я для черных)
  • у соперника нет больше ходов

Вводим программу в ПМК.

00.В/0  01.0    02.П5   03.7    04.П2   05.ИП2    06.1     07.-    08.F10x   09.ИП4
10.х    11.К{x} 12.ИП9  13.х    14.К[x] 15.П3     16.ИП5   17.-    18.Kx=0D  19.Fпи
20.KСЧ  21.2    22.х    23.К[x] 24./-/  25.Kx>=07 26.ИП3   27.П5   28.ИП2    29.П6
30.FL2  31.05   32.ИП6  33.ИП5  34.С/П  35.ПA     36.Kx#08 37.F10x 38.ПП     39.87
40.KИПA 41.К(+) 42.KПA  43.БП   44.34   45.ИП0    46.П4    47.ИП1  48.KППE   49.К{x}
50.Fx#0 51.55   52.FВx  53.П4   54.В/О  55.ИП4    56.ИП2   57.К/\  58.K(+)   59.П4
60.ИП2  61.KППE 62.KППB 63.ИП0  64.К/\  65.KППC   66.ИП5   67.К(+) 68.П5     69.KППC
70.ИП0  71.К/\  72.KППB 73.ИП5  74.K(+) 75.ИП4    76.К(+)  77.П4   78.В/0    79.ИП9
80.х    81.К{x} 82.8    83.+    84.В/0  85.K{x}   86.ИП9   87.F1/x 88.БП     89.80
90.K{x} 91.2    92.ПП   93.87   94.П2   95.KППB   96.K/\   97.П5   98.ИП4    99.ИП2
A0.KППC A1.K/\  A2.ИП5  A3.К\/  A4.П5   А5.В/0

В регистры заносим: 8,1111111 П0 и 8,8888888 П1 - начальные расстановки, соответственно, белых и черных пешек; 30 П7; 45 П8; 10 П9; 79 ПВ; 85 ПС; 25 ПД; 90 ПЕ.

Игру начинаем БП 35, теперь можно сделать ход или отдать его право калькулятору, набрав 0 и С/П.

Ввод хода.

  1. Снимаем пешку с поля: "код"; ПП; координата Y; В↑ координата Х; С/П. Здесь "код" = 1, если снимаем свою пешку или 0, если пешку ПМК - сам калькулятор не умеет менять позицию, придется сделать это за него. После останова на экране новая позиция.
  2. Точно так же ставим пешку на новое поле. Как вы поняли, процедура снимает пешку с поля, если она там была и ставит ее на поле, если её там не было (исключающее "ИЛИ")
  3. Набираем 0; С/П и ждем ответа калькулятора

После останова в RX - координата по оси Х (она также хранится в П5), в RY - координата по оси Y (в П6). Выполняем перестановку пешек новой позиции за ПМК и продолжаем игру. Если же после останова загорается ноль, значит ПМК сдается.

Изменение команды по адресу 19 ведет к смене стратегии игры, используемой ПМК:

  • 19.В↑ - правосторонняя
  • 19.КСЧ - парная
  • 19.Fп - левосторонняя (по умолчанию)

Желаем победы!

Дополнительная информация о программе.

  • Первый вариант игры была написан С. Тарасовым в феврале 1989 года (г. Ленинград).
  • Здесь опубликован второй улучшенный вариант, созданный в том же году.
  • Программа использовалась в КЛИП-е для обмена с другими авторами
  • Сохранилась запись "матча века", в котором МК-61 играл против МК-52