Un emulador del procesador Intel 8086 con un juego de TicTacToe implementado en Assembly, desarrollado como proyecto educativo para el curso de Arquitectura de Computadoras.
Este proyecto implementa un emulador del procesador Intel 8086 y ejecuta un juego de TicTacToe escrito en lenguaje Assembly. La aplicación está diseñada para ayudar a los estudiantes a comprender los conceptos fundamentales de arquitectura de computadoras y programación en lenguaje de bajo nivel.
- Emulador 8086 con conjunto básico de instrucciones
- Juego de TicTacToe completamente funcional en Assembly
- Interfaz gráfica intuitiva desarrollada en Flutter
- Consola integrada para visualizar la salida del programa
- Visualizador de código fuente Assembly
- Sistema de entrada/salida mediante interrupciones DOS
- Flutter (última versión estable)
- Dart SDK
- Un IDE (VS Code, Android Studio, etc.)
- Clonar el repositorio:
git clone https://github.com/jason7337/tictactoe-app.git
- Navegar al directorio del proyecto:
cd tictactoe-app
- Instalar dependencias:
flutter pub get
- Ejecutar la aplicación:
flutter run
- Inicia la aplicación
- Presiona "Nuevo Juego" para comenzar
- Usa los botones numéricos (1-9) para hacer tu movimiento
- Sigue las instrucciones en la consola
- ¡Intenta ganar haciendo tres en línea!
lib/
├── emulator/
│ └── emulator_8086.dart # Implementación del emulador
├── screens/
│ ├── home_screen.dart # Pantalla principal
│ ├── code_screen.dart # Visualizador de código
│ └── tournament_screen.dart # Pantalla de torneo
├── utils/
│ └── asm_handler.dart # Manejador de código Assembly
└── main.dart # Punto de entrada
- Implementación de registros principales
- Soporte para interrupciones DOS básicas
- Manejo de memoria de 64KB
- Implementación de flags de estado
- Formato COM (offset 100h)
- Uso de interrupciones DOS para E/S
- Implementación eficiente de la lógica del juego
- Manejo de datos en memoria
Las contribuciones son bienvenidas. Para contribuir:
- Fork el proyecto
- Crea una rama para tu característica (
git checkout -b feature/AmazingFeature
) - Commit tus cambios (
git commit -m 'Add some AmazingFeature'
) - Push a la rama (
git push origin feature/AmazingFeature
) - Abre un Pull Request
- Nombre - @jason7337
- Curso de Arquitectura de Computadoras
- Documentación del procesador Intel 8086
- Comunidad de Flutter y Dart
- Contribuidores del proyecto
Para preguntas y soporte, por favor contacta a: [email protected]
⌨️ con ❤️ por Jasson Gomez