为旧系统开发游戏

时间:2018-10-16 05:48:31

标签: amiga

我有一个学校编程项目,只要我们证明我们的编程技能,该课程都是免费的,我身边有amiga 500,我想知道我是否可以为此做游戏?也许没有什么复杂的,我知道系统的局限性,但是是否可以在Windows 10 pc上使用仿真器对其进行测试,然后再将其刻录到磁盘上?我是否也可以将comodore disquette放在USB磁盘读取器中以读取代码?还是从中学到任何东西?谢谢!

2 个答案:

答案 0 :(得分:3)

Amiga 是一台不错的计算机,可以进行编程。 根据您的时间预算,从头开始学习和编写游戏可能会非常耗时(除非您已经熟悉68000汇编语言)。

尽管有很多选择,但是可以使用多种语言在这台计算机上进行编程:

C编程 将C与GCC或VBCC以及专用(但非常简单和紧凑)的游戏引擎一起使用,例如ACE:https://github.com/AmigaPorts/ACE

Amiga带有内置的图形和音频功能库(甚至是老式的A500),可以帮助您以完全操作系统友好的方式开发游戏。结果将相当慢,但是您将能够使用硬件的每个部分(阻击器,铜,鲍勃,精灵……):http://amigadev.elowar.com/read/ADCD_2.1/Includes_and_Autodocs_2._guide/node040D.html

基本 Amiga有几种基本语言版本,其中大多数实现了相当全面的命令集,以充分利用其硬件规格(精灵,鲍勃...) 您可能想尝试最著名的 AMOS Basic https://www.ultimateamiga.co.uk/index.php/page,16.html

作为替代方案, Blitz Basic 可能是该计算机上第二受欢迎的基础:https://www.amigafuture.de/downloads.php?view=detail&df_id=3663&sid=661dbda78c2a180a20715f7467a95708

68K程序集 如果您真的需要在与金属非常接近的同时充分利用Amiga的知识,并且几乎从零开始,那么您可能想看看Photon的视频教程:https://www.youtube.com/watch?v=p83QUZ1-P10&list=PLc3ltHgmiidpK-s0eP5hTKJnjdTHz0_bW 这些芭蕾舞短裙是面向场景的,但是游戏开发项目的视觉效果与您在场景项目中发现的外观非常相似(使用鲍勃,精灵,击剑,铜牌,播放ProTracker模块...)

我唯一的建议是,不管您是否在家中拥有合适的硬件,都必须在模拟器中完成大部分工作。 WinUAE是近乎完美的精确模拟器。您还将受益于所有现代工具来编辑/版本化代码(Visual Studio Code,Git ...)。

除Amiga之外,我还将推荐2台老式风味的机器(截至2018年):

  • SEGA Megadrive / Genesis ,可以在超级计算机中找到 使用优秀的SGDK库的友好方式: https://github.com/Stephane-D/SGDK
  • Pico-8,这是一个虚拟的老式控制台,可以(必须)在Lua中编程。 Pico-8可以理解为一种8位游戏机的仿真器,该仿真器从未存在过。但是,它的社区确实很活跃。可以在这里找到:https://www.lexaloffle.com/pico-8.php

同样,对于Megadrive,模拟器可能是您最好的朋友。

一旦您的创作值得在真实的机器上进行测试,并且如果您需要在软盘上“刻录”(复制)创作,我的建议是购买带有PCMCIA / CompactFlash适配器的Amiga 1200。使用 Gotek (USB到软盘适配器)可能是一种更便宜的替代方案,也可以在A500上使用(但请不要宰杀Amiga以使其适合Gotek)。

如今,借助 Everdrive SD卡适配器,Megadrive有了不错的选择,它使您可以在真实控制台上启动自己的任何ROM文件。

答案 1 :(得分:1)

  1. 要在Windows上运行/测试Amiga,请使用WinUAE:http://www.winuae.net/

  2. 您几乎可以使用任何喜欢的编程语言,但是可能最好地支持C(许多编译器,官方文档),而汇编器(Motorola MC68000 CPU)则使您可以完全控制硬件,以实现精美的效果和超级高效的编码(快速图形,...)。还有(或多或少)Amiga特定语言,例如AMOS或BlitzBasic / AmiBlitz,(或多或少)旨在处理特定于Amiga的内容或简化内容(屏幕处理,精灵,音乐,硬件访问等)

  3. 如果要使用C,那么最好使用Amiga的“官方”编译器,如果可能的话:SAS-C(以前为Lattice-C)。如果找不到一个尝试使用vbcc,gcc,DiceC,...(此CD具有完整的gcc / POSIX开发环境(还有更多):https://archive.org/details/cdrom-geek-gadgets-2

  4. 这里有很多C和AmigaOS编码文档:http://amigadev.elowar.com/

  5. PC软盘驱动器将无法即用方式读取或写入Amiga软盘,您需要一些其他硬件,请尝试使用以下硬件:ADTWin,ADF-Copy / ADF-Drive ,Disk2FDI,“ Arduino Amiga软盘读取器/写入器”

  6. 空调制解调器电缆(例如,到PC或Linux盒的空调制解调器串行USB适配器电缆)是从/向阿米加传输文件的简单方法-试试Google:“ amiga SER:nullmodem”或“ Amiga资源管理器”(一个Windows应用程序,还可以让您直接从PC将.adf磁盘映像写入Amiga的软盘驱动器)

  7. 好吧,当然,您可以从软盘上的旧内容中学到东西,这仅取决于磁盘的内容和专业知识。 ;-)如果磁盘包含一些源代码,那就很好。更可能是指任何商业游戏等,它将包含由机器代码制成的可执行文件-用汇编程序编写,或从C代码编译,或其他任何内容-甚至是自定义加载程序(=非AmigaDOS磁盘,无DOS访问权限) ,您需要对M68000指令,Amiga硬件以及AmigaOS(API)有所了解。换句话说:除非您是汇编大师,或者想成为一个汇编大师,否则它可能是“过度编译”的。

注意:正如您所说的,您想为Amiga 500编写游戏-这意味着我们正在谈论“经典” Amiga:m68k CPU,A500,A1200,A2000等,Workbench / Kickstart版本高达3.9 / 3.1,软盘等,包括MiniMIG,Vampire,M5等的现代重新实现- 如果您对非经典的,可能称为“下一代”的Amiga计算感兴趣,请尝试使用以下这些工具:AmigaOS4,AROS,MorphOS,AmigaONE