dosbox | This is an enhanced fork of DosBox | Data Processing library

 by   duganchen C++ Version: Current License: GPL-2.0

kandi X-RAY | dosbox Summary

kandi X-RAY | dosbox Summary

dosbox is a C++ library typically used in Data Processing applications. dosbox has no bugs, it has a Strong Copyleft License and it has low support. However dosbox has 3 vulnerabilities. You can download it from GitHub.

This is an enhanced fork of DosBox. It is currently in sync with revision 4250.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              dosbox has a low active ecosystem.
              It has 27 star(s) with 10 fork(s). There are 4 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 4 open issues and 16 have been closed. On average issues are closed in 27 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of dosbox is current.

            kandi-Quality Quality

              dosbox has no bugs reported.

            kandi-Security Security

              dosbox has 3 vulnerability issues reported (2 critical, 1 high, 0 medium, 0 low).

            kandi-License License

              dosbox is licensed under the GPL-2.0 License. This license is Strong Copyleft.
              Strong Copyleft licenses enforce sharing, and you can use them when creating open source projects.

            kandi-Reuse Reuse

              dosbox releases are not available. You will need to build from source code and install.
              Installation instructions are not available. Examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of dosbox
            Get all kandi verified functions for this library.

            dosbox Key Features

            No Key Features are available at this moment for dosbox.

            dosbox Examples and Code Snippets

            No Code Snippets are available at this moment for dosbox.

            Community Discussions

            QUESTION

            x86 Assembly "Unable to Load Program" in DOSbox
            Asked 2021-Jun-14 at 05:29

            I am creating my first x86 assembly program. I am using VS Code as my editor and using Insight as my debugger coupled with DOSBox as my emulator.

            As a start I have created a .asm program to change to colour of the screen:

            ...

            ANSWER

            Answered 2021-Jun-14 at 05:29

            While DOSBox emulates a 32-bit CPU, DOS itself runs in 16-bit real mode, without tools like DOS4gw, used in some DOS Games, such as Doom.

            I think the -f win32 command line option is to blame for this error.

            Source https://stackoverflow.com/questions/67964891

            QUESTION

            DOSBOX-X Bug: newline is offset to the right
            Asked 2021-May-23 at 22:19

            I have a very short assembly TASM program:

            ...

            ANSWER

            Answered 2021-May-23 at 21:44

            DOSBox adheres to the DOS rule of requiring both carriage return (13) and linefeed (10) to output a newline.

            Your code only uses the linefeed and thus the text only drops a line.

            Source https://stackoverflow.com/questions/67664524

            QUESTION

            How can I insert text in the clipboard from an assembly program running in DOSBox?
            Asked 2021-May-20 at 15:23

            I have a db variable in assembly containing a string, like so:

            ...

            ANSWER

            Answered 2021-Mar-25 at 22:30

            There actually is an official API for DOS for accessing the host’s clipboard, supported in Windows 3.x and 9x. It is briefly described in article Q67675, formerly in Microsoft’s Knowledge Base.

            Here’s a code sample (NASM syntax):

            Source https://stackoverflow.com/questions/66800128

            QUESTION

            Assembly x86 (16bit): More accurate time measurement
            Asked 2021-May-12 at 19:50

            I'm programming in TASM 16bit with DOSBox and here's today's issue: Using DOS INT 21h/2Ch I can get the system's current hundredths of a second. That's good and all... until it's not.

            See, I'm looking for an at least semi-accurate time measurement in milliseconds, and I'm positive it's possible.

            Why, you ask? Have a look at INT 15h/86h. Using this interrupt I can delay the program in microseconds. If such precision exists, I'm sure getting milliseconds would be a walk in the park.

            Some ideas I had: Using INT 70h which occurs every 1/1024 of a second, but I don't know how to listen to interrupts, nor do I want a timing system that can't be divided by 10.

            This question has taken the better of me by now, and I've failed finding an already existing solution online.

            Cheers in advance.

            ...

            ANSWER

            Answered 2021-May-12 at 18:56

            A big thank you to Peter Cordes in the comments for answering, I'll now post the answer to anyone else planning on using an old-fashioned compiler from 30 years ago.

            Roughly, the best clock you can get in 16bit TASM is still not enough for accuracy. Luckily, in TASM you can "unlock" 32bit mode by using the .386 directive (as mentioned here).

            Then, you can use the RDTSC command (Read Time-Stamp Counter), but one problem.. It does not exist in TASM. The fact it doesn't exist serves us no purpose, because all commands are in TASM (often called mnemonics) are just replacements for an OpCode, which is what defines every instruction the CPU can run.

            When the Intel Pentium CPU was released, an OpCode for RDTSC was included, so if you have a CPU from it and up... You're good.

            Now, how do we run the RDTSC instruction if it doesn't exist in TASM? (but does in our CPU)

            In TASM, there's an instruction called db, and with it we can run an OpCode directly.

            As seen here, what we'll need to do to run RDTSC is: db 0Fh, 31h.

            And that's it! You can now run this instruction easily, and your program will still stay a mess, but a timed mess at that!

            Source https://stackoverflow.com/questions/67469136

            QUESTION

            Character Block is not showing the right output in Turbo Assembler
            Asked 2021-May-04 at 20:08

            I tried to create a fuel pump with only character blocks in strings but when I compiled it using TASM this is the output the dosbox gave to me.

            The data that I stored are mostly character blocks some of them are half blocks up and down the most characters I use for this is the full block.

            ...

            ANSWER

            Answered 2021-Apr-27 at 12:35
            I solved the problem, it may not be the best solution but here's what I did:
            • TASM is able to echo special characters in Extended ASCII Table by just simply typing the decimal values of each special characters like ▐ (222), █ (219), ▀ (223) and ▄ (220). Just make sure they have commas each of them and must not be the inside the quotation marks.

            • You can mix both strings and integers in every data string you are storing just make sure you put commas for every strings, and integers and add 13,10 as the return key and "$" to the end.

            Source https://stackoverflow.com/questions/67266262

            QUESTION

            Cannot execute some DOS commands in DosBox
            Asked 2021-Feb-27 at 14:53

            I'm trying to program batch script in dosbox, but there is no some commands.

            For example, if I execute this code:

            ...

            ANSWER

            Answered 2021-Feb-27 at 14:53

            command.com-like command processor included with DosBox is not fully compatible with command syntax of MS-DOS command.com or especially windows NT's cmd.exe command processors.

            See this page for commands available to DosBox and their syntax. They may be similar but not the same to MS-DOS ones.

            Your options are:

            • use a batch file that runs outside dosbox for anything that does not need to be inside it

            • copy and run command.com from a real MS-DOS or other DOS. You can get one from an image of a DOS boot floppy (or Windows 95, 98 or ME) which should be plentiful in the internet. Then refer to command-line manual for that DOS version. You will lose access to DosBox-specific commands inside it and it may try to needlessly hog the CPU as almost any other DOS program.

            • write a program in any programming language that can be executed in DOS like C (free C compilers for DOS) and call it from DosBox. Some of the compilers are made free and available for download.

            Source https://stackoverflow.com/questions/66398376

            QUESTION

            C bitwise AND gives different result with -O0 and -O2
            Asked 2021-Jan-31 at 15:14

            I'm working on a PC emulator using both Bochs and DOSBox as references.

            When emulating the "NEG Ed" instruction (two's complement negation of a doubleword) I'm getting different results if I compile with -O0 rather than -O2.

            This is a test program with just the relevant bits:

            ...

            ANSWER

            Answered 2021-Jan-31 at 13:31

            There are some issues in your code:

            • the value returned by strtol("0x80000000", NULL, 16) depends on the range of type long: if type long has 32 bits, the returned value should be LONG_MAX, which is 2147483647, whereas if long is larger, 2147483648 will be returned. Converting these values to uint32_t does not change the value as both as within the range of uint32_t. Type long on your system seems to have 64 bits. You could avoid this implementation defined behavior using strtoul() instead of strtol().

            • there is no need for the intermediary cast to (int32_t): negating the unsigned value is well defined and -0x80000000 has the value 0x80000000 for type uint32_t.

            • furthermore, this conversion is counterproductive and the likely cause of the observed behavior as negating the value INT32_MIN has undefined behavior because of signed arithmetic overflow. With optimisations enabled, the compiler determines that you are extracting the sign as if by bool sign = -(int32_t)value < 0 and simplifies this expression as bool sign = (int32_t)value > 0, which is correct for all values except INT32_MIN for which the compiler considers any behavior to be OK, since the behavior is undefined anyway. You can check the code on Godbolt's Compiler Explorer.

            • you use type bool without including : the program should not compile. Is this a copy/paste error or do you compile as c++? The C99 _Bool semantics add an implicit test in the intialization statement, but it would be better to make it explicit and write:

            Source https://stackoverflow.com/questions/65977673

            QUESTION

            SDL2 applications do not work correctly in Xmonad
            Asked 2021-Jan-19 at 14:05

            Programs using SDL2, for instance games built with pygame and the Mednafen emulator, do not work correctly with the default Xmonad configuration. When they are started in fullscreen mode, their window isn't shown. Here is a minimal reproducible example of an SDL2 program that fails to show its window:

            ...

            ANSWER

            Answered 2021-Jan-19 at 02:13

            While I don't have much to say about the details of what's going on, I apparently succeeded in reproducing your issue by poking at my own xmonad.hs. After removing the call to ewmh from it, running your program resulted in an empty fullscreen window, rather than a red one. That being so, changing your minimal configuration to...

            Source https://stackoverflow.com/questions/65764985

            QUESTION

            Assembly 8086 - Display number in console and not the ASCII representation
            Asked 2021-Jan-12 at 09:22

            I got an assignment where I have to add 2 numbers and display the result. I'm having problems with displaying them in console. Instead of displaying the number, it displays the representation of ascii[ for numbers that adding are greater then 9. For example: 8 + 9 = 17 and it prints the letter A.

            How can I display the number and not the ascii?

            Bellow is the code I'm working with.

            ...

            ANSWER

            Answered 2021-Jan-12 at 09:13

            You would have to do the following in (pseudo code):

            Source https://stackoverflow.com/questions/65680814

            QUESTION

            DOSBOX crashes after /3 key used for linking executable
            Asked 2021-Jan-05 at 02:10

            I have a program written in tasm under dosbox (its text is provided below).
            Is is produced by my own c-written compiler for abstract pl.
            I am trying to compile and run it in the following way:

            ...

            ANSWER

            Answered 2021-Jan-05 at 02:08

            My version of tasm emits a

            *Warning* Assuming segment is 32 bit

            You should use the .386 after the .MODEL SMALL to keep segments 16 bit, or explicitly emit 16 bit segments instead of using the simplified directives.

            Source https://stackoverflow.com/questions/65572121

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install dosbox

            You can download it from GitHub.

            Support

            Games that use General MIDI can use the new FluidSynth backend to play BGM using a soundfont. Specify that in your configuration file:. On OS X and Linux, DosBox will perform shell-expansion on the fluid.soundfont paths. That means that it's allowed to have dollar signs (environment variables) and tildes (home directories).
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/duganchen/dosbox.git

          • CLI

            gh repo clone duganchen/dosbox

          • sshUrl

            git@github.com:duganchen/dosbox.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular Data Processing Libraries

            Try Top Libraries by duganchen

            quetzalcoatl-legacy

            by duganchenPython

            codesearch

            by duganchenPython

            quetzalcoatl

            by duganchenC++

            dotfiles

            by duganchenShell