English Amiga Board


Go Back   English Amiga Board > Coders > Coders. General

 
 
Thread Tools
Old 01 February 2016, 06:29   #81
ReadOnlyCat
Code Kitten
 
Join Date: Aug 2015
Location: Montreal/Canadia
Age: 52
Posts: 1,178
Quote:
Originally Posted by idrougge View Post
That's if you read the manual. Both the AMOS and Blitz manuals show you how to scroll the screen smoothly.
Well, one has to read the manual if they want to make graphical games in C/ASM for the Amiga don't they?

Quote:
Originally Posted by idrougge View Post
I'd say the most evil thing in Blitz and AMOS is that they both have commands named "Scroll" that copy the screen. That's quite evil.
AMOS I can understand given its STOS background but for Blitz this is indeed quite damning.

Quote:
Originally Posted by idrougge View Post
It's equally tempting if you're a half-competent C or Java programmer coming from a PC background to do that, mind you. It's a matter of doing your homework, regardless of the API.
Choices aren't made in a vacuum. If an API is worse than another then the cost of homework is higher. Many situations can lead to failure but the average case is what is relevant.

Quote:
Originally Posted by idrougge View Post
Why don't you just increase the Y offset for blits each #SCREENWIDTH?
Because that is irrelevant to game logic and I want to concentrate on it and not on blit or scrolling logic. The point of the API is to abstract away this kind of thing so one can concentrate on higher level aspects such as gameplay.

Quote:
Originally Posted by idrougge View Post
Corkscrew scrolling is AFAIK already the default since that's what the Amiga hardware does.
One might want to go with a large bitmap approach to decrease DMA usage, so using flags to specify which wrapping method to use allows to specify it once and then abstract it away from sight. In the case of a large bitmap I would want the API to signal an error if I scroll past the boundaries I have set initially so the flags make this intention explicit.

Quote:
Originally Posted by idrougge View Post
VWaitPos in the Elmore libraries seems to do what you intend with SetWaitMarker, unless you expect it to be interrupt driven. In that case, you have to do a SetInt after having added a custom copper line.
Ok, that proves my ignorance of Blitz.
In my view, waiting for marker would be a non polling process which would essentially switch cooperatively to a background thread with an interrupt setup to return to the main loop. But for this example, a simple polling loop would just be fine.
ReadOnlyCat is offline  
Old 02 February 2016, 15:58   #82
idrougge
Registered User
 
Join Date: Sep 2007
Location: Stockholm
Posts: 4,338
Quote:
Originally Posted by ReadOnlyCat View Post
Well, one has to read the manual if they want to make graphical games in C/ASM for the Amiga don't they?
So does one if the tool of choice is AMOS or Blitz. It's a matter of how much you read.

Quote:
Originally Posted by ReadOnlyCat
AMOS I can understand given its STOS background but for Blitz this is indeed quite damning.
Yes, I think "ScreenBlockCopy" or something like that would have been more sensible. I even skimmed over the BlockScroll command in the Blitz manual since it didn't sound like what I was looking for at all.

Quote:
Originally Posted by ReadOnlyCat
Choices aren't made in a vacuum. If an API is worse than another then the cost of homework is higher. Many situations can lead to failure but the average case is what is relevant.
I think the average case is that beginner languages attract many people who don't have what's required of a programmer. Those who have the right stuff may later progress to C or asm. The lower-level languages never have to handle that kind of users.
If there was an influx of Java programmers in the Amiga world, things might have looked different in that aspect.

Quote:
Originally Posted by ReadOnlyCat
Because that is irrelevant to game logic and I want to concentrate on it and not on blit or scrolling logic. The point of the API is to abstract away this kind of thing so one can concentrate on higher level aspects such as gameplay.

One might want to go with a large bitmap approach to decrease DMA usage, so using flags to specify which wrapping method to use allows to specify it once and then abstract it away from sight. In the case of a large bitmap I would want the API to signal an error if I scroll past the boundaries I have set initially so the flags make this intention explicit.
I think you are too quick to judge AMOS and Blitz as abstract high-level languages. AMOS offers an abstract model of the Amiga hardware, but it's still modeled on the Amiga hardware and not some plain abstraction. Blitz is even more low-level.
That means that it's up to you how you implement your scroll routine. There is no catch-all scroll command, which in hindsight is a good thing since it means you can make a corkscrew scroll without the authors foreseeing that.

Quote:
Originally Posted by ReadOnlyCat
Ok, that proves my ignorance of Blitz.
In my view, waiting for marker would be a non polling process which would essentially switch cooperatively to a background thread with an interrupt setup to return to the main loop. But for this example, a simple polling loop would just be fine.
You have the SetInt command, it's part of the basic Blitz libraries.
idrougge is offline  
Old 03 February 2016, 08:18   #83
LieutLaww
Registered User
 
LieutLaww's Avatar
 
Join Date: Jun 2014
Location: Uckfield, UK
Age: 53
Posts: 195
Shatterhand, I noticed you made mention of the MSX, how about using your first demo of the cars and try a version of Road Fighter, just a thought
LieutLaww is offline  
Old 04 February 2016, 05:30   #84
ReadOnlyCat
Code Kitten
 
Join Date: Aug 2015
Location: Montreal/Canadia
Age: 52
Posts: 1,178
Quote:
Originally Posted by idrougge View Post
I think the average case is that beginner languages attract many people who don't have what's required of a programmer. Those who have the right stuff may later progress to C or asm. The lower-level languages never have to handle that kind of users.
If there was an influx of Java programmers in the Amiga world, things might have looked different in that aspect.
Interesting point to which I can agree to an extent. However I would not say that beginners "don't have what's required of a programmer", they will eventually acquire it if they keep trying hard enough, they just do not realize yet what it requires.

Quote:
Originally Posted by idrougge View Post
I think you are too quick to judge AMOS and Blitz as abstract high-level languages. AMOS offers an abstract model of the Amiga hardware, but it's still modeled on the Amiga hardware and not some plain abstraction. Blitz is even more low-level.
That means that it's up to you how you implement your scroll routine. There is no catch-all scroll command, which in hindsight is a good thing since it means you can make a corkscrew scroll without the authors foreseeing that.
Maybe I misrepresented the purpose of my example. The API I used was the one I would have designed if I had been in charge of Blitz but I only have a vague idea of its actual API.
ReadOnlyCat is offline  
Old 04 February 2016, 05:54   #85
Shatterhand
Warhasneverbeensomuchfun
 
Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 41
Posts: 3,450
Quote:
I think the average case is that beginner languages attract many people who don't have what's required of a programmer. Those who have the right stuff may later progress to C or asm. The lower-level languages never have to handle that kind of users.
If there was an influx of Java programmers in the Amiga world, things might have looked different in that aspect.
Honestly, I am doing this on my free-time, something I've done for money at some point of my life.

For me, it has nothing to do with having "what's required of a programmer". I just want to use a tool that will make the job fast, easy and fun to me.

I've made money in my life coding using Visual Basic, Delphi, Powerbuilder, C#/Visual Studio, Python, PHP and Java. And I also made money making games with GameMaker. I can code on all those languages, and I still go for GameMaker when making a 2d game, because it does the job quickly and properly.

I wanted to learn Blitz Basic, and I just don't want to deal with C or ASM for something I am doing for fun, since I don't like working with C and I indeed have zero knowledge of 68k asm. If someone was paying me to code an Amiga game in C, I'd do it. For now, I am really, *really* happy learning Blitz Basic.

Honestly, I believe anyone can learn how to code, and people will just get better if they keep doing it, studying it and having interest on it. It's not like people are born with what "is required to be a programmer", anyone can program.

I understand why people will try to learn an easier language when being introduced to coding. We are just on another age now, for most, it's more important to have an easy enviroment to work, that makes work easier, than have ultra-optimized code running really fast.

I wanted to code for Amiga because I wanted the challenge to make something in a more limited hardware, and the Amiga seemed to be the most fun to work.

But that's it. If it's not fun, I won't do it on my free time

Last edited by Shatterhand; 04 February 2016 at 06:39.
Shatterhand is offline  
Old 04 February 2016, 16:15   #86
idrougge
Registered User
 
Join Date: Sep 2007
Location: Stockholm
Posts: 4,338
Quote:
Originally Posted by ReadOnlyCat View Post
Interesting point to which I can agree to an extent. However I would not say that beginners "don't have what's required of a programmer", they will eventually acquire it if they keep trying hard enough, they just do not realize yet what it requires.
I didn't say that. I wrote that they attract many who aren't made up to be programmers. There have been excellent programmers working in Blitz and AMOS, but they were also surrounded by people who came to realise that even programming in AMOS requires that you actually learn to program.

Quote:
Originally Posted by Shatterhand View Post
I wanted to learn Blitz Basic, and I just don't want to deal with C or ASM for something I am doing for fun, since I don't like working with C and I indeed have zero knowledge of 68k asm. If someone was paying me to code an Amiga game in C, I'd do it. For now, I am really, *really* happy learning Blitz Basic.
I use Blitz for the same reasons.

Quote:
Originally Posted by Shatterhand
Honestly, I believe anyone can learn how to code, and people will just get better if they keep doing it, studying it and having interest on it. It's not like people are born with what "is required to be a programmer", anyone can program.
Here I must disagree. I'm a quite bad programmer myself, but I've also talked to people much smarter than I (engineers) who hated programming, even though they were mathematically inclined. They could probably become good if they liked it. But I've also studied programming at a vocational school, and there was some ten or twenty percent who just couldn't understand the difference between a variable's name and content, and probably fifty percent whose programs mainly consisted of hard-coded if-then-else constructs. If that's programming, then they are programmers now, but to me, that's more like filling out a form than making a program.

There's only so much that the environment can do for you; the real programming stuff must still be done by you.
idrougge is offline  
Old 04 February 2016, 17:15   #87
Shatterhand
Warhasneverbeensomuchfun
 
Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 41
Posts: 3,450
Quote:
They could probably become good if they liked it. But I've also studied programming at a vocational school, and there was some ten or twenty percent who just couldn't understand the difference between a variable's name and content, and probably fifty percent whose programs mainly consisted of hard-coded if-then-else constructs.
I worked as a programming teacher for 6 years at a high-school. I also worked as a professional programmer for quite a while, and still do some freelance stuff from time to time.

First, we have to understand what is a "good" programmer. Someone who can make complex algorithms? Someone who can make readable code? Someone who can make working programs always on the deadline? Someone who can create optimized code? Someone very skillful at finding out bugs? All of this at once?

I've worked with people I consider a lot better than me, and also people who I think wasn't as good. I've been praised, more than once, for my skill to deliver working code at a very fast rate (Couple of years ago I was hired to code an engine and map editor for a cellphone game, because the previous programmer of the team wasn't up to the task, and the guys were *really* happy with how fast I managed to deliver to them the final product). I had a coworker who wasn't as fast as me, but I was always amazed of how well he could optimize his code, for example , when fetching data from a database, or how fast he could spot errors in someone else's code.

As a teacher, I honestly feel anyone can learn how to code, just some people will learn faster than other, but I believe this is true for any human activity (after years, my soldering skills are still awful, for example ) Some people will be more interested at it, some won't. Some need some previous math knowledge that the school didn't gave them properly (That's a pet peeve of mine, but then we will be going way off-topic ) . But I really don't think its something "Natural", that just some people will be able to learn and other won't. Some people will need help, some people will need better teachers, others have it easier by learning by themselves... but anyone can learn at a basic level, and this can be an useful skill for their lives.


Alas, I had a student, one of the best I had, I really thought he would choose a career on IT, but he went to a completely different way. He noticed I was kinda surprised when he told me about it, and he was like "But hey, I don't think this was a waste of time. I don't think none of this was any kind of waste of time, I really loved learning what I learned here, even if I don't use it on my career, it was something lovely to learn".
Shatterhand is offline  
Old 04 February 2016, 17:18   #88
Amiga1992
Registered User
 
Join Date: May 2001
Location: ?
Posts: 19,646
Yeah I think coding teaches a lot of really valuable skills, in language, structure and logic!
I also agree with the view that anyone can code. That doesn't mean anyone can go out and make an AAA game after learning how to code.
If you're serious about it you can practice and get better at it. If you rarely use it, like a language you learned at high school but never used, it will fade away.
Amiga1992 is offline  
Old 04 February 2016, 17:26   #89
Shatterhand
Warhasneverbeensomuchfun
 
Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 41
Posts: 3,450
Sure thing.

I had one student, he had a *lot* of difficulties, he didn't know basic math, he had trouble understading simple concepts about a lot of stuff.

Yet he managed to develop a simple "rent-a-video" system. That's something he really wanted to do. It was incredibly simple, yet I'll never forget how happy he was when everything was working. That was a really important victory for him.

So, could he code an AAA game? Of course no. But he managed to learn a lot of stuff that, frankly, when he begun at our school, I thought he could not do it.
Shatterhand is offline  
Old 04 February 2016, 17:41   #90
Amiga1992
Registered User
 
Join Date: May 2001
Location: ?
Posts: 19,646
I also think that the fact that by learning to code you manage to make a product you can use somehow, adds a lot to the experience. It's very gratifying to make a program that runs.
Amiga1992 is offline  
Old 18 December 2016, 05:15   #91
Shatterhand
Warhasneverbeensomuchfun
 
Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 41
Posts: 3,450
Amiblitz doesn't run or install with low memory. I was trying it now with a 2mb Chip + 1mb Fast ram setup with Winuae and installing would crash, running it without installing would also crash.

with 2mb chip + 8mb Fast, it worked.

Anyway, does anyone knows where you can get old Blitz 2 for Amiga? I can easily find Amiblitz, but not Blitz 2.

I used to have Blitz 2 on my older computer, so I got it somewhere, but I can't remember where. I want Blitz 2 because I want to code for classic Amigas, not modern ones... so no FPU for me

edit: Never mind, I found a Blitz2.adf on the EAB Server

Last edited by Shatterhand; 18 December 2016 at 05:35.
Shatterhand is offline  
Old 18 December 2016, 05:37   #92
Anakirob
Unregistered User
 
Anakirob's Avatar
 
Join Date: Nov 2005
Location: Tasmania
Age: 42
Posts: 893
Go for the Ultimate Blitz Basic CD ISO instead. It's on the server too.
Anakirob is offline  
Old 18 December 2016, 09:40   #93
tolkien
AmigaMan
 
tolkien's Avatar
 
Join Date: Oct 2012
Location: Castro Urdiales/Spain
Posts: 761
I'm toying with blitz basic and think It's great.
But recently I tried AmiBlitz 2.44 because of the editor and some bugs fixed but there are a bug that can't trace variables.
It can't find none of them, nor objetcs.
I can do it with BlitzBasic but would like to know if it's a known bug or what.
tolkien is offline  
Old 19 December 2016, 03:59   #94
Shatterhand
Warhasneverbeensomuchfun
 
Shatterhand's Avatar
 
Join Date: Jun 2001
Location: Rio de Janeiro / Brazil
Age: 41
Posts: 3,450
My last reply on this thread.... I was so sleepy yesterday, I shouldn't be posting anything... I was replyinh something that was posted 2 pages ago... heh

I don't want to use AmiBlitz because the executables it generates aren't compatible with oldschool amigas... they need an FPU to run.

But you can use the Amiblitz editor to code and then run the same code on Blitz Basic if you want to. But now I begun trying to use notepad++ to code in Blitz Basic
Shatterhand is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Did anyone here code Amiga games professionally? tm2383 Nostalgia & memories 8 07 January 2015 17:23
games with source code available which could be release on amiga ? turrican3 support.Games 12 20 December 2013 15:44
Petition Team17 to release old Amiga games source code Conundrum Retrogaming General Discussion 8 11 October 2012 02:28
Wish to hack out code protection in a few PC games. Anyone wanna help? MethodGit Retrogaming General Discussion 27 18 January 2010 20:18
A question for those of you who can look into a games code. Ironclaw Retrogaming General Discussion 22 28 January 2005 22:00

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 07:04.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.09009 seconds with 15 queries