Megalextoria
Retro computing and gaming, sci-fi books, tv and movies and other geeky stuff.

Home » Digital Archaeology » Computer Arcana » Computer Folklore » Qbasic
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Switch to threaded view of this topic Create a new topic Submit Reply
Qbasic [message #311288] Fri, 05 February 2016 12:25 Go to next message
philo[1][2] is currently offline  philo[1][2]
Messages: 110
Registered: November 2012
Karma: 0
Senior Member
Last night I was going through some old paperwork and on the back of a
report I found an old (very simple) program I wrote in Qbasic.

Did a drive search and found a backup from a 386 I had worked on a long
time ago and it had my program on it along with a few games.

I mainly use Linux now but installed DosBox to see if the stuff would run.
It did!

Played Nibbles a few times just for laughs and enjoyed it.

I am not a gamer and never played anything newer than Tetris.
Re: Qbasic [message #311323 is a reply to message #311288] Fri, 05 February 2016 17:56 Go to previous messageGo to next message
Gene Wirchenko is currently offline  Gene Wirchenko
Messages: 1166
Registered: January 2012
Karma: 0
Senior Member
On Fri, 5 Feb 2016 11:25:55 -0600, philo <philo@privacy.net> wrote:

> Last night I was going through some old paperwork and on the back of a
> report I found an old (very simple) program I wrote in Qbasic.
>
> Did a drive search and found a backup from a 386 I had worked on a long
> time ago and it had my program on it along with a few games.
>
> I mainly use Linux now but installed DosBox to see if the stuff would run.
> It did!

It works fine. I have some QBASIC utilities that I wrote to help
me with software development. I now run them under DOSBox, and they
work fine. I have been doing so for years.

Some tips:

1) For maximum speed, you should probably crank up the cycles
setting. I run my stuff at 70,000 cycles.

2) High cycles will steal from other tasks. If I have two DOSBox
sessions each running at 70,000 cycles, audio playback can stutter on
my system.

> Played Nibbles a few times just for laughs and enjoyed it.
>
> I am not a gamer and never played anything newer than Tetris.

Sincerely,

Gene Wirchenko
Re: Qbasic [message #311331 is a reply to message #311323] Fri, 05 February 2016 19:13 Go to previous messageGo to next message
philo[1][2] is currently offline  philo[1][2]
Messages: 110
Registered: November 2012
Karma: 0
Senior Member
On 02/05/2016 04:56 PM, Gene Wirchenko wrote:
> On Fri, 5 Feb 2016 11:25:55 -0600, philo <philo@privacy.net> wrote:
>
>> Last night I was going through some old paperwork and on the back of a
>> report I found an old (very simple) program I wrote in Qbasic.
>>
>> Did a drive search and found a backup from a 386 I had worked on a long
>> time ago and it had my program on it along with a few games.
>>
>> I mainly use Linux now but installed DosBox to see if the stuff would run.
>> It did!
>
> It works fine. I have some QBASIC utilities that I wrote to help
> me with software development. I now run them under DOSBox, and they
> work fine. I have been doing so for years.
>
> Some tips:
>
> 1) For maximum speed, you should probably crank up the cycles
> setting. I run my stuff at 70,000 cycles.
>
> 2) High cycles will steal from other tasks. If I have two DOSBox
> sessions each running at 70,000 cycles, audio playback can stutter on
> my system.

Thanks, but...
I've left it at the default of 3000 cycles and it's just fine

I don't expect I will be using it much.


>
>> Played Nibbles a few times just for laughs and enjoyed it.
>>
>> I am not a gamer and never played anything newer than Tetris.
>
> Sincerely,
>
> Gene Wirchenko
>
Re: Qbasic [message #311341 is a reply to message #311331] Fri, 05 February 2016 22:40 Go to previous messageGo to next message
Michael Black is currently offline  Michael Black
Messages: 2799
Registered: February 2012
Karma: 0
Senior Member
On Fri, 5 Feb 2016, philo wrote:

> On 02/05/2016 04:56 PM, Gene Wirchenko wrote:
>> On Fri, 5 Feb 2016 11:25:55 -0600, philo <philo@privacy.net> wrote:
>>
>>> Last night I was going through some old paperwork and on the back of a
>>> report I found an old (very simple) program I wrote in Qbasic.
>>>
>>> Did a drive search and found a backup from a 386 I had worked on a long
>>> time ago and it had my program on it along with a few games.
>>>
>>> I mainly use Linux now but installed DosBox to see if the stuff would run.
>>> It did!
>>
>> It works fine. I have some QBASIC utilities that I wrote to help
>> me with software development. I now run them under DOSBox, and they
>> work fine. I have been doing so for years.
>>
>> Some tips:
>>
>> 1) For maximum speed, you should probably crank up the cycles
>> setting. I run my stuff at 70,000 cycles.
>>
>> 2) High cycles will steal from other tasks. If I have two DOSBox
>> sessions each running at 70,000 cycles, audio playback can stutter on
>> my system.
>
> Thanks, but...
> I've left it at the default of 3000 cycles and it's just fine
>
> I don't expect I will be using it much.
>
No? I can see Bill Gates disappointment, "we could have cornered the
marekt place, come out with a version of QBASIC for Linux".

I wonder if Microsoft ever made a version of BASIC for XENIX?

Michael
Re: Qbasic [message #311342 is a reply to message #311341] Fri, 05 February 2016 23:32 Go to previous messageGo to next message
philo[1][2] is currently offline  philo[1][2]
Messages: 110
Registered: November 2012
Karma: 0
Senior Member
On 02/05/2016 09:40 PM, Michael Black wrote:
> On Fri, 5 Feb 2016, philo wrote:
>
>> On 02/05/2016 04:56 PM, Gene Wirchenko wrote:
>>> On Fri, 5 Feb 2016 11:25:55 -0600, philo <philo@privacy.net> wrote:
>>>
>>>> Last night I was going through some old paperwork and on the back of a
>>>> report I found an old (very simple) program I wrote in Qbasic.
>>>>
>>>> Did a drive search and found a backup from a 386 I had worked on a long
>>>> time ago and it had my program on it along with a few games.
>>>>
>>>> I mainly use Linux now but installed DosBox to see if the stuff
>>>> would run.
>>>> It did!
>>>
>>> It works fine. I have some QBASIC utilities that I wrote to help
>>> me with software development. I now run them under DOSBox, and they
>>> work fine. I have been doing so for years.
>>>
>>> Some tips:
>>>
>>> 1) For maximum speed, you should probably crank up the cycles
>>> setting. I run my stuff at 70,000 cycles.
>>>
>>> 2) High cycles will steal from other tasks. If I have two DOSBox
>>> sessions each running at 70,000 cycles, audio playback can stutter on
>>> my system.
>>
>> Thanks, but...
>> I've left it at the default of 3000 cycles and it's just fine
>>
>> I don't expect I will be using it much.
>>
> No? I can see Bill Gates disappointment, "we could have cornered the
> marekt place, come out with a version of QBASIC for Linux".
>
> I wonder if Microsoft ever made a version of BASIC for XENIX?
>
> Michael
>



http://chiclassiccomp.org/docs/content/computing/Microsoft/M icrosoft_Basic_8086Xenix_UserGuide.pdf
Re: Qbasic [message #311697 is a reply to message #311342] Thu, 11 February 2016 20:16 Go to previous messageGo to next message
Quadibloc is currently offline  Quadibloc
Messages: 4399
Registered: June 2012
Karma: 0
Senior Member
On Thursday, February 11, 2016 at 11:44:24 AM UTC-7, Gene Buckle wrote:

> Here's "QuickBasic" for Linux: http://www.qb64.net/ :)

They also have a version that runs on 32-bit Windows ... but *not* one for 64-bit
Windows!

John Savard
Re: Qbasic [message #311700 is a reply to message #311697] Thu, 11 February 2016 21:49 Go to previous messageGo to next message
hancock4 is currently offline  hancock4
Messages: 6746
Registered: December 2011
Karma: 0
Senior Member
On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:

> They also have a version that runs on 32-bit Windows ... but *not* one for 64-bit
> Windows!

Wasn't there some sort of add-on for modern Windows to allow old DOS
applications, such as QBASIC, to run on it?
Re: Qbasic [message #311713 is a reply to message #311700] Fri, 12 February 2016 06:25 Go to previous messageGo to next message
philo[1][2] is currently offline  philo[1][2]
Messages: 110
Registered: November 2012
Karma: 0
Senior Member
On 02/11/2016 08:49 PM, hancock4@bbs.cpcn.com wrote:
> On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:
>
>> They also have a version that runs on 32-bit Windows ... but *not* one for 64-bit
>> Windows!
>
> Wasn't there some sort of add-on for modern Windows to allow old DOS
> applications, such as QBASIC, to run on it?
>
>
>



The "problem" with Windows is that the 64bit version , though it can run
32 bit apps, cannot run 16 bit apps.
Re: Qbasic [message #311714 is a reply to message #311713] Fri, 12 February 2016 06:50 Go to previous messageGo to next message
gareth is currently offline  gareth
Messages: 598
Registered: June 2012
Karma: 0
Senior Member
"philo" <philo@privacy.net> wrote in message
news:n9kf9l$fni$1@dont-email.me...
>
> The "problem" with Windows is that the 64bit version , though it can run
> 32 bit apps, cannot run 16 bit apps.

Do the 64-bit processors still boot into 16-bit mode, though?
Re: Qbasic [message #311715 is a reply to message #311700] Fri, 12 February 2016 06:53 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: J. Clarke

In article <cb6cf76e-290e-4b4d-83c9-d9b5d5eed431@googlegroups.com>,
hancock4@bbs.cpcn.com says...
>
> On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:
>
>> They also have a version that runs on 32-bit Windows ... but *not* one for 64-bit
>> Windows!
>
> Wasn't there some sort of add-on for modern Windows to allow old DOS
> applications, such as QBASIC, to run on it?

Windows comes with a virtual machine, however Microsoft in recent
releases has crippled it in enough ways to make it less useful than it
once was. It was used to support a "Virtual XP" in some versions of
Windows 7 that allowed 32-bit-only code to run, but that broke with some
16-bit code.
Re: Qbasic [message #311719 is a reply to message #311715] Fri, 12 February 2016 08:40 Go to previous messageGo to next message
jmfbahciv is currently offline  jmfbahciv
Messages: 6173
Registered: March 2012
Karma: 0
Senior Member
J. Clarke wrote:
> In article <cb6cf76e-290e-4b4d-83c9-d9b5d5eed431@googlegroups.com>,
> hancock4@bbs.cpcn.com says...
>>
>> On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:
>>
>>> They also have a version that runs on 32-bit Windows ... but *not* one
for 64-bit
>>> Windows!
>>
>> Wasn't there some sort of add-on for modern Windows to allow old DOS
>> applications, such as QBASIC, to run on it?
>
> Windows comes with a virtual machine, however Microsoft in recent
> releases has crippled it in enough ways to make it less useful than it
> once was. It was used to support a "Virtual XP" in some versions of
> Windows 7 that allowed 32-bit-only code to run, but that broke with some
> 16-bit code.

Old games are installed in an X86 directory.

/BAH
Re: Qbasic [message #311723 is a reply to message #311714] Fri, 12 February 2016 09:02 Go to previous messageGo to next message
scott is currently offline  scott
Messages: 4237
Registered: February 2012
Karma: 0
Senior Member
"gareth" <no.spam@thank.you.invalid> writes:
> "philo" <philo@privacy.net> wrote in message
> news:n9kf9l$fni$1@dont-email.me...
>>
>> The "problem" with Windows is that the 64bit version , though it can run
>> 32 bit apps, cannot run 16 bit apps.
>
> Do the 64-bit processors still boot into 16-bit mode, though?

They still boot in real-mode. Then the OS switches to protected
mode. Then the OS switches on paging. Then the OS switches to
"long mode". Between each step, various initialization functions
take place (GDT/LDT/IDT, enable the A20 gate, flush kbd controller, etc)

# jmp enable_longmode,[SS_CODE32] (Invoke address using GDT entry #2)
.byte 0x66 # code32 override
.byte 0xea # jmpi instruction
.long enable_longmode # Address to invoke
.word SS_CODE32 # GDT[2]

enable_longmode:
movl $SS_DATA, %eax
movl %eax, %ds
movl %eax, %es
movl %eax, %fs
movl %eax, %gs

# Set up the protected mode stack pointer

lss stack_segdesc, %esp # Load SS:ESP
movl cs_realmode, %eax # Get CS address

# Set up cr3 with PML4 base before paging is enabled

leal identitypml4, %eax # Get PML4 base address
subl $identitypdp, %eax
addl $0xa000, %eax # Bump to real base
movl %eax, %cr3

movl %cr4, %eax # Get CR4
orl $PAE_BIT, %eax # Set PAE for long mode
movl %eax, %cr4 # Set CR4

# Enable long mode
movl $0xC0000080, %ecx # EFER address
rdmsr # Read EFER Register into EAX
orl $LME_BIT, %eax # Enable long mode
wrmsr # Set EFER

# Enable paging to activate long mode
movl %cr0, %eax # Get CR0
mov $0x80050033,%eax
movl %eax, %cr0 # Set CR0
jmp 1f # Clear pipeline


1:
movl memsize, %eax # Amount of e820 buf space remaining
movzwl ap_start, %ebx # BSP or AP flag
movl cs_realmode, %esi # Real-mode base address

# Here, we are still in the compatibility
# mode. A far jump is needed to actually activate the 64bit mode.

# jmp 0x10000,[SS_CODE64] (Invoke address using GDT entry #2)

.byte 0xea # jmpi instruction
.long DVMM_START # Address to invoke, dvmmstart is based at DVMM_START
.word SS_CODE64 # GDT[2]


lea bummer, %si
call print
9: hlt
jmp 9b

bummer:
.string "Fell through jump to C++ code - halting\r\n"
Re: Qbasic [message #311724 is a reply to message #311715] Fri, 12 February 2016 09:04 Go to previous messageGo to next message
scott is currently offline  scott
Messages: 4237
Registered: February 2012
Karma: 0
Senior Member
"J. Clarke" <j.clarke.873638@gmail.com> writes:
> In article <cb6cf76e-290e-4b4d-83c9-d9b5d5eed431@googlegroups.com>,
> hancock4@bbs.cpcn.com says...
>>
>> On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:
>>
>>> They also have a version that runs on 32-bit Windows ... but *not* one for 64-bit
>>> Windows!
>>
>> Wasn't there some sort of add-on for modern Windows to allow old DOS
>> applications, such as QBASIC, to run on it?
>
> Windows comes with a virtual machine, however Microsoft in recent
> releases has crippled it in enough ways to make it less useful than it
> once was. It was used to support a "Virtual XP" in some versions of
> Windows 7 that allowed 32-bit-only code to run, but that broke with some
> 16-bit code.

Note that when AMD added 64-bit support to the Intel Architecture (long mode),
the vm86 hardware support (used by 32-bit windows to support real-mode code[*]) was
no longer available in long-mode.

[*] Called Wow (Windows on Windows) in NT4.0 which became Win2k.
Re: Qbasic [message #311729 is a reply to message #311715] Fri, 12 February 2016 12:38 Go to previous messageGo to next message
pechter is currently offline  pechter
Messages: 452
Registered: July 2012
Karma: 0
Senior Member
In article <MPG.312791db39f5852f989f64@news.eternal-september.org>,
J. Clarke <j.clarke.873638@gmail.com> wrote:
> In article <cb6cf76e-290e-4b4d-83c9-d9b5d5eed431@googlegroups.com>,
> hancock4@bbs.cpcn.com says...
>>
>> On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:
>>
>>> They also have a version that runs on 32-bit Windows ... but *not*
> one for 64-bit
>>> Windows!
>>
>> Wasn't there some sort of add-on for modern Windows to allow old DOS
>> applications, such as QBASIC, to run on it?
>
> Windows comes with a virtual machine, however Microsoft in recent
> releases has crippled it in enough ways to make it less useful than it
> once was. It was used to support a "Virtual XP" in some versions of
> Windows 7 that allowed 32-bit-only code to run, but that broke with some
> 16-bit code.

Can't you run WindowsXP, 2000, 98 in hyperv on Windows past version 7.

I know 8.1 had the desktop client hyper-v which seemed equivalent in function
to VMware Workstation built in.
--
--
Digital had it then. Don't you wish you could buy it now!
pechter-at-gmail.com http://xkcd.com/705/
Re: Qbasic [message #311730 is a reply to message #311713] Fri, 12 February 2016 12:50 Go to previous messageGo to next message
Quadibloc is currently offline  Quadibloc
Messages: 4399
Registered: June 2012
Karma: 0
Senior Member
On Friday, February 12, 2016 at 4:25:25 AM UTC-7, philo wrote:

> The "problem" with Windows is that the 64bit version , though it can run
> 32 bit apps, cannot run 16 bit apps.

And that has to do with a limitation of Intel and AMD 64-bit processors, that
they have given up the capability to switch from 64-bit mode to 16-bit mode
without rebooting.

One would have thought Intel would have learned from the debacle with the 80286
not to make that mistake again.

John Savard
Re: Qbasic [message #311731 is a reply to message #311715] Fri, 12 February 2016 12:51 Go to previous messageGo to next message
Quadibloc is currently offline  Quadibloc
Messages: 4399
Registered: June 2012
Karma: 0
Senior Member
On Friday, February 12, 2016 at 4:52:50 AM UTC-7, J. Clarke wrote:
> In article <cb6cf76e-290e-4b4d-83c9-d9b5d5eed431@googlegroups.com>,
> hancock4@bbs.cpcn.com says...
>> On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:

>>> They also have a version that runs on 32-bit Windows ... but *not* one for 64-bit
>>> Windows!

>> Wasn't there some sort of add-on for modern Windows to allow old DOS
>> applications, such as QBASIC, to run on it?

> Windows comes with a virtual machine, however Microsoft in recent
> releases has crippled it in enough ways to make it less useful than it
> once was. It was used to support a "Virtual XP" in some versions of
> Windows 7 that allowed 32-bit-only code to run, but that broke with some
> 16-bit code.

Yes; this is "Windows XP Mode", available with Windows 7 Professional. But it
is not available in Windows 8 or later.

John Savard
Re: Qbasic [message #311732 is a reply to message #311719] Fri, 12 February 2016 12:53 Go to previous messageGo to next message
Quadibloc is currently offline  Quadibloc
Messages: 4399
Registered: June 2012
Karma: 0
Senior Member
On Friday, February 12, 2016 at 6:41:32 AM UTC-7, jmfbahciv wrote:

> Old games are installed in an X86 directory.

Really old games - 16-bit programs - won't work from there either.

The x86 directory is used even for newer programs that run directly on the
processor, instead of being in the newer "managed code" that Microsoft would like
people to switch to - a sort of P-code.

John Savard
Re: Qbasic [message #311733 is a reply to message #311724] Fri, 12 February 2016 12:55 Go to previous messageGo to next message
Quadibloc is currently offline  Quadibloc
Messages: 4399
Registered: June 2012
Karma: 0
Senior Member
On Friday, February 12, 2016 at 7:04:39 AM UTC-7, Scott Lurndal wrote:

> Note that when AMD added 64-bit support to the Intel Architecture (long mode),
> the vm86 hardware support (used by 32-bit windows to support real-mode code[*]) was
> no longer available in long-mode.

And when Intel gave up on Itanium being the wave of the future, and decided to
accept AMD's version, calling it EM64T, despite having the experience of the
80286 debacle, they failed to correct such an obvious mistake.

Total, eternal upwards compatibility. That is what we want, so we don't have to
run out and buy new software unless we _want_ to.

John Savard
Re: Qbasic [message #311740 is a reply to message #311733] Fri, 12 February 2016 15:49 Go to previous messageGo to next message
Charlie Gibbs is currently offline  Charlie Gibbs
Messages: 5313
Registered: January 2012
Karma: 0
Senior Member
On 2016-02-12, Quadibloc <jsavard@ecn.ab.ca> wrote:

> On Friday, February 12, 2016 at 7:04:39 AM UTC-7, Scott Lurndal wrote:
>
>> Note that when AMD added 64-bit support to the Intel Architecture (long
>> mode), the vm86 hardware support (used by 32-bit windows to support
>> real-mode code[*]) was no longer available in long-mode.
>
> And when Intel gave up on Itanium being the wave of the future, and decided
> to accept AMD's version, calling it EM64T, despite having the experience of
> the 80286 debacle, they failed to correct such an obvious mistake.
>
> Total, eternal upwards compatibility. That is what we want, so we don't have
> to run out and buy new software unless we _want_ to.

"Intel put the 'backward' in 'backward compatibility'." -- me

Between VirtualBox and dosemu on my Linux box, I have no complaints.

--
/~\ cgibbs@kltpzyxm.invalid (Charlie Gibbs)
\ / I'm really at ac.dekanfrus if you read it the right way.
X Top-posted messages will probably be ignored. See RFC1855.
/ \ HTML will DEFINITELY be ignored. Join the ASCII ribbon campaign!
Re: Qbasic [message #311741 is a reply to message #311733] Fri, 12 February 2016 16:09 Go to previous messageGo to next message
scott is currently offline  scott
Messages: 4237
Registered: February 2012
Karma: 0
Senior Member
Charlie Gibbs <cgibbs@kltpzyxm.invalid> writes:
> On 2016-02-12, Quadibloc <jsavard@ecn.ab.ca> wrote:
>
>> On Friday, February 12, 2016 at 7:04:39 AM UTC-7, Scott Lurndal wrote:
>>
>>> Note that when AMD added 64-bit support to the Intel Architecture (long
>>> mode), the vm86 hardware support (used by 32-bit windows to support
>>> real-mode code[*]) was no longer available in long-mode.
>>
>> And when Intel gave up on Itanium being the wave of the future, and decided
>> to accept AMD's version, calling it EM64T, despite having the experience of
>> the 80286 debacle, they failed to correct such an obvious mistake.

It wasn't a mistake, it was a smart decision. You want to run 30 year
old software, buy a 30-year old CPU.

The VM86 stuff never quite worked right anyway, and it was very painful
to implement in the processor and operating software. We used it at
SGI in the late 90's in an early hypervisor product called Crucible that
never made it out the door (but you could run linux _and_ windows on a
two-core intel processor at the same time).
Re: Qbasic [message #311743 is a reply to message #311741] Fri, 12 February 2016 18:11 Go to previous messageGo to next message
Stephen Sprunk is currently offline  Stephen Sprunk
Messages: 2166
Registered: March 2013
Karma: 0
Senior Member
On 12-Feb-16 15:09, Scott Lurndal wrote:
>> On 2016-02-12, Quadibloc <jsavard@ecn.ab.ca> wrote:
>>> Scott Lurndal wrote:
>>>> Note that when AMD added 64-bit support to the Intel
>>>> Architecture (long mode), the vm86 hardware support (used by
>>>> 32-bit windows to support real-mode code[*]) was no longer
>>>> available in long-mode.
>>>
>>> And when Intel gave up on Itanium being the wave of the future,
>>> and decided to accept AMD's version, calling it EM64T, despite
>>> having the experience of the 80286 debacle, they failed to
>>> correct such an obvious mistake.
>
> It wasn't a mistake, it was a smart decision. You want to run 30
> year old software, buy a 30-year old CPU.

You don't need a 30-year-old CPU; a modern CPU will run 16-bit code just
fine under a 16-bit or 32-bit OS, just not under a 64-bit OS.

S

--
Stephen Sprunk "God does not play dice." --Albert Einstein
CCIE #3723 "God is an inveterate gambler, and He throws the
K5SSS dice at every possible opportunity." --Stephen Hawking
Re: Qbasic [message #311744 is a reply to message #311740] Fri, 12 February 2016 18:21 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: Bob Eager

On Fri, 12 Feb 2016 20:49:55 +0000, Charlie Gibbs wrote:

> On 2016-02-12, Quadibloc <jsavard@ecn.ab.ca> wrote:
>
>> On Friday, February 12, 2016 at 7:04:39 AM UTC-7, Scott Lurndal wrote:
>>
>>> Note that when AMD added 64-bit support to the Intel Architecture
>>> (long mode), the vm86 hardware support (used by 32-bit windows to
>>> support real-mode code[*]) was no longer available in long-mode.
>>
>> And when Intel gave up on Itanium being the wave of the future, and
>> decided to accept AMD's version, calling it EM64T, despite having the
>> experience of the 80286 debacle, they failed to correct such an obvious
>> mistake.
>>
>> Total, eternal upwards compatibility. That is what we want, so we don't
>> have to run out and buy new software unless we _want_ to.
>
> "Intel put the 'backward' in 'backward compatibility'." -- me

And it still has the half byte carry bit, I believe. For compatibility
with the 4004.




--
Using UNIX since v6 (1975)...

Use the BIG mirror service in the UK:
http://www.mirrorservice.org
Re: Qbasic [message #311746 is a reply to message #311723] Fri, 12 February 2016 18:24 Go to previous messageGo to next message
gareth is currently offline  gareth
Messages: 598
Registered: June 2012
Karma: 0
Senior Member
"Scott Lurndal" <scott@slp53.sl.home> wrote in message
news:7Clvy.35645$J36.29178@fx09.iad...

Thank-you, something to study and think about.



> "gareth" <no.spam@thank.you.invalid> writes:
>> "philo" <philo@privacy.net> wrote in message
>> news:n9kf9l$fni$1@dont-email.me...
>>>
>>> The "problem" with Windows is that the 64bit version , though it can run
>>> 32 bit apps, cannot run 16 bit apps.
>>
>> Do the 64-bit processors still boot into 16-bit mode, though?
>
> They still boot in real-mode. Then the OS switches to protected
> mode. Then the OS switches on paging. Then the OS switches to
> "long mode". Between each step, various initialization functions
> take place (GDT/LDT/IDT, enable the A20 gate, flush kbd controller, etc)
>
> # jmp enable_longmode,[SS_CODE32] (Invoke address using GDT entry
> #2)
> .byte 0x66 # code32 override
> .byte 0xea # jmpi instruction
> .long enable_longmode # Address to invoke
> .word SS_CODE32 # GDT[2]
>
> enable_longmode:
> movl $SS_DATA, %eax
> movl %eax, %ds
> movl %eax, %es
> movl %eax, %fs
> movl %eax, %gs
>
> # Set up the protected mode stack pointer
>
> lss stack_segdesc, %esp # Load SS:ESP
> movl cs_realmode, %eax # Get CS address
>
> # Set up cr3 with PML4 base before paging is enabled
>
> leal identitypml4, %eax # Get PML4 base address
> subl $identitypdp, %eax
> addl $0xa000, %eax # Bump to real base
> movl %eax, %cr3
>
> movl %cr4, %eax # Get CR4
> orl $PAE_BIT, %eax # Set PAE for long mode
> movl %eax, %cr4 # Set CR4
>
> # Enable long mode
> movl $0xC0000080, %ecx # EFER address
> rdmsr # Read EFER Register into EAX
> orl $LME_BIT, %eax # Enable long mode
> wrmsr # Set EFER
>
> # Enable paging to activate long mode
> movl %cr0, %eax # Get CR0
> mov $0x80050033,%eax
> movl %eax, %cr0 # Set CR0
> jmp 1f # Clear pipeline
>
>
> 1:
> movl memsize, %eax # Amount of e820 buf space remaining
> movzwl ap_start, %ebx # BSP or AP flag
> movl cs_realmode, %esi # Real-mode base address
>
> # Here, we are still in the compatibility
> # mode. A far jump is needed to actually activate the 64bit mode.
>
> # jmp 0x10000,[SS_CODE64] (Invoke address using GDT entry #2)
>
> .byte 0xea # jmpi instruction
> .long DVMM_START # Address to invoke, dvmmstart is based at DVMM_START
> .word SS_CODE64 # GDT[2]
>
>
> lea bummer, %si
> call print
> 9: hlt
> jmp 9b
>
> bummer:
> .string "Fell through jump to C++ code - halting\r\n"
Re: Qbasic [message #311747 is a reply to message #311744] Fri, 12 February 2016 18:55 Go to previous messageGo to next message
Quadibloc is currently offline  Quadibloc
Messages: 4399
Registered: June 2012
Karma: 0
Senior Member
On Friday, February 12, 2016 at 4:21:55 PM UTC-7, Bob Eager wrote:

> And it still has the half byte carry bit, I believe. For compatibility
> with the 4004.

No, that would be for the Decimal Adjust Accumulator instruction.

Which couldn't go back further than the 8008.

John Savard
Re: Qbasic [message #311748 is a reply to message #311731] Fri, 12 February 2016 19:24 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: J. Clarke

In article <ec05aacf-2520-4938-b611-0a079c2f8605@googlegroups.com>,
jsavard@ecn.ab.ca says...
>
> On Friday, February 12, 2016 at 4:52:50 AM UTC-7, J. Clarke wrote:
>> In article <cb6cf76e-290e-4b4d-83c9-d9b5d5eed431@googlegroups.com>,
>> hancock4@bbs.cpcn.com says...
>>> On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:
>
>>>> They also have a version that runs on 32-bit Windows ... but *not* one for 64-bit
>>>> Windows!
>
>>> Wasn't there some sort of add-on for modern Windows to allow old DOS
>>> applications, such as QBASIC, to run on it?
>
>> Windows comes with a virtual machine, however Microsoft in recent
>> releases has crippled it in enough ways to make it less useful than it
>> once was. It was used to support a "Virtual XP" in some versions of
>> Windows 7 that allowed 32-bit-only code to run, but that broke with some
>> 16-bit code.
>
> Yes; this is "Windows XP Mode", available with Windows 7 Professional. But it
> is not available in Windows 8 or later.
>
> John Savard

The virtual machine is there, assuming you have a CPU with the right
features to support it. What's not there is the XP license.
Re: Qbasic [message #311749 is a reply to message #311747] Fri, 12 February 2016 19:26 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: Bob Eager

On Fri, 12 Feb 2016 15:55:27 -0800, Quadibloc wrote:

> On Friday, February 12, 2016 at 4:21:55 PM UTC-7, Bob Eager wrote:
>
>> And it still has the half byte carry bit, I believe. For compatibility
>> with the 4004.
>
> No, that would be for the Decimal Adjust Accumulator instruction.
>
> Which couldn't go back further than the 8008.

Oh well, nearly as far!

--
Using UNIX since v6 (1975)...

Use the BIG mirror service in the UK:
http://www.mirrorservice.org
Re: Qbasic [message #311750 is a reply to message #311729] Fri, 12 February 2016 19:33 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: J. Clarke

In article <n9l5ak$2ud$1@pechter.eternal-september.org>,
pechter@pechter.dyndns.org says...
>
> In article <MPG.312791db39f5852f989f64@news.eternal-september.org>,
> J. Clarke <j.clarke.873638@gmail.com> wrote:
>> In article <cb6cf76e-290e-4b4d-83c9-d9b5d5eed431@googlegroups.com>,
>> hancock4@bbs.cpcn.com says...
>>>
>>> On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:
>>>
>>>> They also have a version that runs on 32-bit Windows ... but *not*
>> one for 64-bit
>>>> Windows!
>>>
>>> Wasn't there some sort of add-on for modern Windows to allow old DOS
>>> applications, such as QBASIC, to run on it?
>>
>> Windows comes with a virtual machine, however Microsoft in recent
>> releases has crippled it in enough ways to make it less useful than it
>> once was. It was used to support a "Virtual XP" in some versions of
>> Windows 7 that allowed 32-bit-only code to run, but that broke with some
>> 16-bit code.
>
> Can't you run WindowsXP, 2000, 98 in hyperv on Windows past version 7.

One problem is that Microsoft has limited emulation of legacy I/O
devices and you may not be able to find drivers for older operating
systems that support the I/O devices that Microsoft emulates. This
means that you may find yourself lacking a keyboard, or a mouse, or
video, or something else important, depending on what you're trying to
run.
>
> I know 8.1 had the desktop client hyper-v which seemed equivalent in function
> to VMware Workstation built in.

It's the same VM technology that goes into the server products--
Microsoft's aiming that at running multiple Windows 7+ or Linux sessions
on a single server, not at supporting legacy systems, which limits its
utility on the desktop.
Re: Qbasic [message #311757 is a reply to message #311731] Sat, 13 February 2016 02:20 Go to previous messageGo to next message
hancock4 is currently offline  hancock4
Messages: 6746
Registered: December 2011
Karma: 0
Senior Member
On Friday, February 12, 2016 at 12:51:47 PM UTC-5, Quadibloc wrote:

> Yes; this is "Windows XP Mode", available with Windows 7 Professional. But it
> is not available in Windows 8 or later.

Thanks for the various explanations.

Now: can a lay user, who buys a new PC with whatever Windows is
supplied now, do something to allow him to run old DOS applications
(not games, but applications, like old versions of Lotus, or compiled
QuickBASIC programs, or QBASIC?)

If so, what has to be done?

Thanks.
Re: Qbasic [message #311758 is a reply to message #311741] Sat, 13 February 2016 02:26 Go to previous messageGo to next message
hancock4 is currently offline  hancock4
Messages: 6746
Registered: December 2011
Karma: 0
Senior Member
On Friday, February 12, 2016 at 4:09:48 PM UTC-5, Scott Lurndal wrote:


> It wasn't a mistake, it was a smart decision. You want to run 30 year
> old software, buy a 30-year old CPU.

Just as an aside, in the mainframe world, we routinely ran 30 or even
40 year old software. The 30 y/o stuff runs native mode. If the 40 y/o
stuff was written for S/360, it will run native mode. If it was written
for a prior generation of hardware, it would run under emulation.
Re: Qbasic [message #311759 is a reply to message #311743] Sat, 13 February 2016 02:27 Go to previous messageGo to next message
hancock4 is currently offline  hancock4
Messages: 6746
Registered: December 2011
Karma: 0
Senior Member
On Friday, February 12, 2016 at 6:11:08 PM UTC-5, Stephen Sprunk wrote:

> You don't need a 30-year-old CPU; a modern CPU will run 16-bit code just
> fine under a 16-bit or 32-bit OS, just not under a 64-bit OS.

Can the 64 bit OS be 'adjusted' somehow to accept 16 bit code?
Re: Qbasic [message #311774 is a reply to message #311757] Sat, 13 February 2016 06:09 Go to previous messageGo to next message
gareth is currently offline  gareth
Messages: 598
Registered: June 2012
Karma: 0
Senior Member
<hancock4@bbs.cpcn.com> wrote in message
news:de9ea91b-7001-477b-ae36-8d46ef1f820b@googlegroups.com...
> On Friday, February 12, 2016 at 12:51:47 PM UTC-5, Quadibloc wrote:
>> Yes; this is "Windows XP Mode", available with Windows 7 Professional.
>> But it
>> is not available in Windows 8 or later.
> Thanks for the various explanations.
> Now: can a lay user, who buys a new PC with whatever Windows is
> supplied now, do something to allow him to run old DOS applications
> (not games, but applications, like old versions of Lotus, or compiled
> QuickBASIC programs, or QBASIC?)

Those of us with the right background knowledge and experience to
write an 8086 machine code emulator?
Re: Qbasic [message #311775 is a reply to message #311759] Sat, 13 February 2016 06:26 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: J. Clarke

In article <4cf3e356-3dbf-45a8-a430-d4673b75dca6@googlegroups.com>,
hancock4@bbs.cpcn.com says...
>
> On Friday, February 12, 2016 at 6:11:08 PM UTC-5, Stephen Sprunk wrote:
>
>> You don't need a 30-year-old CPU; a modern CPU will run 16-bit code just
>> fine under a 16-bit or 32-bit OS, just not under a 64-bit OS.
>
> Can the 64 bit OS be 'adjusted' somehow to accept 16 bit code?

The limitation there is a choice that Intel made in the hardware
design--if enough cards and letters arrive at Intel headquarters maybe
they'll revise that decision. The OS can't fix it except by providing
emulation, and Microsoft seems to have decided that there isn't enough
demand to justify it. DOSBOX, which is freeware, will run quite a lot
of 16 bit code on 64 bit Windows. It's not a PC emulator, it's a DOS-
on-a-PC emulator which means that the DOS prompt is rather limited.
Re: Qbasic [message #311776 is a reply to message #311757] Sat, 13 February 2016 06:33 Go to previous messageGo to next message
Ahem A Rivet's Shot is currently offline  Ahem A Rivet's Shot
Messages: 4843
Registered: January 2012
Karma: 0
Senior Member
On Fri, 12 Feb 2016 23:20:14 -0800 (PST)
hancock4@bbs.cpcn.com wrote:

> On Friday, February 12, 2016 at 12:51:47 PM UTC-5, Quadibloc wrote:
>
>> Yes; this is "Windows XP Mode", available with Windows 7 Professional.
>> But it is not available in Windows 8 or later.
>
> Thanks for the various explanations.
>
> Now: can a lay user, who buys a new PC with whatever Windows is
> supplied now, do something to allow him to run old DOS applications
> (not games, but applications, like old versions of Lotus, or compiled
> QuickBASIC programs, or QBASIC?)
>
> If so, what has to be done?

Install MSDOS (or FreeDOS) and away you go.

--
Steve O'Hara-Smith | Directable Mirror Arrays
C:>WIN | A better way to focus the sun
The computer obeys and wins. | licences available see
You lose and Bill collects. | http://www.sohara.org/
Re: Qbasic [message #311780 is a reply to message #311748] Sat, 13 February 2016 09:37 Go to previous messageGo to next message
jmfbahciv is currently offline  jmfbahciv
Messages: 6173
Registered: March 2012
Karma: 0
Senior Member
J. Clarke wrote:
> In article <ec05aacf-2520-4938-b611-0a079c2f8605@googlegroups.com>,
> jsavard@ecn.ab.ca says...
>>
>> On Friday, February 12, 2016 at 4:52:50 AM UTC-7, J. Clarke wrote:
>>> In article <cb6cf76e-290e-4b4d-83c9-d9b5d5eed431@googlegroups.com>,
>>> hancock4@bbs.cpcn.com says...
>>>> On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:
>>
>>>> > They also have a version that runs on 32-bit Windows ... but *not*
one for 64-bit
>>>> > Windows!
>>
>>>> Wasn't there some sort of add-on for modern Windows to allow old DOS
>>>> applications, such as QBASIC, to run on it?
>>
>>> Windows comes with a virtual machine, however Microsoft in recent
>>> releases has crippled it in enough ways to make it less useful than it
>>> once was. It was used to support a "Virtual XP" in some versions of
>>> Windows 7 that allowed 32-bit-only code to run, but that broke with some
>>> 16-bit code.
>>
>> Yes; this is "Windows XP Mode", available with Windows 7 Professional. But
it
>> is not available in Windows 8 or later.
>>
>> John Savard
>
> The virtual machine is there, assuming you have a CPU with the right
> features to support it. What's not there is the XP license.

Why should you have to run XP when you want to use XP, or earlier apps
if there is an emulator? You don't need the old hardware support
unless the app was writting specifically for a piece of hardware which
isn't on the system.

/BAH
Re: Qbasic [message #311781 is a reply to message #311732] Sat, 13 February 2016 09:37 Go to previous messageGo to next message
jmfbahciv is currently offline  jmfbahciv
Messages: 6173
Registered: March 2012
Karma: 0
Senior Member
Quadibloc wrote:
> On Friday, February 12, 2016 at 6:41:32 AM UTC-7, jmfbahciv wrote:
>
>> Old games are installed in an X86 directory.
>
> Really old games - 16-bit programs - won't work from there either.

I'll have to look at the hard/software requirements of the games I have.
I've run games on Win7 system which has XP requirements spec'ed on the
game box.
>
> The x86 directory is used even for newer programs that run directly on the
> processor, instead of being in the newer "managed code" that Microsoft would
like
> people to switch to - a sort of P-code.

I wonder why unless their libraries lagged behind the newer hardware.

/BAH
Re: Qbasic [message #311783 is a reply to message #311758] Sat, 13 February 2016 09:43 Go to previous messageGo to next message
Peter Flass is currently offline  Peter Flass
Messages: 8375
Registered: December 2011
Karma: 0
Senior Member
<hancock4@bbs.cpcn.com> wrote:
> On Friday, February 12, 2016 at 4:09:48 PM UTC-5, Scott Lurndal wrote:
>
>
>> It wasn't a mistake, it was a smart decision. You want to run 30 year
>> old software, buy a 30-year old CPU.
>
> Just as an aside, in the mainframe world, we routinely ran 30 or even
> 40 year old software. The 30 y/o stuff runs native mode. If the 40 y/o
> stuff was written for S/360, it will run native mode. If it was written
> for a prior generation of hardware, it would run under emulation.
>
>

Most companies try to develop products that give the customer what he
wants. Microsoft develops products that give the customer what microsoft
wants.

--
Pete
Re: Qbasic [message #311785 is a reply to message #311780] Sat, 13 February 2016 10:24 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: J. Clarke

In article <PM00052BA7B4561A3C@aca41062.ipt.aol.com>, See.above@aol.com
says...
>
> J. Clarke wrote:
>> In article <ec05aacf-2520-4938-b611-0a079c2f8605@googlegroups.com>,
>> jsavard@ecn.ab.ca says...
>>>
>>> On Friday, February 12, 2016 at 4:52:50 AM UTC-7, J. Clarke wrote:
>>>> In article <cb6cf76e-290e-4b4d-83c9-d9b5d5eed431@googlegroups.com>,
>>>> hancock4@bbs.cpcn.com says...
>>>> > On Thursday, February 11, 2016 at 8:16:05 PM UTC-5, Quadibloc wrote:
>>>
>>>> > > They also have a version that runs on 32-bit Windows ... but *not*
> one for 64-bit
>>>> > > Windows!
>>>
>>>> > Wasn't there some sort of add-on for modern Windows to allow old DOS
>>>> > applications, such as QBASIC, to run on it?
>>>
>>>> Windows comes with a virtual machine, however Microsoft in recent
>>>> releases has crippled it in enough ways to make it less useful than it
>>>> once was. It was used to support a "Virtual XP" in some versions of
>>>> Windows 7 that allowed 32-bit-only code to run, but that broke with some
>>>> 16-bit code.
>>>
>>> Yes; this is "Windows XP Mode", available with Windows 7 Professional. But
> it
>>> is not available in Windows 8 or later.
>>>
>>> John Savard
>>
>> The virtual machine is there, assuming you have a CPU with the right
>> features to support it. What's not there is the XP license.
>
> Why should you have to run XP when you want to use XP, or earlier apps
> if there is an emulator? You don't need the old hardware support
> unless the app was writting specifically for a piece of hardware which
> isn't on the system.

The virtual machine is not an emulator, it's a virtualization of the
CPU, with the peripherals emulated. You have to install an OS on it to
be able to do anything with it.
Re: Qbasic [message #311786 is a reply to message #311783] Sat, 13 February 2016 10:29 Go to previous messageGo to next message
Anonymous
Karma:
Originally posted by: J. Clarke

In article <630582847.477066945.696306.peter_flass-
yahoo.com@news.eternal-september.org>, peter_flass@yahoo.com says...
>
> <hancock4@bbs.cpcn.com> wrote:
>> On Friday, February 12, 2016 at 4:09:48 PM UTC-5, Scott Lurndal wrote:
>>
>>
>>> It wasn't a mistake, it was a smart decision. You want to run 30 year
>>> old software, buy a 30-year old CPU.
>>
>> Just as an aside, in the mainframe world, we routinely ran 30 or even
>> 40 year old software. The 30 y/o stuff runs native mode. If the 40 y/o
>> stuff was written for S/360, it will run native mode. If it was written
>> for a prior generation of hardware, it would run under emulation.
>>
>>
>
> Most companies try to develop products that give the customer what he
> wants. Microsoft develops products that give the customer what microsoft
> wants.

We're currently porting some code written in Fortran in the early '70s
to C, mostly because IBM hasn't issued a version upgrade of Fortran on
the mainframe since some time in the '80s. It's not EOL--they'll fix
bugs if they find them and when they add new features to the hardware
they _may_ update the compiler to provide support for them.
Re: Qbasic [message #311788 is a reply to message #311783] Sat, 13 February 2016 10:13 Go to previous messageGo to next message
Morten Reistad is currently offline  Morten Reistad
Messages: 2108
Registered: December 2011
Karma: 0
Senior Member
In article <630582847.477066945.696306.peter_flass-yahoo.com@news.eternal-september.org>,
Peter Flass <peter_flass@yahoo.com> wrote:
> <hancock4@bbs.cpcn.com> wrote:
>> On Friday, February 12, 2016 at 4:09:48 PM UTC-5, Scott Lurndal wrote:
>>
>>
>>> It wasn't a mistake, it was a smart decision. You want to run 30 year
>>> old software, buy a 30-year old CPU.
>>
>> Just as an aside, in the mainframe world, we routinely ran 30 or even
>> 40 year old software. The 30 y/o stuff runs native mode. If the 40 y/o
>> stuff was written for S/360, it will run native mode. If it was written
>> for a prior generation of hardware, it would run under emulation.
>>
>>
>
> Most companies try to develop products that give the customer what he
> wants. Microsoft develops products that give the customer what microsoft
> wants.

Microsoft is now another Nokia or Ericsson. Fitting with the merger.

Nokia and Ericsson were depending heavier and heavier on their reseller
networks, and when these turned into large mobile operators and became
rather few in number the power game turned. Nokia discovered that they
couldn't do a thing with their mainstream products that weren't firmly
anchored with the operators. Never mind the end users.

Their customers were around 30 in number for a 95% percentile and
made increasing demands back to fit a revenue model that fitted the operators,
not the end users.

Enter the smartphones, to challenge the operators. The operators demanded
the same from Apple and Google, only to be laughed out the door. It took
Apple and Google a few months to set up an alternate sales network. This
isn't hard when you have the hottest products.

Microsoft is getting a doze of this now. Their customers are the large
hardware vendors. They make huge demands back. The driver division in
Microsoft is a political hellhole that burns through people, but they
are rewarded with other positions after 18 months tenure there. This is
because they simply have to accommodate all the vendors weird quirks
in their hardware and keep windows stable. It is a tall order, and they
are doing a remarkable job, all considering,

But this has wider implications. Windows cannot be too big a success
on xpods or xphones without alienating this channel, which is the lifeblood
of the Microsoft revenue stream. Just as Nokia couldn't make a phone
that was smart independently of the operator networks.

So both Microsoft, Nokia and Ericsson listened to their customers, and
ignored their customers customer. Like IBM said; if you own your customers
customers you can ignore your customers.

-- mrr
Re: Qbasic [message #311789 is a reply to message #311786] Sat, 13 February 2016 11:20 Go to previous messageGo to previous message
Quadibloc is currently offline  Quadibloc
Messages: 4399
Registered: June 2012
Karma: 0
Senior Member
On Saturday, February 13, 2016 at 8:28:11 AM UTC-7, J. Clarke wrote:
> In article <630582847.477066945.696306.peter_flass-
> yahoo.com@news.eternal-september.org>, peter_flass@yahoo.com says...

>> Most companies try to develop products that give the customer what he
>> wants. Microsoft develops products that give the customer what microsoft
>> wants.

> We're currently porting some code written in Fortran in the early '70s
> to C, mostly because IBM hasn't issued a version upgrade of Fortran on
> the mainframe since some time in the '80s. It's not EOL--they'll fix
> bugs if they find them and when they add new features to the hardware
> they _may_ update the compiler to provide support for them.

Well, that's IBM trying to serve the customers it has.

It sells System z architecture at premium prices, mainly to people who want to
use its premium database products that run the most robustly on its legacy
hardware. Its main competition is Oracle.

People wanting to do scientific computation on IBM hardware are expected to use
PowerPC hardware, which offers better price-performance. Fortran for that
hardware, I presume, is kept more up-to-date.

John Savard
Pages (50): [1  2  3  4  5  6  7  8  9  10  11  12  13  14  15    »]  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic: Thank You Helpful Software!
Next Topic: alt.fool's-paradise.computers
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Thu Mar 28 21:48:25 EDT 2024

Total time taken to generate the page: 0.04544 seconds