Giter Site home page Giter Site logo

jonathandotcel / notpsxserial Goto Github PK

View Code? Open in Web Editor NEW
46.0 46.0 9.0 2.2 MB

"NoPS" -- Serial/TTY suite for Unirom 8 featuring kernel-resident debugging, cart/EEPROM flasher, .exe/.elf upload, memcard tools, peeks, pokes, dumps and bugs! GDB TCP/UART bridge in progress.

License: GNU General Public License v3.0

C# 98.80% Batchfile 0.97% Shell 0.23%

notpsxserial's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

notpsxserial's Issues

Compiling on Linux fails because of case sensitive filesystem

In order to compile under linux, some modifications to the nops_proj.csproj are needed :

ABelliqueux@581233e

l.47 and l.59 : Change ELFSharp.dll to ElfSharp.dll.

l.199 : Change <Import Project="$(MSBuildToolsPath)\Microsoft.CSHARP.Targets" /> to <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

A partial solution would be to rename ELFSharp.dll to ElfSharp.dll in the repo, as it would reflect the path used in the project file.

I have no suggestion for the second part, as it looks like the csproj is generated automatically ?

Unhandled IOException on GNU/Linux (EAGAIN)

I tried to upload the test executable with mono nops.exe /exe psx_helloworld.exe /dev/ttyUSB0 and almost every time it failed with an IO exception. Once it worked, which leads me to believe it's a race condition somewhere.

$ mono nops.exe /exe psx_helloworld.exe /dev/ttyUSB0

================================================================================
    Totally NOtPsxSerial v15 (8.0.L)
    Thanks: Jihad of HITMEN, Shendo, Type79, Dax, 
            r0r0, Skitchin, danhans42, Schnappy, 
            Nicolas Noble, T0fuZ & Arthur!

            Instructions :  http://unirom.github.io
            Discord      :  http://psx.dev
================================================================================

        Note: You may have to install mono and launch via 'mono nops.exe /args' if...
      - Windows cant put your serial device (FTDI, etc) into 115200baud
      - You are using a Sharklink/Net Yaroze cable
      - Any flavour of *nix/OSX



Unhandled Exception:
System.IO.IOException: Resource temporarily unavailable
  at System.IO.Ports.SerialPortStream.ThrowIOException () [0x00012] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0 
  at System.IO.Ports.SerialPortStream.Read (System.Byte[] buffer, System.Int32 offset, System.Int32 count) [0x0008d] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0 
  at System.IO.Ports.SerialPort.read_byte () [0x00007] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0 
  at System.IO.Ports.SerialPort.ReadByte () [0x00006] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0 
  at (wrapper remoting-invoke-with-check) System.IO.Ports.SerialPort.ReadByte()
  at SerialTarget.ReadByte () [0x00001] in <ad78a096b99e453299e2e96bca206663>:0 
  at TransferLogic.WaitResponse (System.String inResponse, System.Boolean verbose, System.Int32 timeoutMillis) [0x00051] in <ad78a096b99e453299e2e96bca206663>:0 
  at TransferLogic.ChallengeResponse (System.String inChallenge, System.String expectedResponse, System.Int32 timeoutMillis) [0x00042] in <ad78a096b99e453299e2e96bca206663>:0 
  at TransferLogic.ChallengeResponse (CommandMode inMode, System.Int32 timeoutMillis) [0x0000d] in <ad78a096b99e453299e2e96bca206663>:0 
  at TransferLogic.Command_SendEXE (System.Byte[] inBytes) [0x000b9] in <ad78a096b99e453299e2e96bca206663>:0 
  at Program.DoStuff () [0x00251] in <ad78a096b99e453299e2e96bca206663>:0 
  at Program.Main (System.String[] args) [0x0001f] in <ad78a096b99e453299e2e96bca206663>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.IOException: Resource temporarily unavailable
  at System.IO.Ports.SerialPortStream.ThrowIOException () [0x00012] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0 
  at System.IO.Ports.SerialPortStream.Read (System.Byte[] buffer, System.Int32 offset, System.Int32 count) [0x0008d] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0 
  at System.IO.Ports.SerialPort.read_byte () [0x00007] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0 
  at System.IO.Ports.SerialPort.ReadByte () [0x00006] in <a85c1a570f9a4f9f9c3d2cfa5504e34f>:0 
  at (wrapper remoting-invoke-with-check) System.IO.Ports.SerialPort.ReadByte()
  at SerialTarget.ReadByte () [0x00001] in <ad78a096b99e453299e2e96bca206663>:0 
  at TransferLogic.WaitResponse (System.String inResponse, System.Boolean verbose, System.Int32 timeoutMillis) [0x00051] in <ad78a096b99e453299e2e96bca206663>:0 
  at TransferLogic.ChallengeResponse (System.String inChallenge, System.String expectedResponse, System.Int32 timeoutMillis) [0x00042] in <ad78a096b99e453299e2e96bca206663>:0 
  at TransferLogic.ChallengeResponse (CommandMode inMode, System.Int32 timeoutMillis) [0x0000d] in <ad78a096b99e453299e2e96bca206663>:0 
  at TransferLogic.Command_SendEXE (System.Byte[] inBytes) [0x000b9] in <ad78a096b99e453299e2e96bca206663>:0 
  at Program.DoStuff () [0x00251] in <ad78a096b99e453299e2e96bca206663>:0 
  at Program.Main (System.String[] args) [0x0001f] in <ad78a096b99e453299e2e96bca206663>:0

The "Resource temporarily unavailable" string corresponds to the EAGAIN errno.

GDB Server Crash On Remote Disconnect

When the GDB bridge client disconnects, either unexpectedly or after a standard transfer, the program crashes in GDB.cs

RecieveCallback: ConnectionReset exception - need to overload EndReceive call with an out parameter for the error code

Similar crash in MonitorSerialToSocket & RecieveCallback

It seems this file might have several function calls with unhandled error catches. need to review error handling/catching, and consider remote disconnect behavior e.g.: exit vs restart

Please add optional filename argument for /dump

This is so awesome tool I have no words. I created serial cable and now having fun with patching games on the fly.
I do have one small feature request:
Is it possible to add optional filename argument for /dump option, and effectively be able to override that file if its presented. This is for scripted dumps.

Also: are you planning pc fileserver and STDIN functionality in monitor mode?

EDIT: never mind about STDIN, I can see from code that should even work. Will attempt to build this. You accept pullrequests? I could try to do add optional filename for /dump. I recently started with C# and should be cool challenge and I really want to help

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.