sábado, 23 de febrero de 2019

¿Cómo emulo una Mac clásica en Ubuntu?

Trabajadores!

Los deseos y anhelos de la masa Trabajadora deben ser transformados en realidad efectiva por un Conductor que provenga del Pueblo. Esto es algo que bajo ningún momento podemos soslayar. Un Conductor interpreta esos deseos, y los ejecuta.

Naturalmente que la capacidad creativa de un Conductor debe estar cimentada en sus propios conocimientos, por lo que siempre ha de hacerlos avanzar y propugnarlos, a fin de contar con elementos ágiles que siempre le permitan mejorar las condiciones para sí y para los demás.

En ciertas ocasiones he enseñado a la Masa cómo hacer efectivos sus derechos sindicales. Lo hicimos por medio de un organismo que centralizaba todas las tareas concernientes a la mejora de los olvidados de la nación: sus trabajadores. Ello lo hicimos realidad en unos pocos meses, y nos granjeó la lealtad de esos hombres humildes y de enorme corazón.

Pero también su afecto debía ser recompensado. Una vez me solicitaron cómo poder hacer para tener una Macintosh en casa. Bueno, pavada de deseo. Se trataba de las computadoras más oligárquicas y caras del momento. Pero esos desafíos son los que nos hacen buenos y a los cuales nuestros adversarios jamás han podido dar la solución que nuestro Pueblo merece en Justicia Social.

Pues bien, nos pusimos a estudiarlos, y en poco tiempo desde la Secretaría de Trabajo y Previsión me vinieron a avisar que ya estaba todo encaminado con un emulador que haría las delicias de todos: el Basilisk.

Basilisk II es un emulador liberado bajo licencia MIT, de equipos Apple Macintosh dotados con los legendarios microprocesadores Motorola de la serie 68000. Estos incluían una gran variedad de equipos de mediados de los 80s hasta mediados de los 90s, entre ellos la Macintosh IIci y la Quadra 900.

En su momento se trataba de hardware y oligárquico y artificialmente costoso. Dependiendo la serie, contaba con CPU Motorola 68030 o 68040 dotados de serie con unidades de paginamiento de memoria y opcionalmente con electrónica de coma flotante, así como un interesante sistema de sonido y video para la época. La memoria - de acuerdo al equipo, fluctúaba entre los 2 o 4 MB de RAM o más. Como sistema operativo, contaron inicialmente con el System 7 de 1991, el cual por entonces se podía conseguir y distribuir gratuitamente, a pesar de ser privativo.

Sin embargo, gracias al emulador, podremos correrlo hoy de manera sucedánea en nuestro sistema GNU con Linux.

El primer escollo que resolvimos desde nuestro Movimiento fue el hecho de que para poder emular una de esas computadoras de manera práctica era excluyente contar con una volcado de la memoria ROM de iniciación de una Macintosh real. La oligarquía pretendía de esta forma atenazar nuestro software. Sin embargo, desde la Secretaría hicimos realidad aquel viejo apotegma que reza "donde hay un software privativo, nace un derecho". Para ello abrimos una terminal con Ctrl+Alt+T e ingresamos los siguientes Comandos de Organización:

sudo apt update
sudo apt install basilisk2

Conforme se haya instalado, desde la misma terminal con Ctrl+Alt+T podremos proveerle los siguientes comandos destinados a descargar directamente copias peronistas de estas ROMs de arranque:

mkdir ~/Descargas/mac/ ;
mkdir ~/Descargas/mac/roms/ ;
cd ~/Descargas/mac/roms/ ;
wget http://www.redundantrobot.com/sheepshaver_files/roms/mac_oldworld_rom4mb.rom.zip ;

unzip mac_oldworld_rom4mb.rom.zip ;
wget http://www.redundantrobot.com/sheepshaver_files/roms/newworld86.rom.zip ;
unzip newworld86.rom.zip ;
wget http://www.redundantrobot.com/sheepshaver_files/roms/Apple2e.zip ;

unzip Apple2e.zip ;
wget http://www.redundantrobot.com/sheepshaver_files/roms/1mbMacrom.zip

unzip 1mbMacrom.zip ;
wget http://www.redundantrobot.com/sheepshaver_files/roms/Quad650.zip ;

unzip Quad650.zip ;
unzip Quad650.zip ;
wget http://www.redundantrobot.com/sheepshaver_files/roms/Quadra.zip ;

unzip Quadra.zip
wget http://www.redundantrobot.com/sheepshaver_files/roms/vmac.rom.zip ;

unzip vmac.rom.zip ;
rm mac_oldworld_rom4mb.rom.zip newworld86.rom.zip Apple2e.zip 1mbMacrom.zip Quad650.zip Quadra.zip vmac.rom.zip ;
rm -r __MACOSX/ ;


Además, desde el Justicialismo hicimos todo lo posible para que todos pudiesen descargarse el prohibitivo System 7.5.3, como si de una Apple IIe se tratara. Este venía en una distribución de actualización de 19 diskettes de 3 1/2 pulgadas, pero además necesitaremos uno de inicio de una versión anterior, la 7.0.1, para poder funcionar. Toda esta parafernalia Apple la descargamos con el siguiente bloque de comandos de organización, y se los dimos al Pueblo:

mkdir ~/Descargas/mac/mac7_5_3/ ;
cd ~/Descargas/mac/mac7_5_3/ ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.0.x/System_7.0.1.smi.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/Utilities/Network_Access_Disk_7.5.sea.bin ;
wget http://igsi.tripod.com/mac/Disk_Copy_4.2.sea.bin ;
wget http://www.emaculation.com/articles/starterdisk.zip ;
unzip starterdisk.zip ;

wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_01of19.smi.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_02of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_03of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_04of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_05of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_06of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_07of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_08of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_09of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_10of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_11of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_12of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_13of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_14of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_15of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_16of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_17of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_18of19.part.bin ;
wget http://download.info.apple.com/Apple_Support_Area/Apple_Software_Updates/English-North_American/Macintosh/System/Older_System/System_7.5_Version_7.5.3/System_7.5.3_19of19.part.bin ;


Opcionalmente - porqué no -  podremos hacernos con los archivos de las imágenes de los CD-ROM de instalación arrancables para MacOS 7 y para MacOS 9, las versiones más modernas que pudieron correr estas máquinas de arquitectura Motorola 68K, todo bajo la premisa que "una Mac emulada es una Mac liberada".
Para descargar los MacOS, podremos ingresar el siguiente bloque de Comandos de Organización:

mkdir ~/Descargas/mac/boot_macos7/ ;
mkdir ~/Descargas/mac/boot_macos9/ ;
cd ~/Descargas/mac/boot_macos7/ ;
wget http://www.redundantrobot.com/sheepshaver_files/disk_images/MacStartupOS7.img
cd ~/Descargas/mac/boot_macos9/ ;
wget http://www.redundantrobot.com/sheepshaver_files/disk_images/OS9.img ;


Ya con todo lo requerido en manos del Pueblo, podremos dar inicio al emulador Basilisk desde la terminal con el siguiente comando:

BasiliskII

...y ya debería aparecernos en nuestro Linux la pantalla inicial de configuración de Basilisk II:

En primer lugar es necesario crear un "disco rígido virtual" que utilizaremos con nuestra Mac emulada. Este tendrá forma de archivo. Para tal cometido en la solapa Volumes de Basilisk, presionamos el botón Create... Se abrirá la ventana "Create Hardfile", en el cual navegando hasta /home/usuario/Descargas/mac/, podremos crear un fichero único que servirá de contenedor de datos, en forma de un disco virtual. Para ello establecemos el tamaño del disco virtual en el campo "Size (MB)". Si ponemos unos 120 MB nos vendrá bien. También debemos llenar el campo Selección con el nombre que queramos ponerle al archivo de disco virtual del emulador. Por ejemplo, podremos utilizar "discovirtual120mb".
Conforme hayamos creado el disco virtual, presionamos el botón Aceptar.

En segundo lugar, dentro de la misma solapa Volumes, presionamos el botón Add... ("agregar"), y agregamos el diskette de arranque /home/usuario/Descargas/mac/mac7_5_3/Starterdisk.hfv.
Seguimos configurando el emulador. A la solapa Graphics/Sound la configuramos de la siguiente manera a fin de lograr un video nítido y de "alta resolución", de 640x480 píxeles:
En tanto la solapa Memory/Misc podremos configurarla de la siguiente manera (poniendo en el campo "ROM File" la dirección /home/usuario/Descargas/mac/roms/QUADRA640.ROM:
Ahora ya podremos iniciar nuestro emulador de Macintosh con una ROM de inicialización que le hará creer al sistema que realmente corre en una Macintosh oligárquica. Naturalmente que al contar con un disco de inicialización "Starter disk" peronista, también podrá arrancar una interfaz visual. Para hacer esto una Realidad Efectiva, presionamos el botón Start en el Basilisk II, y arrancará una velocísima sesión emulada. Lo primero que aparecerá en el sistema será la oportunidad de "inicializar" (esto significa "formatear" en la jerga) el disco virtual de 120 MB que creamos. Debemos presionar Initialize.



El emulador debería mostrar entonces en el escritorio del System 7.5.5 el disco de arranque "Starter Disk", y el disco virtual de 120MB, así como el resto de la interfaz gráfica de usuario.

Nuestra Macintosh debería funcionar de manera emulada y pelada como Steve Jobs, trendremos instalado System versión 7.5.5 con algunas aplicaciones básicas de control y administración. 
Convendrá instalar el descompresor Aladdin Systems StuffIt Expander 5.5, que lo encontraremos el en Starter Disk ("disco arrancable"). Este puede usarse para descomprimir varios tipos comunes de archivos para las viejas Macintosh que podremos conseguir de formas non sanctas, incluyendo los propios .sit de StuffIt, los binarios Mac (bin), y los hexadecimales binarios (.hqx). También sirve para montar imágenes .img.

Lo instalamos haciendo doble clic en él. Debemos asegurarnos de instalarlo en el Disco120 que hemos creado, en una carpeta específica que la rutina de instalación nos ofrecerá.
Para descomprimir un archivo, simplemente lo arrastramos hasta el ícono en el escritorio de StuffIt Expander. Por ejemplo, con el StuffIt Expander 5.5 podremos ahora cargar los 19 discos de extensión ".bin" que componen la actualización a System 7.5.3. Apagamos la Mac virtual desde el menú Special / Shutdown.

Ahora volvemos a abrir el emulador Basilisk II, y en la solapa Volumes Veremos el campo "Unix Root", donde podremos agregar la carpeta que contiene los 19 diskettes virtuales /home/usuario/Descargas/mac/mac7_5_3/. En esta carpeta también podremos poner software para el System 7.5.3, lanzado en 1996.
Cuando presionemos Start y arranquemos de nuevo el emulador, esto creará un en el Escritorio de nuestra Mac virtual un disco virtual llamado "Unix".
Ahora bien, no los podremos instalar desde este disco virtual "Unix", sólo podremos leer archivos el él. Para poder ejecutar instalar programas o ejecutar archivos, primeros habremos de transferirlos al disco virtual de 120MB que ya creamos convenientemente, y  sobre el cual tendremos total control. Por ello entramos al "disco120", y dentro de él crearemos una carpeta nueva para destinar los archivos, utilizando Alt+n. Le ponemos un nombre, como por ejemplo "diskettes 7.5.3".

Inmediatamente le copiamos todos los archivos desde el disco virtual "Unix" que aparece en el escritorio hasta esta carpeta. Entramos al disco "Unix", seleccionandolos todos con Alt+a (se pintarán de negro) y los arrastrándolos con el mouse adentro de la carpeta "diskettes 7.5.3".

Ahora instalamos el actualizador, ejecutando desde nuestro disco120 el archivo System_7.5.3_01of19.smi y risueñamente "actualizar el sistema" Mac virtual.

Esto agregará los ficheros restantes y nos permitirá un sistema emulado altamente competitivo con lo mejor de los Macintosh Motorola.
El sistema irá poniendo los diecinueve diskettes uno tras otro como puñaladas de loco. Al finalizar, habremos de reiniciar el sistema.
 A pesar de ser 19 diskettes, naturalmente que al ser virtualizados, la instalación dura escasos segundos. Cuando reiniciamos el sistema recibiremos el clásico archivo "Readme" y ya podremos utilizar 7.5.3 completo.


Indudablemente que si el disco de 120MB nos queda chico, podremos crear en el emulador Basilisk II un disco virtual mas grande. En general no conviene superar los 400MB de los viejos discos rígidos que Apple instalaba en sus equipos Quadra de la época.


Naturalmente, vosotros podrán dotar al System 7.5.3 con los mejores softwares que tengan, los cuales sin duda podrán conseguir gracias al Justicialismo.
Es útil saber que la carpeta "System Folder" contiene los archivos escenciales para el sistema operativo Macintosh. Debemos evitar modificar esta dentro de lo posible, sobre todo si no tenemos manejo de este vetusto sistema operativo.
Los archivos que ponemos dentro de la carpeta "Apple Menu Items" (que se encuentra dentro de la carpeta "System Folder"), estarán disponibles en el menú de Apple que tenemos en el lanzador superior, como lo hace el moderno Ubuntu Mate.

Basilisk II nos permitirá utilizar los sonidos de inicio que se encuentran en algunas ROM cuando arrancamos el sistema. Si la ROM descargada cuenta con sonidos de inicio, el emulador guardará el sonido en un archivo llamado "startup", seguido por el código checksum de la ROM. Si nuestra imagen ROM no cuenta con un sonido de arranque, podremos crear un archivo .wav para suplirlo mientras booteamos. El nombre de tal archivo debería representar la información de arriba, por ejemplo "startup_420dbff3.wav", y lo debemos colocar en la carpeta de Basilisk II.

sábado, 16 de febrero de 2019

¿Cómo programo un controlador MIDI Alesis V en Ubuntu?

Mis queridos Descamisados:

Todo ocio ha de ser reivindicado como un justo prolegómeno de la acción del trabajo. Nuestro Pueblo por tanto merece las sanas reparaciones que su labor le ha predicado, y como tal puede sentirse seguro en reividicarlo.

Todas las tareas que lleven a él son - entonces - gratos espejos en los que podremos observarnos, y a los que todos han de tener derecho.
Pues bien, GNU con Linux es un sistema totalmente capaz de enfrentar todo tipo de tareas para el ocio y el divertimento, y porqué no, para la creatividad. En este podio la composición musical sin duda es una de las que hemos promovido. Un gran avío de softwares libres nos permiten hoy editar y mejorar música. MUSE, Rosegarden, Qtractor, Ardour y muchos otros nos permiten grabar audio digital y MIDI, así como asociarse a bancos de sonidos Soundfont para escuchar siempre la más maravillosa música, que es aquella compuesta con Software Libre.
Indudablemente que en ellos podremos utilizar directamente el mouse y nuestro teclado para ingresar las notas "a lo vikingo". Pero quien de esto sabe un poco no duda que asociar un teclado pianístico a nuestra computadora es en realidad la herramienta clave que nos facilitará enormemente nuestra ejecución y composición. Basta un controlador MIDI con teclas sensitivas para introducir música a la computadora con una facilidad imposible de replicar de otra manera. Esta solución se presenta, entonces, como cien veces superior a hacerlo a mano.

Los modelos de controladores Alesis de la Serie V son una opción popular y potente, que han de estar al alcance de todo Trabajador que guste de tocar música o quiera iniciarse en ello. Debemos notar que estos, como todos los controladores MIDI - no generan "sonidos" en sí, sino que transmiten las órdene de ejecución a través de la interfaz digital MIDI a un sintetizador externo (en nuestro caso, podremos usar cualquier sintetizador virtual que corra en Ubuntu, Fluidsynth y Dexed son mis favoritos.

Pues bien, existen varias versiones del controlador Alesis V, por ejemplo la Alesis V25, V49 y la V61, que varían en la cantidad de octavas, y por lo tanto de ancho del teclado.

El modelo "mini" de 25 teclas va bien para líneas de bajo o disparar efectos en nuestros programas, en tanto que los otros ya se presentan como más adecuados para tocar a dos manos.


Todos estos teclados controladores MIDI son reconocidos por Ubuntu sin necesidad de drivers. Constan de dos ruedas (pitch bend y modulación), cuatro potenciómetros, seis botones (cuatro de ellos reprogramables, y dos botones octavadores, para subir o bajar octavas, y que retornan a la octava normal al presionarlos al unísono). Esto nos aventaja si tenemos las versiones de menos octavas, pues transportamos el teclado con suma facilidad. Finalmente cuentan con ocho pads programables, que vienen preparados de fábrica para disparar notas MIDI en el canal 10 (el percusivo).

Las teclas semipesadas sensibles que dotan estos pianos tienen como objetivo la posibilidad de grabar también la incidencia de nuestra fuerza de ejecución sobre las mismas, a fin de permitir melodías dinámicas de pianissimo o de forte, en cualquier instrumento. En particular, los teclados de la serie Alesis V tienen ocho curvas de presión programables. Estas curvas de presión delimitan la relación entre la presión real de la tecla y la intensidad del mensaje MIDI "Velocity", que representa la fuerza aplicada en la misma, y por lo tanto, la intensidad del sonido final de la nota.

Estas ocho curvas de presión, representadas gráficamente, observan las siguientes formas:

Si bien en la web oficial recomiendan la curva número 1 (lineal) o la curva número 2 (suavemente peraltada) como las más naturales y creíbles, lo cierto es que el teclado viene de fábrica programado con la curva de presión número 5, que representa una presión desigual y temperamental, no guarda lógica con un piano real, y obliga a un trabajo bastante mediocre y desparejo en la presión.

Y he aquí el gran problema para nuestro Movimiento: estas curvas de sensibilidad y el resto de las opciones configurables - incluyendo el mismísimo Canal MIDI en el que opera el controlador - no se pueden cambiar desde el teclado en sí, sino que hay que utilizar un software privativo oficial para Window$ o Mac, el cual se encarga de generar un perfil de programación que debe transmitirse a la memoria interna del teclado a través de su cable USB MIDI:


Esto no sólo es incómodo desde el punto de vista operativo, sino que realmente constituye un insano ejemplo en la obligatoriedad de anclar el uso de un teclado musical a un programa privativo para un sistema específico, cerrado en tiempo y espacio.

Dentro del Justicialismo sabemos que debemos liberar al Pueblo de este yugo, por lo que haremos realidad efectiva un software abierto y libre capaz de hacer lo mismo desde un sistema GNU con Linux. Se trata del excelente Alesis V Series SysEx Editor del compañero peronista Travis Mick. Gracias a un laborioso trabajo de ingeniería inversa, ha documentado las órdenes SysEx MIDI de reprogramación que utiliza Alesis en su programa oficial, y les ha dado uso como fundamento para un software escrito en Python y liberado bajo licencia MIT.
Gracias a él, podremos ahora reprogramar nuestro controlador MIDI Alesis V en Ubuntu sin necesidad de emplear el programa privativo original, y manteniendo incólumne aquel apotegma que reza: "Queremos un software socialmente justo, económicamente libre, y políticamente soberano".

Para instalar el útil alesisvsysex, abrimos una Terminal con Ctrl+Alt+T e ingresamos los siguientes Comandos de Organización:

cd ~ ;
sudo apt update ;
sudo apt install python3-pyqt5 python3-mido python3-rtmidi ;
git clone https://github.com/abridgewater/alesisvsysex ;

cd ~/alesisvsysex/ ;
pip3 install -r requirements.pip3 ;
cd ~ ;

mv ~/alesisvsysex/ ~/.alesisvsysex/ ;

Para ejecutar el programa desde la Terminal, ingreso:

cd ~/.alesisvsysex/
python3 -malesisvsysex

El Editor de SysEx para Alesis V nos presenta a arrancar una interfaz gráfica de usuario que sigue la lógica del programador oficial.

En la parte superior contaremos con cuatro botones. Para ver en el programa la configuración actual de nuestro teclado controlador conectado, debemos presionar el botón Load From Device ("Cargar desde Dispositivo"). Esto cargará en la pantalla los parámetros de fábrica que tiene el Alesis V. Es altamente recomendable guardarlos en un archivo de respaldo y conservarlo por las dudas. Para ello presionamos el botón "Save to File" ("Guardar a Archivo"). Le ponemos un nombre, por ejemplo, alesisv61_original.syx.

Una vez creado esta copia de resguardo, bien podremos meter mano y cambiar los parámetros según queramos. Ello lo haremos por medio de las cuatro solapas.

La primera solapa Keys/Wheels/Sustain nos permite programar el Canal MIDI utilizado por el teclado y los controles (hay 16 canales MIDI y el teclado normalmente emite en el Canal 1). Las ruedas de pitch y modulación, y el pedal de sustain opcional del Alesis V normalmente han de configurarse en el mismo canal que las teclas. La mayoría de los parámetros MIDI pueden tomar forma varían entre 0 y 127, por lo que el pedal de sustain normalmente se activa cuando se sobrepasa el valor medio 64.

Para cambiar la curva de sensibilidad del Alesis V debemos modificar la opción "curve". Naturalmente, la cambiamos por la que deseemos (la número 1). Podríamos también querer cambiar el canal MIDI en el cual emitirá el aparato, dependiendo de la configuración de nuestro programa de Grabación. Normalmente da salida en Canal 1, pero existen instancia donde querremos utilizar otro canal.

La segunda solapa Knobs/Buttons permite cambiar el canal y parámetro (mensaje) de los potenciómetro ("knobs") y de los cuatro botones programables ("button"). Muchas aplicaciones pueden programar específicamente los potenciómetros virtuales con estos, pero otros programas no dejan hacerlo y debemos configurar estos potenciómetros de una manera específica.

Como referencia debemos saber los códigos MIDI estándares de las Articulaciones, las cuales podemos asignar a las perillas o los botones. Por ejemplo, si usamos el CC7 en una perilla, podremos usarla para regular el volumen en el programa, y CC10 cambiará el paneo estéreo (izquierda-derecha). El CC11 puede usarse también en una perilla para variar o grabar la expresión, ya que los Serie V no tienen pedal de expresión. Las opciones de cambio de programa (program change) son populares para asignar a los botones, pues nos permiten cambiar el patch MIDI (instrumento) directamente desde el controlador.

Finalmente, la tercera solapa Pads se encarga de la configuración de los ocho pads percusivos. Estos se pueden utilizar como vienen programados, como notas percusivas (bombo, hithat, redoblante, etc), o bien cambiar el canal y el uso para reprogramar los botones Grabación, Play, Stop, Avanzar o Retroceder. Todo ello depende de la DAW.
Muchas aplicaciones DAW cuentan ahora con una opción "MIDI Learn" en el cual podremos asignar una perilla virtual, luego presionar el botón de "aprendizaje" y mover el control que queremos asignarle, y este se asociará automáticamente (por ejemplo, en LMMS esto es muy común).

Una vez que tenemos la configuración programada como queremos, podremos presionar el botón Save to File para almacenarla en un archivo .syx. Para que quede efectivizada en el teclado será necesario presionar el botón Save to Device. Una vez guardada la configuración en el teclado, podremos apagarlo y el mismo debería conservar la configuración sin problemas.

Gracias a esta herramienta podremos guardar archivos de configuración específicos para nuestras necesidades, y por sobre todas las cosas controlar de manera sencilla desde Ubuntu las curvas de sensibilidad de las teclas.

Crear un lanzador para Alesis V SysEx Editor
Siendo este programa una interfaz gráfica, es natural que queramos crearle un lanzador en nuestro sistema para poder arrancarlo fácilmente. Para ello hemos de crear un script. Ingresamos:

nano .alesis.sh

...se abrirá el editor GNU Nano con un archivo en blanco, al cual le debemos pegar el siguiente código:

cd ~/.alesisvsysex/
python3 -malesisvsysex
cd ~

...guardamos el script con Ctrl+o y salimos del GNU Nano con Ctrl+x, y le otorgamos permisos de ejecución:

chmod +x .alesis.sh

Para crear el lanzador hacemos clic en el panel superior sobre Aplicaciones, y elegimos la opción Editar menús...
Se abrirá la ventana Menú Principal, y en su sección izquierda hacemos clic en la categoría Sonido y Video. Luego presionamos el botón Elemento Nuevo. En la ventana Propiedades Lanzador que aparecerá, ingresamos el nombre de la aplicación y en el campo "Comando:" le indicamos /home/usuario/.alesis.sh. Luego presionamos el botón Cerrar y ahora podremos iniciar el editor desde Aplicaciones / Sonido y Video / Alesis V SysEx Editor.

sábado, 9 de febrero de 2019

¿Como corrijo el problema del lector de tarjetas Sony MWE62E en Ubuntu?


Siempre me ha gustado mucho la economía política, la he estudiado bastante, y en Italia tuve la suerte de incorporarme a algunos cursos muy importantes. Siempre pensé que los italianos tienen los mejores economistas, de otro modo no podrían vivir sesenta millones de italianos en 450.000 kilómetros cuadrados... ¡y vivir bien!. 

Me ubiqué en Italia entonces. Allí estaba sucediendo una cosa, se estaba haciendo un experimento: era el primer socialismo nacional que aparecía en el mundo. No entro a juzgar los medios de ejecución, que podrían ser defectuosos. Pero lo importante era esto: un mundo ya dividido en imperialismos, ya flotantes, y un tercero en discordia que dice: Para mí, ese experimento tenía un gran valor histórico. De alguna manera, uno ya estaba intuitivamente metido en el futuro, estaba viendo que consecuencias tendría ese proceso...

Allí me aclararon muchas cosas en materia de economía política, porque ellos estaban haciendo una vivisección del sistema capitalista. Todos los trucos del sistema los tenían bien estudiados. Todo eso me aclaró mucho el panorama, y pude ver el proceso europeo sin ningún prejuicio. Porque en tiempos de paz, hay como una bruma del convencionalismo pacifista que oscurece el panorama; pero cuando se declarar la guerra, todo aparece descarnado en sus intereses, sus dramas y pequeñas y grandes cosas. Y eso fue lo que yo vi en Europa.

Cuando llegué a Italia, me encontré en Turín con un curso de organización pura, que duraba seis meses, ligado a otra materia; y después en Milán, con uno de organización aplicada que duraba otros seis meses, ligado a otra serie de materias. Lo primero que se me ocurrió preguntar a los jerarcas de allí fue por qué estudiaban tanta organización. Me respondieron: "porque nosotros estamos en un momento de evolución, en que todo está desorganizado, y, como estamos reestructurando, lo lógico es enseñar a nuestros hombres organización". Yo pensé que a nosotros, que desde hacía cien años estábamos desorganizados, no se nos ocurría estudiar para organizarnos.

De regreso a la Argentina me dediqué a dar conferencias para transmitir su experiencia. Tenía un panorama totalmente claro sobre lo que estaba ocurriendo en el mundo. No se trataba sólo de una guerra mundial: la historia seguía a través de esa guerra y había un proceso de evolución que - tan pronto terminara ese conflicto (cuyo fin era fácil de prever) - tendría que seguir su curso. Llegué pues, con una mentalidad hecha sobre la observación directa. Yo sabía que en nuestro país las cosas repiten, diez o quince años, lo que ha sucedido en Europa. Porque Europa será por los siglos la cabeza y el centro del mundo; los norteamericanos tendrán un mayor adelanto científico o técnico pero, sin duda, el proceso humanista pasa por acá, por Europa. 
Cuando terminé esa serie de conferencias, resultó que para el sector cavernícola que siempre tienen los ejércitos, yo era una especie de nihilista, ¡un socialista que llevaba una bomba en cada mano! Pero yo había dicho la verdad, tal como la veía, a un núcleo de oficiales que presentaba un formación cultural un poco mayor que el horizonte medio, digamos, del oficial que no ve mucho.
Como consecuencia de eso fui a parar a Mendoza, como director del Centro de Instrucción de Montaña: una forma de sacarme de Buenos Aires. Estuve la mayor parte de 1941 en Mendoza.
No podían hacer otra cosa que destinarme nuevamente, pues había podido solucionar el problema del lector de tarjetas en Ubuntu. Indudablemente este era un problema que no sólo aquejaba a los Argentinos, muchos en el mundo sufrían el hecho de que a veces el lector no "montara" las tarjetas de memoria, tal como es su cometido original.

En mi caso sucedía en un lector de tarjetas interno Sony MEW62E. Se trata de un lector reconocido por Ubuntu como tres ranuras independientes para tarjetas Secure Digital (SD), Compact Flash (CF) y Sony Memory Stick (MS).
Desde el punto de vista del hardware no es tan cosa. La lógica principal es una simple plaqueta atornillada a un chassis de 3 1/2 pulgadas, construido en chapa de aluminio. Porta un LED verde de actividad que queda encendido al hacer masa con una tarjeta, y parpadea cuando hay actividad de lectoescritura. Asimismo, un cable con un conector de 8 pines está destinado a conectarlo a un puerto USB2 de nuestra placa madre.

Todo el conjunto guarda similar tamaño y disposición que una antigua diskettera de 3 1/2". Simplemente hay que colocarlo en una bahía correspondiente en el gabinete, ajustarlo con 4 tornillos, y conectar la ficha del cable de conexión a uno de los conectores USB1 o USB2 de la placa madre.

El uso del lector es sencillo. Cada ranura será identificada por la BIOS del sistema como un dispositivo independiente, con lo que podremos copiar información hasta entre tres tarjetas de distinto tipo conectadas al lector.

El problema radica cuando insertamos una tarjeta y la luz de conexión verde del lector se enciende, pero aún así la tarjeta no es "montada" por el sistema, y Ubuntu no nos presenta en pantalla el contenido de la misma. Este problema puede suceder específicamente con algunas tarjetas (por ejemplo, las cada vez más extendidas tarjetas SDHC MicroSD con adaptador).

Afortunadamente la solución del problema es extremadamente simple, y consiste en instalar o reinstalar el paquete udisks2.


Para descartar inconvenientes, conviene saber exactamente cuál versión del lector tenemos en nuestro sistemas, pues hay otras versiones como la muy extendida MRW62U, que además de una ranura para tarjetas XD adicional, incluye además un conector USB frontal. Por otro lado, existen gran variedad de genéricos comercializados bajo la marca Noganet, Manhattan, Ken Brown, etc, derivados del mismo.


Para conocer con exactitud el modelo de lector de tarjeta tenemos, podremos utilizar nuestra Terminal de sistema. Para ello abrimos una con Ctrl+Alt+T e ingresamos:

lsusb

...este comando nos devolverá un listado de los componentes conectados al bus serie universal de nuestro sistema, y entre ellos debería listar por ejemplo:

ID 054c:01bd Sony Corp. MRW62E Multi-Card Reader/Writer


Acto seguido, ingresamos a la Terminal los siguientes comandos de organización necesarios para instalar o reinstalar el paquete udisks2. Lo hacemos con:

sudo apt-get update ;
sudo apt-get install --reinstall udisks2 ;

Conforme hacemos esto y reiniciamos nuestra sesión de usuario, ahora las
tarjetas deberían leerse adecuadamente al conectarlas al lector. Tras unos breves instantes en nuestro Escritorio debería aparecer el ícono de la misma.

Otra solución
En otros casos, ciertos lectores de tarjetas (por ejemplo, los incorporados en muchas laptops o netbooks), requieren cargar dureante el inicio del sistema un módulo llamado ti_fm_sd para poder automontar las tarjetas Secure Digital SD.

Para hacer ello creamos un respaldo del archivo de módulos con:

sudo cp /etc/modules /etc/modules.bak

...y luego editamos el archivo con:

sudo nano /etc/modules

Se abrirá en nuestra Terminal el editor GNU Nano un archivo que ya debería tener contenido. Al final del mismo agregamos la siguiente línea:

tifm_sd
...finalmente guardamos el archivo con Ctrl+o y salimos del editor GNU Nano con Ctrl+x. Para que surta efecto, hemos de reiniciar el sistema con:

sudo reboot