amigazen AWeb 3 AmigaPython ToolKit unsui FastForward Engi Zen
Under construction: This documentation is still being prepared. Information here may not be accurate or complete at this time.
AmigaPython 2.7.18
Python 2.7.18 Programming Language for Amiga

[GitHub Repository] [Download (Aminet)] [ChangeLog] [License]

A web, suddenly

Forty years meditation

Minds awaken, free

Overview

AmigaPython 2.7.18 is a complete port of Python 2.7.18 (the final Python 2 release) to classic Amiga systems running AmigaOS 3.x. It's a significant upgrade from the previous Python 2.0 release, bringing modern Python capabilities to classic Amiga hardware while maintaining the classic Amiga feel.

Key Features:
• Complete Python 2.7.18 language implementation
• Enhanced standard library with 100+ modules
• Improved Amiga-specific modules (amiga, amigapath)
• POSIX emulation layer for Unix compatibility
• Memory-optimized for classic Amiga hardware
• Full source code availability for customization
• Enhanced string formatting and manipulation
• Improved exception handling
• Better Unicode support
• Dictionary and set comprehensions
• Context managers (with statements)
• Built using SAS/C and smake


What's New Compared to Python 2.0?

Language Features:
Enhanced string formatting and manipulation, improved exception handling, better Unicode support, dictionary and set comprehensions, and context managers (with statements).


Standard Library:
100+ modules vs. ~50 in Python 2.0, enhanced file I/O operations, improved networking capabilities, better OS integration, and enhanced debugging tools.


Amiga-Specific Improvements:
Refined POSIX emulation layer, better path handling between Amiga and Unix formats, improved memory management for Amiga hardware, and enhanced amiga and amigapath modules.


System Requirements:

Operating System: AmigaOS 3.1 or higher
Processor: 68020 CPU or better (68030/68040/68060 recommended)
Memory: Minimum 4MB RAM, 8MB+ recommended
Storage: Approximately 10MB free disk space
Networking: bsdsocket.library for network support (optional)

How to Build

Getting the Source:
The AmigaPython 2.7.18 source code is available from our GitHub repository:
https://github.com/amigazen/amigapython


Build Instructions:

Follow these instructions to build AmigaPython.

ToolKit
Building AmigaPython is most easily achieved if your development environment is setup following the ToolKit standard. See ToolKit or https://github.com/amigazen/ToolKit

Prerequisites
AmigaPython requires:

• VBCC compiler with PosixLib extension
• NDK3.2
• include: assign pointed at NDK headers
• netinclude: assign pointed at Roadshow headers (included in NDK3.2)


Compiler
The current AmigaPython 2.7.18 requires VBCC

SAS/C VBCC GCC
[ ] [X] [ ]

Additional compiler options may be added in the future.

How To Build
Assign Python: Source/
cd Source/
make -f vmakefile


This creates a test binary called Python27 in the Source folder.

How to Clean
make -f vmakefile clean

How To Release
The build system is not yet complete and does not include a distribution build.

Screenshots

Python Shell

[Interactive Python shell running on Amiga]
GUI Application

[Sample GUI application]

ChangeLog - Version 2.7.18

2025-01-10 Version 2.7.18.0 Released
• Complete Python 2.7.18 port for Amiga
• Full standard library implementation
• Amiga-specific optimizations
• Enhanced memory management
• Improved file I/O performance
• Network socket support
• GUI toolkit integration
• Comprehensive documentation
2024-12-15 Version 2.7.18 Beta 2
• Fixed threading issues on Amiga
• Improved module loading performance
• Enhanced error handling
• Better integration with Amiga filesystem
2024-11-20 Version 2.7.18 Beta 1
• Initial beta release
• Core Python functionality
• Basic standard library
• Amiga integration

Installation & Usage

System Requirements:
• Amiga 3.1 or higher
• 4MB RAM minimum (8MB recommended)
• 10MB free disk space
• TCP/IP stack (for network features)


Installation:
1. Download the package from Aminet
2. Extract to your preferred location
3. Add Python directory to your PATH
4. Run 'python' to start the interactive shell


Quick Start:
> python
Python 2.7.18 (Amiga) on Amiga
>>> print "Hello, Amiga!"
Hello, Amiga!
>>>

License & Credits

License: AmigaPython 2.7.18 is released under the Python Software Foundation License.

Credits:
• Python Software Foundation
• amigazen project contributors
• Amiga community for testing and feedback
• Original Python porting efforts by Irmen de Jong

Frequently Asked Questions

Q: Why Python 2.7.18 and not Python 3?
A: Python 2.7.18 is more suitable for Amiga due to its smaller memory footprint and better compatibility with the platform's constraints.

Q: Does AmigaPython include the full standard library?
A: Yes, AmigaPython 2.7.18 includes the complete Python standard library with Amiga-specific optimizations.

Q: Can I create GUI applications with AmigaPython?
A: Yes, AmigaPython includes GUI toolkit support for creating graphical user interfaces on Amiga.

Q: How much memory does AmigaPython require?
A: AmigaPython requires a minimum of 4MB RAM, with 8MB or more recommended for running complex applications.

Q: Can I install additional Python packages?
A: Yes, you can install additional packages using pip, though some packages may require Amiga-specific modifications.

Q: Is AmigaPython open source?
A: Yes, AmigaPython is released under the Python Software Foundation License and all source code is available on GitHub.
© 2025 amigazen project. Content licensed under Creative Commons BY-SA 4.0 | GitHub

Amiga is a trademark of Amiga Corporation.