This commit is contained in:
2026-09-30 11:49:39 +02:00
parent 3b458fcd7f
commit 6e33293ea6
10 changed files with 382 additions and 11 deletions
+32
View File
@@ -0,0 +1,32 @@
# Progreso
## Estado actual
- **Fase 1** — Estructura del proyecto.
- Paso actual: Makefile. Hecho: reglas con dependencias correctas, variables CC/CFLAGS/CPPFLAGS, clean, .PHONY, cero warnings con gcc y clang. Siguiente: .gitignore y carpeta build/ en un clon limpio; después reglas patrón.
- Entorno activo: Fedora 42 nativo (gcc 15.2, clang 20, make 4.4, gdb 17,
valgrind 3.26).
## Hecho
- `include/escpos.h` + `src/escpos.c` con `escpos_version()`, y `hello.c` que
la usa. Compila y enlaza a mano en Windows y en Fedora.
- `samples/hello_world.bin`: ESC @, texto, LF, ESC d 5, GS V 0.
- Emulador ESC/POS en Go (`emulator/`) para probar sin gastar papel.
## Conceptos de C aprendidos
- Etapas de compilación, unidades de traducción, cabeceras, *include guards*,
`static` para encapsular, `nm` y errores del enlazador.
- Cadenas terminadas en `'\0'`, `const char *`.
- Memoria virtual de un proceso, modo usuario y modo núcleo.
## Decisiones de diseño
- Prefijo `escpos_` para toda la API pública.
## Pendiente / puntos débiles
- Hay binarios (`.o`, `.exe`) versionados en git. Falta `.gitignore`.
- Ficheros sin salto de línea final: corregido; editor configurado.
- Impresoras físicas: sin registrar marca y modelo.