Сандер также получил указание, что новая машина должна уметь применять программное обеспечение, разработанное для Apple II. Хотя и была потребность в такой совместимости, учитывая большой резерв программ, разработанных для Apple II программистами со стороны, это требование ставило проект в тупик. Разработка компьютера с такими способностями «шиворот-навыворот» было нелегкой задачей. Обычно программному обеспечению диктовало условия аппаратное обеспечение. Например, чип микропроцессора определяет возможные операции машины с языком, а дисковод предъявляет определенные требования к операционной системе.

Когда аппаратное обеспечение двух компьютеров отличается, они могут работать на одинаковом программном обеспечении только через программу промежуточного уровня, встроенную в одну из машин. Этот промежуточный уровень позволяет вступить в действие режиму эмуляции. Уровень принимает команды от прикладных программ и переводит их в соответствующие команды или последовательности команд на расположенный под ним уровень аппаратного обеспечения. Процесс этот заведомо неэффективный, и эта неэффективность особенно очевидна в программах, требующих согласованных действий. Наиболее слабым местом аппаратного обеспечения в режиме эмуляции является микропроцессор, и Apple решила упростить ситуацию, применяя стоящий на Apple II устаревший и не имеющий достаточной мощности 6502 микропроцессор.

Указание об уровне эмуляции, отданное правлением Apple, можно было оспорить. Инженеры и программисты чувствовали, что этот режим станет серьезным тормозом ожидаемого прорыва в совершенствовании компьютера. Им самим такого рода машина была не нужна. Но отдел маркетинга видел в эмуляции стимул к продаже: существовавшая масса программ могла обеспечить немедленное распространение Apple III, а компания имела полное право заявить, что разрабатывает семейство компьютеров. Указание не было аннулировано.

В каком-то смысле эмуляция ограничила уровень творческой активности Сандера. Наиболее важные решения в разработке компьютера, например, выбор микропроцессора, принимали другие. Когда Чак Педдл разработал 6502, он даже не собирался использовать его как главный процессор в компьютере. У Apple была мысль установить дополнительный процессор для переключения на него некоторых нагрузок, но двухпроцессорная машина стала бы очень дорогой. К тому же Сандер ни против чего не протестовал. Ему нравился сам процесс разработки компьютеров, и он без возражений отправился выполнять данные ему указания.

Дэн Коттке участвовал в проекте в качестве техника. Каждый день Сандер должен был вручать Коттке чертеж новой части компьютера. Затем Дэн, надев наушники и слушая музыку, перечерчивал схему, чтобы сделать ее более четкой. За несколько месяцев у них был готов рабочий вариант главной конструкции.

В то же время компания создала команду специалистов по программному обеспечению, чтобы разработать для нового компьютера операционную систему и несколько прикладных программ. Руководство хотело, чтобы операционная система Apple III была лучше простой системы, созданной Возняком для Apple II. Действительно, для Apple III требовалась более сложная система, которая использовала бы ее дополнительную память.

Хотя микропроцессор 6502 в обычных условиях мог задействовать только 64 Кб памяти, Сандер обходил это ограничение при помощи технического приема, известного как коммутация банков. Компьютер должен иметь несколько устройств для хранения данных по 64 Кб, а операционная система будет следить за тем, какое устройство активизировать и какая информация имеется в каждом. Затем операционная система в случае необходимости могла делать передвижки из одного устройства в другое. Микропроцессор будет работать так, будто у машины всего 64 Кб, но приложения программного обеспечения сработают так, как будто машина сразу располагает 128 Кб или 256 Кб.

Сандер трудился над Apple III весь 1979 год и обнаружил, что использование режима эмуляции явно ограничивает возможности улучшения графики нового компьютера. В Apple II часть памяти была зарезервирована для битов и байтов, представляющих цвета точек на экране. Программное обеспечение этой машины позволило дополнять существующее изображение на экране линиями новых цветов. Для Apple III требовалась та же карта, того же размера и локализации в памяти и с теми же средствами допуска. Эти требования мешали усовершенствованию графики в новой машине.

Время от времени Стив Возняк подписывал проект Сандера, которого называл «невероятным инженером», но доверял коллеге выполнять всю работу без его вмешательства. Тем не менее позже он сожалел об эмуляционном программном обеспечении. Оно адекватно не эмулировало Apple II, как считал Возняк. «Apple заявляет, что они этого добились, но это не так», — сказал он.

Поскольку ни один проект не захватил полностью его внимания, Воз находился в шутливом настроении. Однажды он прокрался в отсек программиста и посадил в его компьютер мышь. Когда программист вернулся, ему пришлось выяснять, почему его Apple пищит.

Перейти на страницу:

Похожие книги