Rodando aplicação Ginga no VT7200D

Para rodar sua aplicação Ginga, tanto NCL/LUA quanto Java no VT7200D (para saber sobre o VT7200D, consulte aqui) é necessário realizar alguns truques.

O primeiro passo é inserir um pendrive no seu computador. Digite: dmesg no terminal para saber em qual é o device. No meu caso (pendrive de 2GB) apareceu o seguinte nas últimas linhas:

[39858.172559] sd 10:0:0:0: Attached scsi generic sg3 type 0
[39858.175660] sd 10:0:0:0: [sdc] 3911616 512-byte logical blocks: (2.00 GB/1.86 GiB)
[39858.177408] sd 10:0:0:0: [sdc] Write Protect is off
[39858.177412] sd 10:0:0:0: [sdc] Mode Sense: 65 44 09 30
[39858.178402] sd 10:0:0:0: [sdc] No Caching mode page present
[39858.178406] sd 10:0:0:0: [sdc] Assuming drive cache: write through
[39858.182402] sd 10:0:0:0: [sdc] No Caching mode page present
[39858.182405] sd 10:0:0:0: [sdc] Assuming drive cache: write through
[39858.183040]  sdc: sdc1

Dessa forma eu sei que o meu device é /dev/sdc. Caso o seu pendrive tenha alguma partição (no meu caso tem: sdc1) o Ubuntu irá montá-la automaticamente. Nos próximos comando substitua o sdc para o valor correto em sua máquina. Para "desmontar" (no bom sentido), digite:

sudo umount /dev/sdc1

Acesse o fdisk:

sudo fdisk /dev/sdc

Digite "p" para ver as partições. Digite "d" para remover todas as partições (escolha um número caso solicitado). Digite "p" novamente para verificar se todas as partições foram removidas. Digite "n" para criar uma nova partição e informe os dados necessários. Após isso, digite "w" para gravar as alterações e "q" para sair.

Partição criada, é necessário formatá-la como ext3. Digite o seguinte comando:

sudo mkfs.ext3 /dev/sdc1

Dessa forma você já poderá acessar a partição nova criada. Monte a nova partição criada:

sudo mkdir /mnt/ginga
sudo mount /dev/sdc1 /mnt/ginga

Agora é necessário criar um arquivo especial: middleware_params.lua. Para isso acesse o terminal como root:

sudo su

Crie o arquivo: middleware_params.lua (utilize o seu editor de preferência: nano -w, vi ou afins.

vim /mnt/ginga/middleware_params.lua

Com o seguinte conteúdo:

parameters = {
-- information
help = nil
, version = nil

-- screen
, depth = "32" -- screen depth
, screen = "720p" -- screen format

-- zapper
, channel = 29

-- ATTENTION: The NCL file must be prefixed by the protocol `file://'
--, ncl = "file:///apps/main.ncl"
--, ncl_application_id = "nome da aplicacao ncl"

-- ATTENTION: JAVA AND NCL APPLICATION MUST NOT EXIST AT THE SAME TIME!
--
, java_application = "OlaMundoXlet"
, java_application_id = "OlaMundoXlet"
, java_classpath = "file:///apps/"

, astro_zapper = "off"
}

Onde OlaMundoXlet é o nome do seu Xlet principal (altere para o nome da sua aplicação). O código para executar uma aplicação NCL/Lua está comentado. Você pode descomentar se for executar uma aplicação NCL/Lua, mas é necessário comentar os trechos referentes ao Java. Essas informações foram obtidas do AstroDevNet.

Crie uma pasta apps.

mkdir /mnt/ginga/apps

Coloque sua aplicação lá. Para quem está utilizando o emulador da TOTVS é só copiar o conteúdo da pasta Applications que está no Desktop.

cp -R /home/totvs/Desktop/Applications/* /mnt/ginga/apps/

Insira o pendrive no aparelho, ligue o aparelho e aguarde alguns segundos. Sintonize algum canal. É necessário sinal de TV Digital para que sua aplicação funcione. Aguarde mais alguns segundos e a aplicação irá executar!

Sobre: Thiago Galbiatti Vespa

Thiago Galbiatti Vespa é mestre em Ciências da Computação e Matemática Computacional pela USP e bacharel em Ciências da Computação pela UNESP. Coordenador de projetos do JavaNoroeste, membro do JCP (Java Community Process), consultor Oracle, arquiteto de software de empresas de médio e grande porte, palestrante de vários eventos e colaborador de projetos open source. Possui as certificações: Oracle Certified Master, Java EE 5 Enterprise Architect – Step 1, 2 and 3; Oracle WebCenter Portal 11g Certified Implementation Specialist; Oracle Service Oriented Architecture Infrastructure Implementation Certified Expert; Oracle Certified Professional, Java EE 5 Web Services Developer; Oracle Certified Expert, NetBeans Integrated Development Environment 6.1 Programmer; Oracle Certified Professional, Java Programmer; Oracle Certified Associate, Java SE 5/SE 6