[ Сообщений: 1386 ]  На страницу Пред.  1, 2, 3, 4, 5, 6 ... 47  След.
3DO Doom sources released 
Автор Сообщение
Аватара пользователя
Ужас, летящий на крыльях ночи!
Ужас, летящий на крыльях ночи!

Группа: Разработчики
Сообщения: 9069
Регистрация: 17 май 2010, 01:04
Модель 3DO: Panasonic FZ-10 NTSC-U

Yaranga писал(а):
Только копипастить. По-другому здесь корректно вставить не получается.
Так я уже прочитал, это не то :ne_ne:


03 дек 2014, 20:12
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Перевод файла READ.me
Перевод файла READ.me
Да, это малоизвестный порт Doom на 3DO. Во-первых, это была работа продолжительностью в 10 недель. Меня ввели в заблуждение о степени готовности порта, когда предлагали эту работу. Мне говорили, что была версия с новыми уровнями, оружием и фишками, и нужно было всего лишь "отполировать" и оптимизировать код до выпуска на прилавки. После моих неоднократных просьб предоставить эту версию, мне стало известно, что ее не существует. Art Data ошибочно предполагали, что для портирования игры с одной платформы на другую достаточно всего лишь откомпилировать код и добавить новое оружие проще простого.

О, нет...

Мои друзья в 3DO просили Doom, они хотели, чтобы игра была на их платформе. А так как Рождество 1995 было скоро (я взяла эту работу в Августе 1995 до середины октября «ухода на золото»), я фактически жила в офисе, прерываясь только на сон, доделала работу.

Примечания…

У меня не было времени, чтобы портировать драйвер музыки. У меня в распоряжении была музыкальная группа, которую наняла Art Data для переделки саундтрека. Все, что мне нужно было сделать, это использовать потоковое аудио.

Это было замечательным ходом, потому что в сравнении с тусклой графикой, музыка получила хорошие отзывы.

Операционная система 3DO была спроектирована так, что не затрагивала запущенные приложения и очистку памяти. От этого было много ошибок, вызванных утечкой памяти. Итак, когда я хотела запустить Logicware и id software логотипы при загрузке игры, память 3DO «забивалась» и не очищалась. Чтобы решить эту проблему, я написала 2 приложения: одно для показа 3DO логотипа, и другую для показа logicware логотипа. После их отработки, они удалялись из памяти и освобождали место для загрузки основной игры. Основное приложение уже работало без утечек памяти.

В исходниках есть видеоролик логотипа Electronic Arts, потому что было время, когда EA собирались распространять игру, но сделка не состоялась.

Вертикальные стены отрисовываются полосами, используя cel-engine. Однако, cel-engine не поддерживает перспективное 3D изображение, поэтому пол и потолок отрисовываются программно. У меня просто не хватило времени, чтобы полностью перевести весь код на cel-engine, поэтому сейчас присутствуют разрывы между текстур.

Мне пришлось написать собственную библиотеку ANSI C string.h потому что 3DO поставляла string.h с ошибками!!! Как это могло произойти?!?! А они это сделали! Я потратила день на переписывание всех необходимых мне функций в ARM 6.

Эта игра использует Burgerlib 2. Моя первая «С» версия Burgerlib, потому что оригинальная Burgerlib была разработана 65816 для SNES на Apple IIgs. Если вы сверитесь с библиотекой Burgerlib 5 (текущая версия на данный момент на github), вы обратите внимание, что некоторые куски кода все еще используются.

Я надеюсь, что каждый, кто просмотрит этот код, узнает что-то новое. Я была бы счастлива ответить на вопросы об этом аде, который я прошла, чтобы сделать эту игру. Единственное, чего бы я хотела, так это больше времени для полировки кода в 1995, чтобы вместо худшего порта Doom получился бы лучший.

И еще...

Интеллектуальная собственность Doom является эксклюзивной собственностью ZeniMax.
Это предложение я не понял. No transfer of the intellectual property of DOOM or any transfer of the ownership of the sounds, art or other game assets are given nor implied.
Если кто-нибудь хочет продавать 3DO версию Doom, свяжитесь с ZeniMax для выдачи лицензии.

Rebecca Ann Heineman
Olde Skuul
Seattle, WA


03 дек 2014, 20:13
Аватара пользователя
Всё, я здесь навсегда!
Всё, я здесь навсегда!

Группа: Пользователи
Сообщения: 164
Регистрация: 23 авг 2010, 17:48
Откуда: Санкт Петербург
Модель 3DO: GoldStar GDO-202P

Правая часть EXTRAMAP вырезана из PC версии E2M5, и она была одна из частей, которую вырезали в Jaguar версии. Левая фиг знает откуда.


03 дек 2014, 20:50
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Yaranga писал(а):
Ну да, действительно похоже на жалкие попытки.

Попыток не было. Была версия от Jaguar. :nez-nayu: А там лимит на размер ROM.

Добавлено спустя 5 минут 54 секунды:
aliast писал(а):
Собрал под виндой, запустил на FreeDO. А Мак-версию я не знаю как собрать, не дружу с MPW Shell

Как я понял, мы получили exe утилиты, которая должна запаковать все наши спрайты и прочее в REZFILE. Видимо, ее нужно запустить из командной строки с аргументами (исходные папки/файлы, выходной REZFILE). Делать это, скорее всего, придется в MPW Shell. Кто умеет, посмотрите в исходниках, какие должны быть аргументы и как вводятся?


03 дек 2014, 21:32
Аватара пользователя
Всё, я здесь навсегда!
Всё, я здесь навсегда!

Группа: Пользователи
Сообщения: 164
Регистрация: 23 авг 2010, 17:48
Откуда: Санкт Петербург
Модель 3DO: GoldStar GDO-202P

Yaranga писал(а):
Ну да, действительно похоже на жалкие попытки.

Попыток не было. Была версия от Jaguar. :nez-nayu:


Попытки были до того, как они связались с Logicware. Были планы на новые уровни, FMV вставки, новое оружие. Из этого всего в финальный билд перешла музыка, и скорее всего этот уровень может быть огрызком из того периода.


03 дек 2014, 21:44
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Кто-нибудь, кто знает С# гляньте исходники makerez. Интересует, как эту прогу использовать после ее компиляции? Нужны ли аргументы? Необходим ли внешний скрипт? Требования к размещению исходных файлов? Параметры сжатия (LZSS or RLE)?

Добавлено спустя 6 минут 57 секунд:
Обнаружил мини-мануал.
"# v1.3 Copyright 1997 by LogicWare\n"
"# This program will create a resource data file using a script\n"
"# Usage: MakeRez Infile\n"
"# Switches : [-H] = Do not save the .h file EVER!, [-V] Verbose output\n"
"#   [-B4000] Number of resource entries to allocate internally.\n"
"# Script commands are as follows\n"
"# TYPE 1-65535 [1]\n"
"# ENDIAN BIG | LITTLE [LITTLE]\n"
"# COMPRESS LZSS | NONE [NONE]\n"
"# OUTPUTNAME Filename.rez [RezFile]\n"
"# HEADERFILE Header.h\n"
"# LOADFIXED\n"
"# LOADHANDLE\n"
"# LOAD 1-65535 Filename\n"
"# LOADNEXT Filename\n"
"# HLOAD rRezRef 1-65535 Filename\n"
"# HLOADNEXT rRezRef Filename\n"


Добавлено спустя 2 часа 17 минут 41 секунду:
Сравнил несколько библиотек из SDK и из комплекта компиляции под Win. Идентичны. Из чего следует вывод, что, добавив библиотеку Burgerlib и прочие из комплекта, можно получить тот же функционал. :ti_pa:


03 дек 2014, 22:33
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Не знаю, что случилось, но я почему-то не могу сделать makefile средствами 3DO SDK. При любом раскладе (исходнике) выкидывает вот это:
Изображение
Никто не знает, как это починить?
На этом же скрине в тексте видна ошибка компиляции. Компилятор не может создать промежуточный файл Ammain.c.o. По какой причине также не понятно, диск работает и на запись и на чтение. :du_ma_et: :-(

Добавлено спустя 1 минуту 55 секунд:
А вот ошибка в файле Threedo.c, при попытке скомпилировать исходники под Windows. Также никаких соображений по фиксу этой траблы. :-(
Изображение

Добавлено спустя 42 минуты 8 секунд:
Удалось победить создание промежуточного файла Ammain.c.o. Остальные ошибки остались.

Добавлено спустя 1 час 9 минут 18 секунд:
А вот MPW Shell выдает практически тоже самое, только на 2 ошибки больше.
Изображение

Добавлено спустя 54 минуты 5 секунд:
aliast писал(а):
Да а смысл сейчас что-то объяснять, если я сделал ерунду) В двух словах: скопировал Burger.lib и Burger.h в 3DO SDK папки includes и lib соответственно, прописал Burger.lib в makefile в разделе где перечисляются все либы, добавил туда же armlib_n.32b (без неё ругается на fgets)
Также пришлось добавить в исходник проги #include "filestream.h" иначе ругалось на FSEEK_SET. Вроде бы всё.

Можешь дать свои папки с libs и includes, а также makefile для этой проги?

Добавлено спустя 46 минут 44 секунды:
Оказывается, ошибка не нова.
3DO SDK
Видимо, у меня что-то работает не так.


04 дек 2014, 20:25
Аватара пользователя
Специалист
Специалист

Группа: Разработчики
Сообщения: 1298
Регистрация: 04 дек 2009, 12:15
Модель 3DO: Нет

Versus писал(а):
Оказывается, ошибка не нова.

Эта ошибка фиксится заменой строк
#include <stdio.h>
на
#include "stdio.h"
Versus писал(а):
А вот ошибка в файле Threedo.c, при попытке скомпилировать исходники под Windows. Также никаких соображений по фиксу этой траблы

1) Ошибку с Rect я решил, переименовав Rect в rect (в graphics.h, хотя править что-то в SDK явно не правильно, разве что Дум собирался в другой версии 3DO SDK?)
2) FadeToBlack я вроде бы тупо закомментировал
В результате вылезла ещё 18 ошибок о ненайленных символах. Скорее всего там надо какие-то либы подключать, а какие - непонятно. После подключения IntMath.lib часть ошибок пропала, но не все.


05 дек 2014, 07:17
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

aliast
Спасибо за ответ! Буду пробовать. :-):

Добавлено спустя 4 минуты 46 секунд:
aliast писал(а):
После подключения IntMath.lib часть ошибок пропала, но не все.

lib или .h?


05 дек 2014, 10:10
Аватара пользователя
Специалист
Специалист

Группа: Разработчики
Сообщения: 1298
Регистрация: 04 дек 2009, 12:15
Модель 3DO: Нет

Versus писал(а):
lib или .h?

lib (через makefile). IntMath.h есть в Threedo.c


05 дек 2014, 11:32
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

aliast писал(а):
разве что Дум собирался в другой версии 3DO SDK?

Тоже об этом подумал.


05 дек 2014, 15:26
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

aliast
Выручай. :du_ma_et:
Сделал, как ты написал (кавычки, Rect->rect, FadeToBlack закомментировал). Откомпилировал Doom. Так экзешник получается совершенно другим, да еще и размер отличается. Исходный Launchme от игры - 222 кб, скомпилированный - 237 кб. Пришлось закомментировать строку FadeToBlack в displayutils.h. Игра не запускается вообще. :-(
А с Makerez тоже фигня какая-то. В исходниках поправил <> на "", где требовалось, не помогает.

Добавлено спустя 8 минут 10 секунд:
Пробовал скомпилить 2 разных исходника Makerez. Результат - на скринах.
Изображение Изображение

Добавлено спустя 4 минуты 36 секунд:
Не раскроешь секрет своих MakeFile? У меня для Doom получился такой:
3DODEV   = C:/3DODev/
ARMDEV   = C:/ARM250/
DEBUG   = 0

NAME   = LaunchMe
STACKSIZE = 4096
BANNER   = Banner.bmp
FILESYSTEM   = takeme

CC      = $(ARMDEV)bin/armcc
AS       = $(ARMDEV)bin/armasm
LD      = $(ARMDEV)bin/armlink
RM      = $(3DODEV)bin/rm
MODBIN   = $(3DODEV)bin/modbin
MAKEBANNER   = $(3DODEV)bin/MakeBanner


CCFLAGS = -bi -zps1 -za1 -wn -ff -fa -i /swst/fp -d DEBUG=$(DEBUG) -cpu ARM6
ASFLAGS = -BI -i $(3DODEV)includes/
INCPATH   = -I $(3DODEV)includes/
LDFLAGS = -aif -r -b 0x00 -sym $(NAME).sym
LIBPATH   = $(3DODEV)libs/
STARTUP = $(LIBPATH)cstartup.o

LIBS    = $(LIBPATH)burger.lib \
   $(LIBPATH)lib3do.lib \
   $(LIBPATH)filesystem.lib \
   $(LIBPATH)graphics.lib \
   $(LIBPATH)audio.lib \
   $(LIBPATH)music.lib \
   $(LIBPATH)operamath.lib \
   $(LIBPATH)input.lib \
   $(LIBPATH)string.lib \
   $(LIBPATH)clib.lib \
   $(LIBPATH)swi.lib \
   $(LIBPATH)IntMath.lib \

#   $(LIBPATH)3dlib.lib $(LIBPATH)armlib.32b \
#   $(LIBPATH)compression.lib $(LIBPATH)codec.lib \
#   $(LIBPATH)cpluslib.lib $(LIBPATH)DataAcq.lib \
#   $(LIBPATH)DS.lib $(LIBPATH)exampleslib.lib \
#   $(LIBPATH)international.lib $(LIBPATH)jstring.lib \
#   $(LIBPATH)memdebug.lib $(LIBPATH)mvelib.lib \
#   $(LIBPATH)obsoletelib3do.lib $(LIBPATH)pgl.lib \
#   $(LIBPATH)Subscriber.lib \

SRC_S      = $(wildcard src/*.s)
SRC_C      = $(wildcard src/*.c)

OBJ   += $(SRC_S:.s=.o)
OBJ   += $(SRC_C:.c=.o)

all: $(NAME)


$(NAME): $(OBJ)
   $(3DODEV)bin/MakeBanner.exe $(3DODEV)bin/Banner.bmp  $(FILESYSTEM)/BannerScreen
   $(LD) -dupok -o $(FILESYSTEM)/$(NAME). $(LDFLAGS) $(STARTUP) $(LIBS) $(OBJ)
   $(MODBIN) $(STACKSIZE) $(FILESYSTEM)/$(NAME)
   $(3DODEV)bin/3doiso.exe -in $(FILESYSTEM) -out C:\Doom\3DO.iso
   $(3DODEV)bin/3doencrypt.exe genromtags C:\Doom\3DO.iso

%.o: %.c
   $(CC) $(INCPATH) $(CCFLAGS) -c $< -o $@

%.o: %.s
   $(AS) $(INCPATH) $(ASFLAGS) $< -o $@
   

clean:
   $(RM) -f $(OBJ)
   $(RM) -f $(FILESYSTEM)/$(NAME)

Если сравнивать с оригинальным Doom.make, получаются несоответствия в конце файла. У меня:
all: $(NAME)

$(NAME): $(OBJ)
   $(3DODEV)bin/MakeBanner.exe $(3DODEV)bin/Banner.bmp  $(FILESYSTEM)/BannerScreen
   $(LD) -dupok -o $(FILESYSTEM)/$(NAME). $(LDFLAGS) $(STARTUP) $(LIBS) $(OBJ)
   $(MODBIN) $(STACKSIZE) $(FILESYSTEM)/$(NAME)
   $(3DODEV)bin/3doiso.exe -in $(FILESYSTEM) -out C:\Doom\3DO.iso
   $(3DODEV)bin/3doencrypt.exe genromtags C:\Doom\3DO.iso

%.o: %.c
   $(CC) $(INCPATH) $(CCFLAGS) -c $< -o $@

%.o: %.s
   $(AS) $(INCPATH) $(ASFLAGS) $< -o $@
   

clean:
   $(RM) -f $(OBJ)
   $(RM) -f $(FILESYSTEM)/$(NAME)

Фрагмент оригинала Doom.make:
#####################################
#   Default build rules
#####################################
All            Д   {Program}

{ObjectDir}      Д   :

.c.o         Д   .c doom.h
   {CC} {COptions} -o {TargDir}{Default}.c.o {DepDir}{Default}.c

.s.o         Д   .s
   {ASM} {SOptions} -o {TargDir}{Default}.s.o {DepDir}{Default}.s


#####################################
#   Target build rules
#####################################
{Program}      ДД   {Program}.make {OBJECTS}
   {LINK}   {LOptions}               ¶
         -o {Program}            ¶
         "{3DOLibs}cstartup.o"      ¶
         {OBJECTS}               ¶
         {LIBS}
   modbin {Program} -stack 10000
   SetFile {Program} -c 'EaDJ' -t 'PROJ'
   stripaif {Program} -o {Program}
   duplicate -y {Program} :Game3DO:remote:

Есть соображения, как это привести в соответствие?



Для MakeRez получился такой:
3DODEV   = C:/3DODev/
ARMDEV   = C:/ARM250/
DEBUG   = 0

NAME   = LaunchMe
STACKSIZE = 4096
BANNER   = Banner.bmp
FILESYSTEM   = takeme

CC      = $(ARMDEV)bin/armcc
AS       = $(ARMDEV)bin/armasm
LD      = $(ARMDEV)bin/armlink
RM      = $(3DODEV)bin/rm
MODBIN   = $(3DODEV)bin/modbin
MAKEBANNER   = $(3DODEV)bin/MakeBanner


CCFLAGS = -bi -zps1 -za1 -wn -ff -fa -i /swst/fp -d DEBUG=$(DEBUG) -cpu ARM6
ASFLAGS = -BI -i $(3DODEV)includes/
INCPATH   = -I $(3DODEV)includes/
LDFLAGS = -aif -r -b 0x00 -sym $(NAME).sym
LIBPATH   = $(3DODEV)libs/
STARTUP = $(LIBPATH)cstartup.o

LIBS    = $(LIBPATH)burger.lib \
   $(LIBPATH)lib3do.lib \
   $(LIBPATH)filesystem.lib \
   $(LIBPATH)graphics.lib \
   $(LIBPATH)audio.lib \
   $(LIBPATH)music.lib \
   $(LIBPATH)operamath.lib \
   $(LIBPATH)input.lib \
   $(LIBPATH)string.lib \
   $(LIBPATH)clib.lib \
   $(LIBPATH)swi.lib \
   $(LIBPATH)IntMath.lib \
   $(LIBPATH)armlib.32b \

#   $(LIBPATH)3dlib.lib $(LIBPATH)armlib.32b \
#   $(LIBPATH)compression.lib $(LIBPATH)codec.lib \
#   $(LIBPATH)cpluslib.lib $(LIBPATH)DataAcq.lib \
#   $(LIBPATH)DS.lib $(LIBPATH)exampleslib.lib \
#   $(LIBPATH)international.lib $(LIBPATH)jstring.lib \
#   $(LIBPATH)memdebug.lib $(LIBPATH)mvelib.lib \
#   $(LIBPATH)obsoletelib3do.lib $(LIBPATH)pgl.lib \
#   $(LIBPATH)Subscriber.lib \

SRC_S      = $(wildcard src/*.s)
SRC_C      = $(wildcard src/*.c)

OBJ   += $(SRC_S:.s=.o)
OBJ   += $(SRC_C:.c=.o)

all: $(NAME)


$(NAME): $(OBJ)
   $(3DODEV)bin/MakeBanner.exe $(3DODEV)bin/Banner.bmp  $(FILESYSTEM)/BannerScreen
   $(LD) -dupok -o $(FILESYSTEM)/$(NAME). $(LDFLAGS) $(STARTUP) $(LIBS) $(OBJ)
   $(MODBIN) $(STACKSIZE) $(FILESYSTEM)/$(NAME)
   $(3DODEV)bin/3doiso.exe -in $(FILESYSTEM) -out C:\Doom\3DO.iso
#   $(3DODEV)bin/3doencrypt.exe genromtags C:\Doom\3DO.iso

%.o: %.c
   $(CC) $(INCPATH) $(CCFLAGS) -c $< -o $@

%.o: %.s
   $(AS) $(INCPATH) $(ASFLAGS) $< -o $@
   

clean:
   $(RM) -f $(OBJ)
   $(RM) -f $(FILESYSTEM)/$(NAME)


06 дек 2014, 16:00
Аватара пользователя
Специалист
Специалист

Группа: Разработчики
Сообщения: 1298
Регистрация: 04 дек 2009, 12:15
Модель 3DO: Нет

У меня такие различия:
...
STACKSIZE = 10000
...
CCFLAGS = -O1 -bi -apcs /swst -d DEBUG=0 -cpu ARM60 -g
ASFLAGS = -bi
INCPATH   = -I$(3DODEV)includes
LDFLAGS = -debug -remove -ro-base 0x00

Но у меня так и не получилось скомпилировать сам Дум, только Makerez :(
По ошибкам:
1) static char RezFileName[32] = "RezFile"; заменить на char RezFileName[32] = "RezFile";
2) Подключить #include <filestream.h>
3) Подключить либу armlib_c.32b (у тебя armlib.32b? Видимо в ней нет функции fgets(), хз)
Короче, у меня не было столько ошибок :) Там ещё остаётся ошибка со знаком "=", я не помню как её исправить. Сейчас сравнил оригинальный файл с моим MakeRez.c Вот отличия:
1)
#include "stdio.h"
#include "stdlib.h"
#include "string.h"

2)
#include <filestream.h>

3)
  char RezFileName[32] = "RezFile";

Других правок не делал.

Последний раз редактировалось aliast 06 дек 2014, 16:40, всего редактировалось 3 раз(а).



06 дек 2014, 16:27
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Странно. Изменил make-файл для Makerez как у тебя, и выдает тоже самое. :du_ma_et:

Добавлено спустя 6 минут:
Версия ARM SDT v2.50?


06 дек 2014, 16:36
Аватара пользователя
Специалист
Специалист

Группа: Разработчики
Сообщения: 1298
Регистрация: 04 дек 2009, 12:15
Модель 3DO: Нет

Versus писал(а):
Версия ARM SDT v2.50?

да


06 дек 2014, 16:43
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Заменил библиотеку armlib_c.32b. Ничего не изменилось. :-(

Добавлено спустя 1 час 9 минут 34 секунды:
aliast писал(а):
Ошибку с Rect я решил, переименовав Rect в rect

Такой финт в Маке не прокатывает.
aliast писал(а):
FadeToBlack я вроде бы тупо закомментировал

Тоже не прокатывает.

Добавлено спустя 3 часа 33 минуты 38 секунд:
Rebecca Heineman писал(а):
I wanted to ensure that this code drop isn't lost into the dust bin of history. I'm happy the CD survived 19 years in a box.

:bra_vo:


06 дек 2014, 16:55
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Штрафники
Сообщения: 7444
Регистрация: 23 авг 2011, 20:57
Модель 3DO: Panasonic FZ-10 NTSC-U

Rebecca Heineman писал(а):
I wanted to ensure that this code drop isn't lost into the dust bin of history. I'm happy the CD survived 19 years in a box.

:bra_vo:

Пущай не беспокоится, он в правильных руках - русских :a_g_a: , забавная она конечно :hi_hi_hi:


06 дек 2014, 21:50
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

aliast писал(а):
FadeToBlack

Есть и в burger.h тоже. Значит ли это, что они мешают друг другу?

Добавлено спустя 7 минут 36 секунд:
aliast
Скомпилированный тобой Makerez какой версии? Можешь сделать еще один недостающий?


07 дек 2014, 00:04
Аватара пользователя
Специалист
Специалист

Группа: Разработчики
Сообщения: 1298
Регистрация: 04 дек 2009, 12:15
Модель 3DO: Нет

Versus писал(а):
Есть и в burger.h тоже. Значит ли это, что они мешают друг другу?

Да запросто. В строке #include можно указать полный путь к нужному файлу, если не ошибаюсь через качычки "".
Versus писал(а):
Скомпилированный тобой Makerez какой версии? Можешь сделать еще один недостающий?

Попробую. Мой 1995.

Добавлено спустя 2 минуты 42 секунды:
aliast писал(а):
FadeToBlack я вроде бы тупо закомментировал

Я его кстати в Burger.h и закомментировал как раз.
//#define FadeToBlack() FadeToBlackX()      /* The 3DO library has a call like this */


07 дек 2014, 14:48
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

aliast писал(а):
Я его кстати в Burger.h и закомментировал как раз.

А я закомментировал в displayutils.h. Насколько я понял, строка
#define FadeToBlack() FadeToBlackX()      /* The 3DO library has a call like this */

говорит нам о том, что когда в коде встречается FadeToBlack(), ее нужно понимать, как FadeToBlackX(). А уже в свою очередь FadeToBlackX() работает несколько по-другому, чем в стоковом SDK. Механизм FadeToBlackX() прописан в fadetoblack.c.


07 дек 2014, 14:58
Аватара пользователя
Специалист
Специалист

Группа: Разработчики
Сообщения: 1298
Регистрация: 04 дек 2009, 12:15
Модель 3DO: Нет

А где эта функция используется? Ни в исходниках дума, ни в BurgerLib я её вызова не нашёл.


07 дек 2014, 17:30
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Используется в двух маленьких прогах для показа логотипов. Все. :-):


07 дек 2014, 18:51
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Заметил, что исходники, переброшенные в эмулятор Мака, не распознаются корректно. В частности, makefile исходников logo.c. Под виндой файлы открываются нормально, а в Маке makefile не полностью распознается при открытии. Текст присутствует, но символы перехода строк сбиты, да и может еще чего... Тоже самое с исходниками Doom. Пока я не взял zip архив, присланный Ребеккой и не распаковал его уже в Маке, makefile так и отказывался читаться корректно. И, да, MPW эти файлы "не видит".
Если запаковать исходники в zip в винде, а потом распаковать в Маке (ну как гарантия переноса без порчи) все равно файлы не читаются. Причем, это касается и *.c файлов. В чем трабла - хз...


11 дек 2014, 20:13
Аватара пользователя
Консольный монстр
Консольный монстр

Группа: Разработчики
Сообщения: 2108
Регистрация: 21 окт 2011, 21:37
Откуда: Слобожанщина, 31Rus
Модель 3DO: GoldStar GDO-101M

Вот для этого и может пригодиться тот же SheepShaver с предустановленной MacOS 9. Пару раз почему-то выручал...


11 дек 2014, 20:26
Аватара пользователя
Ужас, летящий на крыльях ночи!
Ужас, летящий на крыльях ночи!

Группа: Разработчики
Сообщения: 9069
Регистрация: 17 май 2010, 01:04
Модель 3DO: Panasonic FZ-10 NTSC-U

Versus писал(а):
Заметил, что исходники, переброшенные в эмулятор Мака, не распознаются корректно.
Наверно, расширения не распознаёт, в маке они через одно место хранятся в атрибутах => 3DO SDK


11 дек 2014, 21:32
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Yaranga писал(а):
Вот для этого и может пригодиться тот же SheepShaver с предустановленной MacOS 9

А в чем разница?


11 дек 2014, 22:13
Аватара пользователя
Консольный монстр
Консольный монстр

Группа: Разработчики
Сообщения: 2108
Регистрация: 21 окт 2011, 21:37
Откуда: Слобожанщина, 31Rus
Модель 3DO: GoldStar GDO-101M

Versus писал(а):
А в чем разница?
Я ж говорю, не разбирался, но что не открывается в одной системе, почему-то может спокойно заработать в другой. Откопать почему так а не этак, конечно можно, если долго копать и если получится выяснить, где и какой глюк ночевал, но времени будет потрачено на несколько порядков больше.


11 дек 2014, 22:37
Аватара пользователя
Лучший техник
Лучший техник

Группа: Разработчики
Сообщения: 2057
Регистрация: 04 янв 2011, 19:53
Откуда: Украина
Модель 3DO: GoldStar GDO-203P Alive II

Versus писал(а):
Заметил, что исходники, переброшенные в эмулятор Мака, не распознаются корректно... Текст присутствует, но символы перехода строк сбиты, да и может еще чего...

Есть такая беда. :a_g_a:
В разных ОС могут использоваться различные символы для обозначения переноса строки.
Если верить беглому поиску в интерннетах, windows - "\r\n", unix - "\n", macos - "\n\r". Возможно файл был подправлен и сохранен каким-то блокнотом под win и после этого не хочет корректно открываться на mac.


11 дек 2014, 22:56
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

13chuck13 писал(а):
Возможно файл был подправлен и сохранен каким-то блокнотом под win и после этого не хочет корректно открываться на mac.

Тогда это делала Ребекка или коверкается, когда формируется архив с github-а.
Если брать реально старый архив (даты файлов 1995 год) и распаковывать в маке, то все ОК.

Добавлено спустя 5 минут 21 секунду:
Let's Play/Drown Out - Killing Time (3DO, 1995)

Кстати, автор видео работал в 3DO 5 лет. Вот что он пишет в теме про исходники Doom:
http://slashdot.org/comments.pl?sid=624 ... d=48502515
ewhac писал(а):
I worked for NTG/3DO for just under five years, so I know (knew) the machine inside and out. It will be interesting to go through this code and see what kind of tradeoffs were made.

Надо будет у него что-нибудь полезное выспросить.


11 дек 2014, 23:05
Аватара пользователя
Специалист
Специалист

Группа: Разработчики
Сообщения: 1298
Регистрация: 04 дек 2009, 12:15
Модель 3DO: Нет

Из-под мака всё прекрасно компилируется, но с получившимся бинарником у меня запускается только лого id, причём три раза подряд)) а дальше черный экран :(
Итого:
1) Копируем файлы BurgerLib3DO\Burger\Burger.h, BurgerLib3DO\String\string.h, BurgerLib3DO\IntMath\IntMath.h в папочку 3DODev\includes
2) Файлы BurgerLib3DO\Burger\Burger.lib, BurgerLib3DO\String\string.lib, BurgerLib3DO\IntMath\IntMath.lib в папочку 3DODev\libs
3) В 3DODev\includes\graphics.h в 540 строке (у меня) меняем ; на - т.е. стираем Rect
4) В 3DODev\includes\displayutils.h в 78 строке (у меня) удаляем // void FadeToBlack(ScreenContext *sc, int32 nFrames); - я эту строчку закомментировал
Либо сделать то же самое в Burger.h ??? Этот вариант мне нравится больше.
5) ??? Билдим, получаем бинарник Doom, т.е. файл LaunchMe
Если собирать это дело в правильно настроенном маке, то даже Doom.make менять не надо. Меня только пункты 3 и 4 настораживают, т.к. править 3DO SDK не есть хорошо. Что-то там не так надо делать...


12 дек 2014, 15:29
На страницу Пред.  1, 2, 3, 4, 5, 6 ... 47  След.
© 2008-2024 «3DOPLANET.ru». Создано на основе phpBB® Forum Software © phpBB Group
Designed by ST Software || Русская поддержка phpBB || Time : 0.068s | 21 Queries | GZIP : On