Author Topic: XConsole  (Read 35765 times)

0 Members and 1 Guest are viewing this topic.

Offline Binder News

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 785
  • Rating: +46/-3
  • Zombie of Tomorrow
    • View Profile
XConsole
« on: December 23, 2010, 08:51:29 pm »
Okay, I am finally announcing my latest project, the XConsole. Due to my disgust and annoyance with the current terminal windows for the different OSs, I am developing my own, entirely cross platform command prompt. Written in Java.

It will feature:
  -support for the commands of Bash, windows CMD, and whatever Mac has
  -this means you will be able to run things like batch files on any platform
  -the ability to quit the current program without closing the XConsole window (I hate that in CMD)
  -a file chooser dialog to make it easier to change folders
  -etc.

Attached you will find the latest version in a JAR file. As a test, I suggest typing in "java". You can also resize the window.
This will be updated frequently, as I have a lot of time.
« Last Edit: December 25, 2010, 12:01:44 am by Binder News »
Spoiler For userbars:







Hacker-in-training!   Z80 Assembly Programmer     Axe Programmer
C++ H4X0R             Java Coder                           I <3 Python!

Perdidisti ludum     Cerebrum non habes

"We are humans first, no matter what."
"Fame is a vapor, popularity an accident, and riches take wings. Only one thing endures, and that is character."
Spoiler For Test Results:





Offline jnesselr

  • King Graphmastur
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2270
  • Rating: +81/-20
  • TAO == epic
    • View Profile
Re: XConsole
« Reply #1 on: December 23, 2010, 10:31:02 pm »
A classic example of where Java will not work on all platforms because they assume it works on all platforms.  This will not work on Mac. I can get it to work on Mac, but will need the original project file, because I need to make sure that I just didn't disassemble it wrongly.

But in it's current state, this is using a different version than my current JRE will accept.  According to said manifest file:
Code: [Select]
Manifest-Version: 1.0
Created-By: 1.6.0_20 (Sun Microsystems Inc.)
Main-Class: XConsole
And according to my java:
Code: [Select]
java version "1.5.0_24"
Which is why your Java 6 will not work with my Java 5.

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: XConsole
« Reply #2 on: December 24, 2010, 06:27:34 am »
It worked in my computer, I ran a 'tree' command, and got this:

Code: [Select]
³       ÃÄÄÄDocking
³       ³   ÃÄÄÄHelpers
³       ³   ÃÄÄÄResources
³       ³   ÀÄÄÄWin32
³       ÀÄÄÄProperties
ÃÄÄÄtilp-6.81
ÃÄÄÄtilp-6.81 (1)
ÃÄÄÄTokens
ÃÄÄÄTokens (3)
³   ÀÄÄÄRelease
ÃÄÄÄwabbitemu
ÀÄÄÄz80disassembler

Whatever the symbol is, change it :S


EDIT: Oh, help menu:

Code: [Select]
>help
Para mais informa‡äes sobre um comando espec¡fico, escreva HELP nome-do-comando
ASSOC          Mostra ou altera associa‡äes de extensäes de ficheiros.
ATTRIB         Mostra ou altera atributos de ficheiro.
BREAK          Define ou limpa a verifica‡Æo expandida de CTRL+C.
BCDEDIT        Define as propriedades na base de dados de arranque para
               controlar o arranque.
CACLS          Mostra ou modifica listas de controlo de acesso (ACLs)
               a ficheiros.
CALL           Invoca um programa de comandos a partir de um outro.
CD             Mostra o nome ou altera o direct¢rio actual.
CHCP           Mostra ou define o n£mero da p gina de c¢digos activa.
CHDIR          Mostra o nome ou alterar o direct¢rio actual.
CHKDSK         Verifica um disco e apresenta um relat¢rio de estado.
CHKNTFS        Mostra ou modifica a verifica‡Æo do disco no arranque.
CLS            Limpa o ecrÆ.
CMD            Inicia outra ocorrˆncia do interpretador de comandos do Windows.
COLOR          Define as cores predefinidas de primeiro e segundo plano
               da consola.
COMP           Compara o conte£do de dois ficheiros ou conjuntos de ficheiros.
COMPACT        Mostra ou altera a compressÆo de ficheiros em parti‡äes NTFS.
CONVERT        Converte volumes FAT em NTFS. NÆo pode converter
               a unidade actual.
COPY           Copia um ou mais ficheiros para outra localiza‡Æo.
DATE           Mostra ou ajusta a data.
DEL            Elimina um ou mais ficheiros.
DIR            Mostra uma lista de ficheiros e subdirect¢rios num direct¢rio.
DISKCOMP       Compara o conte£do de duas disquetes.
DISKCOPY       Copia o conte£do de uma disquete para outra.
DISKPART       Apresenta ou configura as propriedades da parti‡Æo do disco.
DOSKEY         Edita linhas de comandos, recupera comandos do Windows
               e cria macros.
DRIVERQUERY    Apresenta o estado e propriedades do controlador
               de dispositivo actual.
ECHO           Mostra mensagens e activa ou desactiva o eco de comandos.
ENDLOCAL       Termina a localiza‡Æo de altera‡äes de ambiente
               num ficheiro batch.
ERASE          Elimina um ou mais ficheiros.
EXIT           Encerra o programa CMD.EXE (interpretador de comandos).
FC             Compara dois ficheiros ou conjuntos de ficheiros e
               mostra as diferen‡as entre eles.
FIND           Procura uma cadeia de texto num ou mais ficheiros.
FINDSTR        Procura cadeias em ficheiros.
FOR            Executa um comando especificado para cada ficheiro
               de um conjunto.
FORMAT         Formata um disco para utiliza‡Æo com o Windows.
FSUTIL         Apresenta ou modifica as propriedades do sistema de ficheiros.
FTYPE          Apresenta ou modifica tipos de ficheiro utilizados
               em extensäes de ficheiros.
GOTO           Direcciona o interpretador de comandos do Windows para
               uma linha nomeada num programa batch.
GPRESULT       Apresenta as informa‡äes de 'Pol¡tica de grupo' para o
               computador ou utilizador.
GRAFTABL       Permite ao Windows mostrar um conjunto de caracteres
               expandidos em modo gr fico.
HELP           Fornece informa‡äes de ajuda sobre comandos do Windows.
ICACLS         Apresentar, modificar, fazer a c¢pia de seguran‡a ou restaurar
               ACLs de ficheiros e direct¢rios.
IF             Executa processamento condicional em programas batch.
LABEL          Cria, altera ou elimina a etiqueta do volume de um disco.
MD             Cria um direct¢rio.
MKDIR          Cria um direct¢rio.
MKLINK         Cria Liga‡äes Simb¢licas e Liga‡äes Fixas
MODE           Configura um dispositivo de sistema.
MORE           Mostra sa¡da de dados, um ecrÆ de cada vez.
MOVE           Move um ou mais ficheiros de um direct¢rio para outro.
OPENFILES      Apresenta os ficheiros abertos por utilizadores remotos
               para a partilha de ficheiros.
PATH           Mostra ou define um caminho de pesquisa
               para ficheiros execut veis.
PAUSE          Suspende o processamento de um ficheiro batch
               e mostra uma mensagem.
POPD           Restaura o valor anterior do direct¢rio actual
               guardado por PUSHD.
PRINT          Imprime um ficheiro de texto.
PROMPT         Altera a linha de comandos do Windows.
PUSHD          Guarda o direct¢rio actual e, em seguida, efectua as altera‡äes.
RD             Remove um direct¢rio.
RECOVER        Recupera informa‡Æo leg¡vel de um disco danificado ou
               defeituoso.
REM            Regista coment rios (observa‡äes) em ficheiros batch
               ou em CONFIG.SYS.
REN            Muda o nome de um ficheiro ou ficheiros.
RENAME         Muda o nome a um ficheiro ou ficheiros.
REPLACE        Substitui ficheiros.
RMDIR          Remove um direct¢rio.
ROBOCOPY       Utilit rio avan‡ado p/a copiar ficheiros e  rvores de direct¢rio
SET            Mostra, define ou remove vari veis de ambiente do Windows.
SETLOCAL       Inicia a localiza‡Æo de altera‡äes do ambiente
               num ficheiro batch.
SC             Apresenta ou configura servi‡os (processos em fundo).
SCHTASKS       Agenda comandos e programas para executar num computador.
SHIFT          Muda a posi‡Æo de parƒmetros substitu¡veis em ficheiros batch.
SHUTDOWN       Permite o encerramento correcto, local ou remoto, do computador.
SORT           Ordena a entrada.
START          Inicia uma janela separada para executar um programa
               ou comando especificado.
SUBST          Associa um caminho a uma letra de unidade.
SYSTEMINFO     Apresenta a configura‡Æo e propriedades espec¡ficas
               do computador.
TASKLIST       Apresenta todas as tarefas actualmente em execu‡Æo,
               incluindo os servi‡os.
TASKKILL       Elimina ou para um processo ou aplica‡Æo em execu‡Æo.
TIME           Mostra ou define a hora do sistema.
TITLE          Define o t¡tulo da janela para uma sessÆo do CMD.EXE.
TREE           Mostra graficamente a estrutura de direct¢rios de uma
               unidade ou caminho.
TYPE           Mostra o conte£do de um ficheiro de texto.
VER            Mostra a versÆo do Windows.
VERIFY         Indica ao Windows se deve verificar se os ficheiros
               foram escritos correctamente num disco.
VOL            Mostra uma etiqueta e o n£mero de s‚rie de um volume do disco.
XCOPY          Copia ficheiros e  rvores de direct¢rios.
WMIC           Apresenta informa‡Æo WMI dentro duma shell de comandos
               interactiva.

(Portuguese version)

A classic example of where Java will not work on all platforms because they assume it works on all platforms.  This will not work on Mac. I can get it to work on Mac, but will need the original project file, because I need to make sure that I just didn't disassemble it wrongly.

But in it's current state, this is using a different version than my current JRE will accept.  According to said manifest file:
Code: [Select]
Manifest-Version: 1.0
Created-By: 1.6.0_20 (Sun Microsystems Inc.)
Main-Class: XConsole
And according to my java:
Code: [Select]
java version "1.5.0_24"
Which is why your Java 6 will not work with my Java 5.

I use Java 6, Windows 7 64 bit, it worked.
« Last Edit: December 24, 2010, 06:30:44 am by ScoutDavid »

Offline jnesselr

  • King Graphmastur
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2270
  • Rating: +81/-20
  • TAO == epic
    • View Profile
Re: XConsole
« Reply #3 on: December 24, 2010, 09:35:00 am »
Yeah, i know java 6 will work. But his jdk needs to compile to 1.5 and jre nees to run 1.5 or 1.6.  It's tricky to set up to say the least.

Offline Binder News

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 785
  • Rating: +46/-3
  • Zombie of Tomorrow
    • View Profile
Re: XConsole
« Reply #4 on: December 24, 2010, 09:37:34 am »
Thanks guys. First, from now on I will be compiling for Java 5. I'll upload a new JAR soon. Second, as of right now it only executes programs, no commands, though I am working on it. Third, if anyone wants to help, PM me.
Spoiler For userbars:







Hacker-in-training!   Z80 Assembly Programmer     Axe Programmer
C++ H4X0R             Java Coder                           I <3 Python!

Perdidisti ludum     Cerebrum non habes

"We are humans first, no matter what."
"Fame is a vapor, popularity an accident, and riches take wings. Only one thing endures, and that is character."
Spoiler For Test Results:





Offline jnesselr

  • King Graphmastur
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2270
  • Rating: +81/-20
  • TAO == epic
    • View Profile
Re: XConsole
« Reply #5 on: December 24, 2010, 10:05:38 am »
I can help with making it work on mac and other systems. But I don't really want to help per se. I guess if you want me to test something, PM me.

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: XConsole
« Reply #6 on: December 24, 2010, 10:07:45 am »
If you need help on anythin specific I can give it a try :)

Offline Binder News

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 785
  • Rating: +46/-3
  • Zombie of Tomorrow
    • View Profile
Re: XConsole
« Reply #7 on: December 24, 2010, 10:32:36 am »
I need someone to make an actual tokenizer. I need it to find strings, so it doesn't split stuff at spaces if they are inside quotes. It needs to return a string array.

EDIT: How do you like using Python? Do you think Python or Java would be easier to learn as a first language?
« Last Edit: December 24, 2010, 10:33:51 am by Binder News »
Spoiler For userbars:







Hacker-in-training!   Z80 Assembly Programmer     Axe Programmer
C++ H4X0R             Java Coder                           I <3 Python!

Perdidisti ludum     Cerebrum non habes

"We are humans first, no matter what."
"Fame is a vapor, popularity an accident, and riches take wings. Only one thing endures, and that is character."
Spoiler For Test Results:





Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: XConsole
« Reply #8 on: December 24, 2010, 10:50:48 am »
I need someone to make an actual tokenizer. I need it to find strings, so it doesn't split stuff at spaces if they are inside quotes. It needs to return a string array.

EDIT: How do you like using Python? Do you think Python or Java would be easier to learn as a first language?

Tokenizers are hard job, I tried making one in both Python and C# with no luck.

Python would be easier as a first language, it's the easiest one and very useful for scripting, believe me!

Offline Binder News

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 785
  • Rating: +46/-3
  • Zombie of Tomorrow
    • View Profile
Re: XConsole
« Reply #9 on: December 24, 2010, 10:56:42 am »
I was thinking about using the StreamTokenizer class. java.io package. http://download.oracle.com/javase/1.5.0/docs/api/java/io/StreamTokenizer.html
Documentation link.
Spoiler For userbars:







Hacker-in-training!   Z80 Assembly Programmer     Axe Programmer
C++ H4X0R             Java Coder                           I <3 Python!

Perdidisti ludum     Cerebrum non habes

"We are humans first, no matter what."
"Fame is a vapor, popularity an accident, and riches take wings. Only one thing endures, and that is character."
Spoiler For Test Results:





Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: XConsole
« Reply #10 on: December 24, 2010, 10:57:42 am »
I was thinking about using the StreamTokenizer class. java.io package. http://download.oracle.com/javase/1.5.0/docs/api/java/io/StreamTokenizer.html
Documentation link.

Yes, there are a few online, easy to copy and paste code, but if you wanna make, for example, a TI-Basic one it gets harder :S

Offline jnesselr

  • King Graphmastur
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2270
  • Rating: +81/-20
  • TAO == epic
    • View Profile
Re: XConsole
« Reply #11 on: December 24, 2010, 10:59:24 am »
Yeah, StreamTokenizer is kinda the way to go with spaces.  Use QuoteChar method for strings.
« Last Edit: December 24, 2010, 10:59:35 am by graphmastur »

Offline Binder News

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 785
  • Rating: +46/-3
  • Zombie of Tomorrow
    • View Profile
Re: XConsole
« Reply #12 on: December 24, 2010, 11:08:27 am »
KK. I'm still hoping I can get someone else to do it so I can get the CD command working and the FileChooser added as a menu option.
Spoiler For userbars:







Hacker-in-training!   Z80 Assembly Programmer     Axe Programmer
C++ H4X0R             Java Coder                           I <3 Python!

Perdidisti ludum     Cerebrum non habes

"We are humans first, no matter what."
"Fame is a vapor, popularity an accident, and riches take wings. Only one thing endures, and that is character."
Spoiler For Test Results:





Offline jnesselr

  • King Graphmastur
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2270
  • Rating: +81/-20
  • TAO == epic
    • View Profile
Re: XConsole
« Reply #13 on: December 24, 2010, 11:20:42 am »
If you want me to take a look at it, send me your code. I can do file directories pretty well.

Offline Binder News

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 785
  • Rating: +46/-3
  • Zombie of Tomorrow
    • View Profile
Re: XConsole
« Reply #14 on: December 24, 2010, 11:47:27 am »
Check your PM inbox, graphmastur.
« Last Edit: December 24, 2010, 11:47:46 am by Binder News »
Spoiler For userbars:







Hacker-in-training!   Z80 Assembly Programmer     Axe Programmer
C++ H4X0R             Java Coder                           I <3 Python!

Perdidisti ludum     Cerebrum non habes

"We are humans first, no matter what."
"Fame is a vapor, popularity an accident, and riches take wings. Only one thing endures, and that is character."
Spoiler For Test Results: