Javier Valcarce's Personal Website

Software

From JavierValcarce.Eu

You are at: Home > Software
Jump to: navigation, search

CLI Related

Note: CLI (Common Language Infrastructure) is the correct way to name this technology. The term ".NET" is a concrete implementation of CLI and is a trademark from Microsoft.

Some utility classes/types written in C#

File Description
WavFileWriter.cs Writes WAV files. Supports 4 sample formats: Linear PCM (PCM08, PCM16 and PCM24) and 32-bit Floating Point (FLT32)
WavFileReader.cs Reads WAV files. Supports 4 sample formats: Linear PCM (PCM08, PCM16 and PCM24) and 32-bit Floating Point (FLT32)
RawFileWriter.cs Writes RAW data (without headers). Supports various data types. Useful to load data comming directly from hardware.
RawFileReader.cs Reads RAW data (without headers). Supports various data types. Useful to store data in a form suitable for direct transmission to hardware.
ImaEncoder.cs IMA-ADPCM codec (encoder)
ImaDecoder.cs IMA-ADPCM codec (decoder)
MatFileWriter.cs Writes Matlab V4 files
IFiniteQueue.cs Common interface for all finite queues. Similar to Queue<T> but with index [] operator
FiniteQueue.cs Generic, bounded buffer (ring buffer). Not thread-safe.
FiniteQueue2N.cs Generic, bounded buffer (ring buffer). Not thread-safe. Capacity is always a power of two so index [] operator is very fast
FiniteQueueBA.cs Generic, bounded buffer (ring buffer). Thread-safe with blocking Enqueue() and Dequeue() operations. Admits multiple producers and consumers.
FiniteQueueStream.cs Bounded buffer (ring buffer) derived from Stream class (not generic, use byte type). Thread-safe with blocking Enqueue/Write and Dequeue/Read operations. Admits multiple producers and consumers.
Crc16.cs 16-bit CRC calculator (for big-endian and little-endian machines)
MeanVar.cs Recursively computes the mean and variance of a sequence of (statistically independent) samples


Audio DSP


Digital Comunications

  • SwModem Software-defined modem collection in the form of dsp blocks suitable to plug to a variety of analog front-ends (WORK IN PROGRESS).

Linux [es]

  • Exportar un disco USB NTFS vía Samba [es]
  • Router Linux con NAT [es]. Configurar una máquina Linux como router de salida hacia Internet y configurar las reglas de filtrado para el cortafuegos.
  • Reglas udev. Útil por ejemplo para montar memorias USB asignándoles siempre el mismo fichero de dispositivo aunque las enchufemos cada vez en puertos USB diferentes o en distinto orden.

Misc

  • Colorize. Simple Mediawiki extension that prints text in random colours and sizes using CSS.
  • GCC para Windows [es]. Este articulo explica como instalar y configurar las herramientas de desarrollo de GNU (autotools, make, gcc, gdb, etc) en Windows. El entorno de desarrollo obtenido es muy similar al de UNIX
  • Kernel multiboot mínimo [es]. Explica cómo cargar y ejecutar un programa en un PC sin sistema operativo, i.e, en el nivel de máquina convencional.
  • El emulador Bochs [es]. Cómo instalar y configurar el emulador de PC Bochs con soporte para AMD64 (arquitectura de 64-bits)
  • Emacs [es]
  • Utilidades GNU [es]
  • Algunos ajustes post-instalación de Mediawiki [es]
  • Diskfree [es] Script Ruby que muestrea periódicamente la ocupación del disco y envía un email cuando supera un umbral.