Files
printer-driver/PROGRESO.md
T
2026-09-30 11:49:39 +02:00

1.2 KiB

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.